🛰️ DIY Trakkit-Compatible Tracker with Raspberry Pi

Overview

In the early days of Trakkit, position reports were automatically sent via Iridium GO! email.
That’s why each Boat in Trakkit can still be associated with a dedicated email address — a legacy of that original system.

With the arrival of Starlink, Iridium-based messaging has become mostly obsolete.
Today, any system capable of sending a timestamped position by email can be integrated with Trakkit.

This guide explains how to build a low-cost DIY tracker using a Raspberry Pi.


🧰 What You’ll Need

Hardware

  • A basic Raspberry Pi (any recent model will do ).
  • A microSD card (64 or 128 GB).
  • Choose:
  • A BU-355N5 USB GPS receiver — cheap, reliable, and fully compatible.
  • OR a USB Wi-Fi dongle, if you plan to use a NMEA Multiplexer:
    • one Wi-Fi interface for Internet (Starlink, cellular, etc.),
    • and one Wi-Fi interface for your onboard NMEA network (e.g., via a ShipModul MiniPlex).

💾 Operating System Setup

  1. Download and install Raspberry Pi OS (formerly Raspbian) using the Raspberry Pi Imager.
  2. Perform the initial setup (Wi-Fi, SSH, locale, etc.).
  3. Update the system: bash sudo apt update && sudo apt upgrade -y

⚙️ Installing the Trakkit Companion

  1. On your Raspberry, download the latest Trakkit Companion package from:
    Trakkit > About > Downloads > Tools & Utilities
    The file is named: joli_compagnon_last.tgz

  2. Extract it: bash tar xzf joli_compagnon_last.tgz cd joli_compagnon

  3. You’ll find two Python scripts:

  4. reader_*.py — collects GPS or NMEA data.
  5. sender.py — sends positions to Trakkit.

You’ll need to run both processes.


🔑 Configuration

Edit the file config.ini and set your Trakkit credentials:

[TAG]
TAG = your_tag_here
PASSWORD = your_password_here

You can find or create your Tag and Password from:
Trakkit > Boats > Mails & Tags > Edit > Create Tag Password


🧭 Choosing Your Reader

1. Using a USB GPS (e.g., BU-355N5)

  • Default settings in config.ini usually work out of the box: PORT = /dev/ttyUSB0 BAUDRATE = 4800
  • Run: bash python3 reader_usb.py

2. Using a Wi-Fi NMEA Multiplexer

  • Check the IP address and port of your multiplexer in config.ini.
  • Run: bash python3 reader_tcp.py (or reader_udp.py if your device sends UDP data instead of TCP).

🚀 Running the System

You need both programs running continuously: - reader_ collects GPS/NMEA data. - sender.py* uploads it to Trakkit.

To test manually:

python3 reader_usb.py
python3 sender.py

Open two terminal windows and verify that data is being: - read from your GPS or NMEA stream, - and sent successfully to Trakkit.

Once everything works, configure them to autostart at boot using systemd.

Example:

sudo nano /etc/systemd/system/trakkit_reader.service

Then repeat for trakkit_sender.service.


🧾 Permissions

Ensure the pi user (or whichever user runs the scripts) has access to serial and network devices:

sudo usermod -a -G dialout,tty pi

Reboot afterward.


✅ First Run Checklist

  • [ ] Both reader and sender scripts start without errors.
  • [ ] You see GPS sentences ($GPRMC, $GPGGA, etc.) in the reader log.
  • [ ] Trakkit shows a new position under your Boat’s tag.
  • [ ] Scripts are automatically launched on reboot.

💡 Notes

  • The system is designed to work offline — messages are cached and sent as soon as a connection is available.
  • You can use any Internet link (Starlink, 4G router, marina Wi-Fi, etc.).
  • For advanced setups, you can combine this with gpsd or other NMEA tools.

🧭 Conclusion

You now have a fully autonomous DIY marine tracker, built around open-source tools and fully compatible with Trakkit.org.

This setup provides: - Continuous NMEA or GPS position tracking,
- Automatic data transmission via email,
- Complete independence from Iridium systems.

Sail smart 🌊 — and keep your tracks alive!


🛠️ Troubleshooting

No GPS data appears

  • Check that your USB GPS is detected: bash ls /dev/ttyUSB*
  • Ensure the PORT in config.ini matches your device (/dev/ttyUSB0, /dev/ttyACM0, etc.).
  • Run: bash sudo cat /dev/ttyUSB0 You should see $GPRMC, $GPGGA, etc.

Sender not uploading data

  • Check your Internet connection.
  • Make sure the TAG and PASSWORD in config.ini match the ones defined on Trakkit.
  • Verify that your SMTP credentials or relay settings (if used) are correct.

Systemd services don’t start

  • Inspect logs: bash sudo journalctl -u trakkit_reader.service -e
  • Ensure paths and permissions are correct in your .service files.

Wrong or missing position on Trakkit

  • Ensure your GPS has a valid fix (wait a few minutes after boot).

This documentation was automatically generated by AI and human-checked. It is provided as-is and may evolve with future versions of the Trakkit Companion tools.