OpenClaw fonctionne désormais sur un Raspberry Pi 5 aux côtés de SignalK, permettant aux propriétaires de bateaux de texter leur navire via Telegram et de recevoir la télémétrie en direct en quelques secondes. La combinaison fonctionne immédiatement, mais quelques particularités de configuration peuvent bloquer le démon et gaspiller des crédits de tokens.

Pourquoi un LLM basé sur un Pi est important pour les plaisanciers

Les petites embarcations manquent souvent de bande passante ou de budget pour les services d'IA basés sur le cloud. Un Raspberry Pi 5 offre suffisamment de puissance de calcul pour héberger OpenClaw, un assistant open-source piloté par LLM, tandis que SignalK fournit une API standardisée pour les données marines. Ensemble, ils offrent une interface de chat embarquée à faible coût capable de répondre à « Quelle est ma vitesse ? » ou « Quelle est la profondeur de l'eau ? » sans quitter le bateau.

Les éléments qui rendent l'ensemble fonctionnel

  • OpenClaw s'exécute directement sur l'OS du Pi, en utilisant la pile de modèles locaux.
  • SignalK s'exécute dans un conteneur Docker, exposant une API REST (HTTP) qui publie les relevés des capteurs en JSON.
  • Les deux programmes restent isolés : OpenClaw appelle les points de terminaison (endpoints) de SignalK, et SignalK ne voit jamais les processus internes du LLM.

Comme la communication est en pur HTTP, aucune astuce réseau particulière n'est requise. Une simple liaison Ethernet ou Wi-Fi suffit pour maintenir la boucle active.

Les pièges qui font trébucher les premiers utilisateurs

  1. Le mode passerelle (gateway mode) doit rester défini – La configuration d'OpenClaw contient une clé gateway.mode qui indique au démon comment exposer son API. Sa suppression empêche silencieusement le service de démarrer. La solution sûre est :

    openclaw config set gateway.mode local
    
  2. La conversion d'unités n'est pas automatique – SignalK suit le Système international d'unités (SI). La vitesse arrive en mètres par seconde, la profondeur en mètres. Si l'on demande au LLM des « nœuds » ou des « pieds », il renverra les chiffres bruts, ce qui donnera des réponses trompeuses. Ajoutez une logique de conversion au prompt de l'agent ou post-traitez le JSON avant de le renvoyer à l'utilisateur.

  3. Les données historiques sont un plugin séparé – Par défaut, OpenClaw ne voit que le dernier instantané (snapshot). Pour interroger des tendances (« Le vent a-t-il augmenté au cours de la dernière heure ? »), vous avez besoin du plugin d'historique InfluxDB de SignalK. Installez-le et activez-le, puis exposez le point de terminaison historique à l'agent.

  4. jq est absent de Raspberry Pi OS – De nombreux tutoriels supposent que le processeur JSON en ligne de commande jq est présent. L'image du Pi ne l'inclut pas. Plutôt que d'installer des paquets supplémentaires, laissez OpenClaw analyser lui-même le JSON brut ; les LLM modernes gèrent assez bien les structures imbriquées pour la plupart des requêtes de télémétrie.

  5. Ne désactivez pas le plugin Ollama – Ollama fournit l'environnement d'exécution (runtime) pour les modèles de langage locaux. Le désactiver coupe l'accès au backend du modèle et empêche l'agent de générer des réponses. Gardez le plugin activé, même si vous n'utilisez pas ses outils supplémentaires.

Réduire la facture de tokens sans sacrifier l'utilité

L'exécution locale d'un modèle de langage engendre tout de même des coûts de tokens chaque fois que le modèle traite une requête. Deux ajustements pratiques ont réduit mon utilisation d'environ un quart :

  • Réduisez l'ensemble d'outils – OpenClaw regroupe toute une suite d'outils pour développeurs (exécution de code, navigation de fichiers, etc.). Les assistants liés à la navigation ont rarement besoin de plus que l'accès au runtime et au système de fichiers. Passer à un profil minimal réduit la consommation inutile de tokens.

  • Étendez la rétention du cache – La configuration vous permet de conserver le prompt système et le contexte récent en mémoire plus longtemps. Un cache plus long signifie que le modèle n'a pas besoin de ré-encoder les mêmes instructions à chaque message Telegram, économisant ainsi des tokens à chaque aller-retour.

Pour les propriétaires qui préfèrent une surveillance discrète, la fonction cron intégrée peut interroger les capteurs critiques (tension de la batterie, alarme de profondeur) selon un calendrier défini. L'agent n'envoie une alerte Telegram que lorsqu'un seuil est franchi, gardant ainsi le canal de chat propre.

Qui en profite, qui doit rester vigilant

  • Les propriétaires de bateaux bénéficient d'une interface conversationnelle embarquée et peu coûteuse. Pas de frais d'abonnement, pas de dépendance aux données cellulaires.
  • Les mainteneurs de l'open-source voient un déploiement en conditions réelles qui sollicite à la fois OpenClaw et SignalK dans un environnement contraint, révélant des bugs qui resteraient autrement cachés.
  • Les fournisseurs de LLM dans le cloud perdent un segment de marché de niche, mais ils conservent l'avantage pour le raisonnement lourd ou les entrées multimodales qu'un Pi ne peut pas gérer.

Le risque principal est la fiabilité : une coupure de courant ou un plantage de Docker peut réduire l'assistant au silence. La redondance (un second Pi, une alimentation secourue/UPS) atténue le problème mais augmente le coût. Les utilisateurs doivent également protéger le token du bot Telegram ; un token compromis permet à n'importe qui d'interroger les capteurs du bateau.

À surveiller ensuite

  • Mises à jour des modèles – À mesure que de nouveaux modèles quantifiés plus efficaces apparaissent, ils s'exécuteront plus rapidement sur les cœurs ARM du Pi, réduisant davantage la latence.
  • Extensions SignalK – Des plugins développés par la communauté pour l'AIS, le radar ou les prévisions météorologiques pourraient être exposés au LLM, élargissant ainsi le champ de conversation.
  • Renforcement de la sécurité – Des projets expérimentent déjà le chiffrement de bout en bout pour l'API SignalK-OpenClaw, une étape judicieuse pour tout navire naviguant dans les eaux publiques.

À retenir

Le déploiement d'OpenClaw sur un Raspberry Pi 5 avec SignalK transforme un modeste bateau en une plateforme conversationnelle, mais le succès repose sur la préservation du mode gateway, la gestion de la conversion d'unités, l'activation du stockage de l'historique et le maintien du plugin Ollama. Réduisez l'ensemble des outils et prolongez la rétention du cache pour maintenir une faible consommation de tokens, et utilisez l'alarme cron pour rester silencieux jusqu'à ce qu'un événement important survienne. Le résultat est un assistant de télémétrie en temps réel à bas coût qui fonctionne entièrement à bord, offrant aux marins le confort d'un chatbot sans le coût des services cloud.