← Pitch & Roll

BoatTools

Un outil en ligne de commande & une bibliothèque Swift – sous licence MIT – pour lire, décoder et rejouer les données des instruments du bord — NMEA 0183, NMEA 2000, Signal K et Victron VRM — avec suivi des cibles AIS et découverte automatique sur le réseau local.

Dernière version Plateformes

boattools — outil en ligne de commande

Pour les marins & les bricoleurs

Connecte-toi à ta passerelle ou à ton MFD en TCP/UDP, reçois Signal K par le réseau (TCP, REST ou WebSocket), rejoue des journaux enregistrés, explore le réseau local à la recherche d'instruments, consulte ton site Victron VRM et télécharge les bulletins météo GMDSS haute mer — le tout depuis le terminal, avec une sortie couleur en direct.

Versions de développement (tête de la branche labinstables, pour les aventureux) : tous les fichiers →

Dépendances

macOS

Le .pkg est signé et notarié par Apple — il s'installe sans aucun avertissement de Gatekeeper, sans rien d'autre à installer.

Linux & Windows — runtime Swift

Les binaires Linux et Windows lient le runtime Swift dynamiquement : la machine cible doit l'installer.

Linux (Ubuntu / Debian)

curl -O https://download.swift.org/swiftly/linux/swiftly-$(uname -m).tar.gz
tar zxf swiftly-$(uname -m).tar.gz && ./swiftly init

Windows

winget install --id Swift.Toolchain -e

Linux — bibliothèque Avahi (feature discover uniquement)

La découverte Bonjour/mDNS s'appuie sur la bibliothèque de compatibilité Avahi. Inutile si tu n'utilises pas discover.

sudo apt-get install -y libavahi-compat-libdnssd1

Windows — Microsoft VC++ Redistributable

Généralement déjà présent sur la plupart des PC. S'il manque, installe Microsoft.VCRedist.2015 (sans effet s'il est déjà là) :

winget install --id Microsoft.VCRedist.2015+.x64 -e

BoatToolsKit — bibliothèque Swift

Pour les développeurs

Le moteur multiplateforme derrière la CLI : modèles Sendable en concurrence stricte (Swift 6.3), clients NMEA / Signal K / Victron, un magasin de métriques normalisées et le décodage AIS avec dérivation du pays — prêt à embarquer dans ta propre application. Inclut aussi un pont en interfaces C, pour l'interopérabilité avec n'importe quel autre langage.