DIY: Crear un Tracker
con una Raspberry Pi y un gateway NMEA
Esta guía explica cómo construir tu propio Trakkit.org live tracker usando una Raspberry Pi o cualquier sistema Linux.
Los sistemas compatibles incluyen:
- Raspberry Pi OS
- Ubuntu
-
Debian
-
Para esta guía, utilizamos un multiplexor NMEA como el ShipModul Miniplex o un gateway similar.
Tabla de contenidos
- Overview
- Configure your boat on Trakkit.org
- Install Raspberry Pi OS
- Basic system configuration
- WiFi / LAN to NMEA Gateway
- Install Joli_Compagnon
- Create the Python virtual environment
- Manual launch of the tracker
- Automate startup with systemd
Visión general
El proceso es simple:
- Prepara tu configuración en Trakkit.org
- Instala Raspberry Pi OS
- Instala Joli_Compagnon
- Prueba el tracker
- Automatiza el inicio
⚓ - Configura tu Boat en Trakkit.org
Antes de instalar nada en la Raspberry Pi, declara tu tracker en Trakkit.org.
- Crea tu Boat
- Crea un Tag
(ponle un nombre reconocible) - Crea una password para este Tag
- Crea un Track con:
- Fecha de inicio: 01/01/2020
- Fecha de fin: 01/01/2050
- Marca este Track como LiveTrack
Debes tener disponible:
TAG
TAG PASSWORD
Estas credenciales serán utilizadas por el tracker.
🍓 - Instalar Raspberry Pi OS
Instala Raspberry Pi OS normalmente en tu tarjeta SD.
Sigue las instrucciones oficiales:
https://www.raspberrypi.com/software
No se requiere ninguna configuración especial.
Puedes elegir la versión Desktop, más fácil de configurar, o la versión Lite si te sientes cómodo con Linux.
⚙️ — Configuración básica del sistema
En el primer arranque:
- Crea un usuario (en esta guía asumimos el nombre de usuario pi)
- Configura normalmente:
- idioma
- teclado
- red (Wifi para acceder a Internet)
Se recomienda establecer la zona horaria en UTC.
🛰️ — Conexión WiFi o LAN al gateway NMEA
Dependiendo del tipo de conexión (WiFi o LAN) de tu gateway NMEA, obtén la siguiente información del fabricante:
- Dirección IP
- Puerto
- Protocolo (UDP o TCP)
Si estás usando WiFi y tu gateway NMEA no es accesible en la misma red que tu conexión principal a Internet, puede que necesites configurar una segunda interfaz WiFi en tu Raspberry Pi usando un dongle WiFi USB adicional.
Esto te permite: - recibir el flujo de Data NMEA (ruta entrante) - enviar Data de posición a Trakkit.org (ruta saliente)
Normalmente, la configuración se ve así:
IP: 10.0.0.1
Port: 10110
Protocol: TCP
Estos valores deben configurarse en el archivo config.ini.
📦 — Instalar Joli_Compagnon
Descarga el software desde el sitio web de Trakkit:
Trakkit.org → About → Download
Descarga el archivo:
joli_compagnon.tgz
Extráelo en tu directorio home:
tar -xzf joli_compagnon.tgz
Esto crea el directorio: joli_compagnon_last que contiene todos los scripts.
🐍 — Crear el entorno virtual de Python
Entra en el directorio:
cd joli_compagnon_last
Crea el entorno virtual de Python:
python3 -m venv venv
Actívalo:
source venv/bin/activate
Instala los módulos requeridos:
pip install -r requirements.txt
🔁 — Lanzamiento manual del tracker
Activa el entorno virtual de Python:
source venv/bin/activate
Renombra el archivo de configuración:
mv config.ini.EXAMPLE config.ini
Edita el archivo:
nano config.ini
Configura tus credenciales de Trakkit:
###############################################
# 🔑 Your Trakkit.org login credentials
###############################################
[USER]
TAG = YOUR_TAG_HERE
PWD = YOUR_TAG_PASSWORD_HERE
Luego configura la sección NMEA usando los valores definidos previamente para acceder a tu gateway NMEA:
###############################################
# 📡 Data source from NMEA multiplexer
###############################################
[NMEA]
NMEA_SRV = 10.0.0.1
NMEA_PORT = 10110
Inicia el lector NMEA según el protocolo utilizado
(solo debe haber un proceso en ejecución):
./reader_tcp.py
O
./reader_udp.py
Deberías ver tramas NMEA mostradas.
Inicia el emisor en otra terminal:
./sender.py
Este script envía las posiciones GPS a Trakkit.org.
Espera unos minutos.
La posición de tu barco debería aparecer ahora en Trakkit.org.
🚀 - Automatizar el inicio con systemd
En este punto, ya tienes un tracker totalmente funcional para Trakkit.org. El último paso es configurarlo para que se inicie automáticamente al arrancar.
Para el resto de esta guía, asumimos que usamos el protocolo TCP, el nombre de usuario pi y la siguiente ruta de instalación:
/home/pi/joli_compagnon_last/
Los scripts y el entorno virtual están ubicados allí.
Servicio para el lector NMEA
Crea:
sudo nano /etc/systemd/system/trakkit_reader.service
[Unit]
Description=Trakkit.org Companion NMEA Reader
After=network.target
[Service]
User=pi
WorkingDirectory=/home/pi/joli_compagnon_last
ExecStart=/home/pi/joli_compagnon_last/venv/bin/python reader_tcp.py
Restart=always
[Install]
WantedBy=multi-user.target
Servicio para el emisor
Crea:
sudo nano /etc/systemd/system/trakkit_sender.service
[Unit]
Description=Trakkit.org Companion Sender
After=trakkit_reader.service
[Service]
User=pi
WorkingDirectory=/home/pi/joli_compagnon_last
ExecStart=/home/pi/joli_compagnon_last/venv/bin/python sender.py
Restart=always
[Install]
WantedBy=multi-user.target
Habilitar los servicios
sudo systemctl daemon-reload
sudo systemctl enable trakkit_reader
sudo systemctl enable trakkit_sender
Inícialos:
sudo systemctl start trakkit_reader
sudo systemctl start trakkit_sender
Tu Trakkit.org Companion ahora se iniciará automáticamente al arrancar, se conectará a tu gateway NMEA y enviará la posición de tu barco de forma continua.