Garmin ANT on Ubuntu

I finally got tired of booting up Windows to download data from my Garmin 910XT. I tried to get my old Ubuntu 15.04 system to recognise my ANT stick but failed. Now that I have a stable Ubuntu 16.04 system the time seems ripe.

Garmin ANT USB Dongle and the Linux penguin.

openant

Install openant, a Python library for downloading and uploading files from ANT-FS compliant devices.

  1. Download the zip file from https://github.com/Tigge/openant.
  2. Unpack the archive and install using
    sudo python setup.py install
    

antfs-cli

Install antfs-cli, which implements a Command Line Interface to ANT-FS.

  1. Download the zip file from https://github.com/Tigge/antfs-cli/.

  2. Unpack the archive and install using

    sudo python setup.py install
    
  3. This will automatically install pyusb if necessary.

Connect Device

Connect your ANT stick and check that it is recognised by your system.

lsusb | grep Dynastream
Bus 003 Device 030: ID 0fcf:1008 Dynastream Innovations, Inc. ANTUSB2 Stick

The two hexadecimal numbers following ID in the output above are then used to load the appropriate kernel module.

sudo modprobe usbserial vendor=0x0fcf product=0x1008

Pair and Enjoy

If the above has gone smoothly then you are ready to grab data from your device. Turn it on and…

antfs-cli --pair

You should find the resulting FIT files under a path like ~/.config/antfs-cli/3860872045/activities. The numeric folder name is uniquely linked to your device, so that part of the path with differ.

If you’re like me then you’ll probably have a bunch of FIT files that need to be uploaded to Garmin Connect. Press the “Upload or Import Activity” link at the top/right of your profile then select the files and press the big blue Import Data button.

Importing GPS data via Garmin ANT.