Hacking up Gypsy

I recently came across a great little project (part of freedesktop.org) called Gypsy. Gypsy is a dbus enabled replacement for gpsd.

My own efforts are writing a GPS daemon are hosted on Google Code. My daemon was written entirely in python and similar to Gypsy published information via dbus. But Gypsy has a number of advantages:

  • Support for the garmin protocol
  • More complete implementation of NMEA and all DBUS information
  • Designed to be efficient for both client and server
  • Includes all configuration to run as a DBus service

My only concern was a feature that I had written into my daemon and this was the ability to record an NMEA stream and replay the stream at any time. This becomes very useful when testing client software.

To this end I have written two patches for Gypsy to firstly add support for TCP and secondly add support for writing a time delta to the NMEA logs output by Gypsy as well as providing a Python tool for replaying these logs via a TCP socket.

The patches have been submitted to the Gypsy dev’s or can be fetched from the Freedesktop bugzilla.

Update: after feedback from the gypsy maintainers I have updated my patch to simply record a delta to the log file. As of Gypsy 0.8 gypsy can now read from a named pipe the patch also includes a python script that can be used to replay the log.

About these ads
This entry was posted in Uncategorized and tagged , , , . Bookmark the permalink.

2 Responses to Hacking up Gypsy

  1. Roman Gezikov says:

    Tim,

    How did you get in touch with gypsy maintainers? We have similar needs and would like to report couple of bugs and suggestions.

    • Tim says:

      I submitted a patch to their bugzilla @ bugs.freedesktop.org

      I’m not sure if my patch was ever applied to the mainline. I have the maintainers email if you need it. Won’t post publically.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s