National

Installer SignalK sur Raspberry Pi à bord

Guide d'installation de SignalK sur Raspberry Pi pour centraliser les données NMEA 2000 et 0183 et les diffuser via Wi-Fi à bord.

Résumé

SignalK transforme un Raspberry Pi en hub de données qui parle NMEA, MQTT et Web. L'installation prend 30 minutes avec l'image préconfigurée, le plus long est de bien câbler les sources et tester.

Pourquoi SignalK

Tu veux voir tes données de bord (vent, profondeur, position, batteries) sur un téléphone ou une tablette en Wi-Fi, sans payer une licence Garmin ou Raymarine. Tu veux logger des données pour les analyser après. Tu veux exposer ces données à un système domotique, un serveur MQTT, ou un dashboard custom. SignalK est le projet open source qui fait ça depuis 2014, en hub central et en serveur web.

Matériel à prévoir

Un Raspberry Pi 4 avec 4 Go de RAM est le minimum confortable. Le 5 fonctionne aussi, mais consomme un peu plus. Une carte microSD de 32 Go classe 10. Un boîtier ventilé passivement, le Pi chauffe en environnement clos de table à cartes. Une alimentation 12V vers 5V USB-C de qualité, type Mean Well DR-5 ou un convertisseur Victron. Évite les chargeurs USB chinois bas de gamme, ils tombent en panne sur un bateau.

Pour la connexion au bus NMEA 2000, tu prends un YDEN-02 de Yacht Devices ou un Actisense NGT-1 USB. Pour le NMEA 0183, un câble USB-série suffit. Si tu n'as que du 2000, le YDEN-02 se branche sur un T libre du backbone et apparaît comme un device standard, c'est très propre.

Installation en pratique

L'équipe SignalK propose une image OpenPlotter qui inclut SignalK, une distribution Raspberry Pi OS personnalisée, et un panneau de configuration. C'est la voie la plus simple. Tu télécharges l'image sur openplotter.org, tu la flashes sur la carte SD avec Raspberry Pi Imager, tu insères, tu démarres.

Au premier boot, tu accèdes au Pi soit en HDMI clavier, soit en SSH par le réseau local. Les identifiants par défaut sont à changer tout de suite. L'interface OpenPlotter ouvre l'onglet SignalK, où tu cliques sur Install si ce n'est pas déjà fait, et tu accèdes à l'interface admin SignalK sur le port 3000 (http://signalk.local:3000 si la résolution mDNS marche, sinon par IP).

Configurer les sources

Dans Server > Plugin Config > Connection, tu ajoutes une connexion. Pour ton YDEN-02 USB en NMEA 2000, tu choisis NMEA 2000 sur Yacht Devices, type série. Tu pointes le port USB (typiquement /dev/ttyUSB0). Tu enregistres, tu démarres. SignalK liste les PGN reçus en temps réel, et chaque variable apparaît sur l'interface (vent, vitesse surface, profondeur, batteries si tu as un module).

Pour le NMEA 0183, même logique avec une connexion type 0183 série, en pointant /dev/ttyUSB1 et la baudrate qui va bien (4800 standard, 38400 pour AIS).

Visualiser les données

Plusieurs apps web sont accessibles via l'admin SignalK. Freeboard est un dashboard générique qui affiche cartes et instruments dans le navigateur. KIP est plus moderne, plus customisable, et marche bien sur tablette. Tu y crées tes pages avec les widgets que tu veux, tu sauvegardes, et tu les ouvres depuis n'importe quel téléphone connecté au Wi-Fi du Pi.

Pour partager le Wi-Fi du bateau, configure le Pi en hotspot via OpenPlotter. Toute la famille se connecte sur le SSID Boat, et chacun voit ses instruments sur son téléphone.

Le côté MQTT

SignalK peut publier toutes ses données sur un broker MQTT, soit interne soit externe. Tu actives le plugin signalk-to-mqtt, tu configures le broker (par exemple Mosquitto installé sur le même Pi), et tu retrouves chaque variable sous un topic type vessels/self/navigation/speedOverGround. Tu peux alors connecter Home Assistant, Node-RED, ou Grafana pour faire des dashboards plus poussés ou des automatismes (alerte si vent supérieur à 30 nœuds, par exemple).

Logger pour analyser

Le plugin signalk-to-influxdb pousse les données vers une base InfluxDB locale. Couplé à Grafana, tu obtiens des graphes historiques de tout ce qui transite par le bus. Vitesse moyenne, comparaison de bords, conso batterie par jour, c'est l'outil qui te fait progresser objectivement, surtout si tu veux comprendre pourquoi tu vas plus vite babord amure que tribord.

Limites à connaître

Le Pi n'est pas un instrument certifié. Si SignalK plante, ton traceur principal doit continuer à marcher de manière indépendante. Garde le Pi comme outil de confort et d'analyse, jamais en chemin critique de la sécurité.

L'environnement marin est dur. Humidité, chocs, écarts de température. Le boîtier doit être ventilé mais pas dans une zone de condensation. Une alimentation propre via convertisseur isolé évite les surprises.

Les mises à jour SignalK sont régulières. Lis les changelogs avant d'updater en cours de saison. Une mise à jour cassée à 30 milles d'un port n'est pas le moment idéal pour debugger.

Premier check à faire

Une fois installé et tout connecté, lance une session de 30 minutes en navigation, et regarde le data browser SignalK. Toutes les variables se mettent à jour. Si une reste à zéro ou n'apparaît pas, vérifie la source. C'est le check rapide qui valide l'installation.

Pour planifier tes navigations en complément de ces données instrumentées, BoatMap te donne ports, mouillages et infos pratiques en mode offline.

Try BoatMap for free

Nautical charts, 50,000+ marinas and anchorages, marine weather and GPS tracking.

Download on the App StoreGet it on Google Play