Giter VIP home page Giter VIP logo

gnss_share's Introduction

An app for sharing GNSS location data, with support multiple clients and loading/saving AGPS data.

This is meant to replace things like gpsd, and gps-share, and work together with geoclue* or other clients that support fetching NMEA location data over sockets.

*To work with geoclue, these patches are required. A future version of geoclue should work out of the box after pointing it to the socket created by this app.

Configuration

gnss-share.conf can be used to change the listening socket, group owner for socket, and other options. The application looks for this file in either the current working directory, or in /etc/gnss-share.conf.

See this file for descriptions of supported options.

Usage

usage: gnss-share COMMAND [OPTION...]
Commands:
  [none]        The default behavior if no command is specified is to run in server mode.
  store         Store almanac and ephemerides data and quit.
  load          Load almanac and ephemerides data and quit.
Options:
  -c string
        Configuration file to use. (default "/etc/gnss-share.conf")
  -h    Print help and quit.

In addition to the command line options, this application will respond to the following signals when in "server" mode:

  • SIGUSR1 - The application will load AGPS data from the directory agps_directory specified in the configuration file, and continue running afterward.

  • SIGUSR2 - The application will store AGPS data to the directory agps_directory specified in the configuration file, and continue running afterward.

Installation

Dependencies:

  • Go

Build the gnss-share application with:

$ go build ./cmd/gnss-share

Development

New GNSS device support

Support for additional gnss devices can be added by implementing the gnss_driver interface, see internal/gnss/gnss.go for specifics.

gnss_share's People

Contributors

agx avatar craftyguy avatar nytowl avatar

Watchers

 avatar

Forkers

yxw027

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.