Skip to main content
FDX reader for Garmin GND10
===========================

This is software to read the FDX protocol data seen on the USB port of Garmin
GND10 gateways.

The GND10 unit is used on boats and translates between Nexus FDX and NMEA2000.

Installation
------------

fdxread requirements are listed in `requirements.txt` and should be installed
using pip.

```
git clone https://github.com/lkarsten/fdxread.git
cd fdxread
virtualenv --system-site-packages venv
. venv/bin/activate
pip install -r requirements.txt
```

Tested on Linux and OS X.

Running it
----------

```
$ ./fdxread -h
usage: fdxread [-h] [--format fmt] [--seek n] [--pace n] [-v] inputfile

fdxread - Nexus FDX parser (incl. Garmin GND10)

positional arguments:
inputfile Serial port or file to read from. Examples: /dev/ttyACM0,
COM3, ./file.dump

optional arguments:
-h, --help show this help message and exit
--format fmt Output mode, default nmea0183. (json, signalk, nmea0183, raw)
--seek n Seek this many bytes into file before starting (for files)
--pace n Pace reading to n messages per second (for files)
-v, --verbose Verbose output

fdxread is used to read FDX protocol data from Garmin GND10 units.
```


```
(inside a populated virtualenv, as described above)
./fdxread /dev/ttyACM0
```

This will read FDX from `/dev/ttyACM0`, and output NMEA0183 to stdout.

To avoid having to muck around with serial ports and locking, I usually run a
[kplex](http://www.stripydog.com/kplex/) TCP server on port 10110, and pipe the
output to it using netcat. That way OpenCPN can read it easily, and I get to
know where I am on the map.


Background information
----------------------

Everything here is deduced from staring at the arriving bytes while
disconnecting some units and motoring in circles. Something was pretty simple to
figure out, some other metrics I'm still not sure is right.

Use at your own risk.

On a side note, I believe this is the only open/freely available document on the
frame format of the `Fast Data eXchange (FDX)` protocol used in Nexus Marine
AB's Nexus products, now owned by Garmin. See `fdxprotocol.rst` and
`libfdx/decode.py` for notes taken while working this out.

License
-------

The contents of this repository is licensed under GNU GPLv2. See the `LICENSE`
file for more information.

Copyright (C) 2016-2017 Lasse Karstensen

Release files for fdxread 0.9.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fdxread 0.9.1
File Size Uploaded
fdxread-0.9.1.tar.gz 107.6 kB Details

Release files / fdxread-0.9.1.tar.gz

Download URL fdxread-0.9.1.tar.gz
Size 107.6 kB
Tags Source
SHA-256 checksum
How to use checksums
4246230eb4441ed702499dd1a52986c196d78a81737bea98a293aaa81ce3711a
BLAKE2b-256 checksum
How to use checksums
96f0dda2159b2e028cf0d2209371f50b635491a74bae9615d51c8149c7e6ae6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.9.1 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page