Signal K – WilhelmSK – Taku Moe becomes smart

NMEA 0183 und NMEA 2000 sind weitläufig bekannt und gelten weithin als Kommunikationsstandard für Navigationselektronik im Marinebereich. Beide Protokolle verstehen einander nicht wirklich, können aber durch Interface bzw. Multiplexer miteinander reden. Standard Messages werden so von unterschiedlichen Geräten, unabhängig vom Hersteller, verstanden und übermittelt. Komplizierter wird die Geschichte jedoch, wenn jeder Hersteller sozusagen als Sahnehäubchen obendrauf seine eigenen/proprietären Messages zusätzlich nutzt, um einen Wettbewerbsvorteil – zu Lasten der Anwender – zu erzielen. Ganz vorne weg wären das zum Beispiel Raymarine, B&G und Garmin. Die Hersteller eigenen Nachrichten werden in der Regel nicht von Geräten oder Displays anderer Hersteller verstanden. So lässt sich dann der Raymarine Evolution Autopilot nicht mit dem B&G Plotter steuern, der Raymarine Chartplotter kann nichts mit dem 3G/4G B&G Radar anfangen etc. Die Liste könnte man unendlich fortführen. Nur die Standardnachrichten (z.B. GPS, Logge, Lot und Wind, um einige zu nennen) schaffen es auf die verschiedenen Displays. Aber selbst das ist oftmals eingeschränkt, wenn zum Beispiel die Kalibrierungsdaten des Echolots nicht weitergegeben werden oder nicht vom anderen Gerät verstanden wird, segelt man zwangsläufig mit zwei verschiedenen Tiefen über die Meere. Noch komplizierter wird es aber, wenn man außer den Navigationsdaten auch andere Daten gerne auf seinem Plotter hätte, wie zum Beispiel Daten über den Batteriezustand, ob die Kühlbox noch läuft, der Inverter noch eingeschaltet ist oder wieviel Ankerkette man gesteckt hat. All diese Dinge bekommt man nur durch sehr sehr teure Hersteller eigene Interfaces und aufwendige Installationen realisiert und sind purer Luxus.

Um dem abzuhelfen, aber auch um einen neuen, universellen Protokollstandard für die Marineindustrie zu schaffen, haben sich vor einigen Jahren ein paar segelbegeisterte Softwareentwickler zusammen getan und Signal K aus der Taufe gehoben. Signal K versteht sich selbst eher als Datenaustauschformat. Dem würde ich aber widersprechen, denn es ist bedeutend mehr als nur das. Es stellt ein komplett eigenes Datenformat bereit, allerdings ohne die bereits vorhandenen außen vorzulassen.
Ich habe das Projekt von Beginn an interessiert mitverfolgt, vor allem weil es Open Source ist und damit praktisch jeder seine Ideen einbringen kann und sich dadurch eine vielfältige Entwicklung über alle Bereiche verwirklichen lässt. Allerdings habe ich nicht mit einer schnellen Realisierung gerechnet. Inzwischen ist Signal K dem alpha-Stadium jedoch entwachsen und entwickelt sich unaufhörlich weiter. Auch kommerzielle Anbieter sind auf den Zug aufgesprungen und bringen ihr Wissen mit ein und veröffentlichen sogar einige ihrer geheimsten Codes, um mit Signal K kommunizieren zu können. Unter anderem sind dies Victron mit seinen innovativen Produkten rund um die Energieversorgung im Marinebereich und Digital Yacht, die mit iCommunicate und iKonvert zwei Gateways anbieten, die zwischen Signal K und NMEA (0183/2000) so wie vielen anderen Protokollen vermitteln.

Um die gewonnenen Daten aus Signal K dann auch sinnvoll zu verwerten, also entsprechend darzustellen, gibt es verschiedene Möglichkeiten. Verschiedene ist eher untertrieben, denn eigentlich sind die Möglichkeiten unbegrenzt. Allein die Phantasie schränkt das vielleicht ein. Jedenfalls will ich mich auf Dauer von Raymarine oder B&G Multifunktionsdisplays trennen. Zu oft bin ich deren Versprechen nach notwendigen Firmware Upgrades aufgesessen, und schon nach weniger als einem Jahr besitzt man dann einen Plotter, der zwar irgendwie funktioniert, aber nicht mehr dem Stand der Technik entspricht. Das alles für viel, viel Geld. Vor zwei Jahren kauften wir für Taku Moe einen Raymarine A95. Damals kam gerade der Axiom heraus. Von einem Kauf wurde uns aber vom Händler abgeraten, zumal der A95 auch auf Lighthouse 3 „upgegraded“ werden könnte. Diese Ankündigung zog Raymarine dann aber ein Jahr später wieder zurück. Und wir bleiben auf dem Schrott sitzen…kurz um, Signal K soll die MFDs auf Dauer ersetzen. Dafür braucht es entsprechende Apps oder ein graphisches Userinterface. Davon gibt es reichlich. Für mich persönlich sticht eine davon besonders hervor: WilhelmSK.

WilhelmSK ist ein höchst flexibles und anpassbares Instrumenten Display, das es mit jedem Kartenplotter und Glass Displays der Welt aufnehmen kann. Ich gehe sogar soweit und behaupte, dass es so etwas noch nicht gegeben hat. Für mich ist WilhelmSK die eierlegende Wollmilchsau. Es zeigt nicht nur sämtlich zur Verfügung stehende Navigationsdaten an, sondern auch Daten der elektrischen Verbraucher, der Solaranlage, der Batterien, des Windgenerators und „natürlich“ auch Navionics Seekarten (Boating App erforderlich) mit AIS targets. Eine frei konfigurierbare Ankerwache ist ebenso enthalten, wie sogenannte Web Gauges, um mir Inhalte aus dem Netz anzeigen zu lassen. Das Layout ist komplett frei gestaltbar, genauso wie die Anzahl der Seiten. Vorgefertigte Gauges, numerische Displays und Bargraphanzeigen runden das Paket ab. Und wie es nunmal mit dem IoT (Internet of Things) so ist, kann ich damit auch alles mögliche schalten. Ich muss jetzt nicht mehr nach unten klettern, um die Ankerwinsch am Schaltpanel einzuschalten. Das geht auch sehr bequem über WilhelmSK. Der Kühlkompressor geht nicht mehr und das Kühlgut droht zu verderben? Kurz einen Alarm über Node-Red konfiguriert und die Auswertung an Signal K geschickt, lässt in WilhelmSK sofort einen Alarm ertönen. Abgastemperatur zu hoch? Alarm. Bier zu kalt? Alarm. Natürlich lassen sich Alarme auch an Bedingungen knüpfen, so dass diese dann eine Reaktion erzeugen und etwas „anstellen“, um dem Alarm entgegenzuwirken. Mittels MQTT, ModbusTCP oder anderen Protokollen lässt sich das Einsatzspektrum quasi unendlich erweitern. Node-Red, MySQL, InfluxDB und zum Beispiel Grafana sind weitere sinnvolle Erweiterungen, um das System zu steuern und zu überwachen. Allein InfluxDB in Verbindung mit Grafana erzeugt hübsche Grafiken, die der Auswertung dienen oder als Logbuchersatz herhalten können. Das ich mit WilhelmSK meinen Raymarine Evolution Autopilot steuern kann, ist ein weiteres Highlight, denn einmal erhaltene NMEA 0183/2000 Daten, und dazu gehören dann auch die proprietären Nachrichten, können von Signal K durch entsprechende Plugins ausgewertet und wieder zurück an die Urheberquelle geschickt werden. Ein sogenanntes Can-Bus USB Interface macht es möglich. NMEA 2000 basiert auf Can. Entsprechende Interface gibt es bereits für wenige Euro. Mit isolierten Ein- und Ausgängen dann ein bisschen teurer und mit Support zum Beispiel von Digital Yacht (iKonvert) oder Actisence (NGT-1) auch noch etwas teurer. Aber alles im Rahmen. Wer das Victron CCGX Display oder Venus GX kennt, kann dieses stattdessen auch auf einem Raspberry Pi installieren und dann den Inhalt, zum Beispiel die Remote Console, in einer Web Gauge auf WilhelmSK anzeigen lassen und steuern.
Am meisten profitiert WilhelmSK, wenn es mit Signal K zusammenarbeitet. Es geht jedoch auch ohne Signal K. Die einzige Voraussetzung wäre ein unterstütztendes Interface: Yacht Devices YDGW-02 oder das Digital Yacht WLN10/20/30 werden direkt unterstützt. Lowrance, Simrad und B&G werden unterstützt, wenn sie über ein GoFree Interface verfügen. Victron Venus GX und CCGX werden ebenfalls direkt unterstützt. Und natürlich NMEA 0183, wenn es über TCP bzw. UDP übertragen wird.
WilhelmSK ist übrigens eine iOS App und läuft damit auf iPhone/iPad. Für Android gibt es andere Lösungen.

Apropos Support. Für Signal K, WilhelmSK, all seine Apps und Plugins, gibt es einen hervorragenden Support auf Slack und natürlich auch über Github, die Platform der Entwickler. Geht irgendetwas nicht, schaut sich einer der Entwickler die Geschichte an und leitet einen an, um zum Erfolg zu kommen. Irgendeine NMEA Message, die nicht oder nicht richtig dargestellt wird oder nicht implementiert ist, eine nützliche Funktion, die noch fehlt? Die Devs kümmern sich und innerhalb kürzester Zeit gibt es ein entsprechendes Update der App oder des Plugins. Diese lassen sich sehr bequem über den sogenannten Appstore des Signal K Node Servers installieren.

Was braucht es nun, um solch ein System aufzubauen?
Diese Frage ist nicht so leicht zu beantworten und hängt maßgeblich von dem ab, was man gerne realisieren möchte. Ohne jedoch auf allzu technische Details einzugehen, hier in etwa meine Installation:

1x Raspberry Pi 3 B+ mit Signal K Server, Openplotter, Node-Red, InfluxDB, Grafana, Homebridge
1x Can-Bus USB Interface – zwischen Pi und N2K
1x Raspberry Pi 3 B+ mit Victron VenusOS Version 2.30
3x Victron VE.Direct USB Interface – daran hängt der Victron Batteriemonior und beide Victron Solarregler
1x Victron VE.Bus MK3 USB Interface – daran hängt der Victron Inverter/Charger
1x Teltonika RUT950 Router – hier läuft alles zusammen
1x Sonoff 4Ch Pro R2 12V Smart Switch mit Tasmota Firmware zum Schalten von 12V Verbrauchern (aktuell: Bugstrahler, Ankerwinsch, Windgenerator Start/Stop, Radar)
1x BME280 Sensor für Temperatur, Luftdruck, relative Luftfeucthigkeit
diverse 1W (1 wire) Sensoren für Temperaturüberwachung Batterien, Kühlung, Motor

Für wen ist Signal K und seine Apps geeignet, was für Voraussetzungen braucht es, um solch ein System aufzusetzen?
Wieder gilt: die Frage ist nicht so einfach zu beantworten. Es hat sich für mich aber herausgestellt, dass es auf keinen Fall eine Plug’n Play Lösung ist. Die Verkabelung ist dabei noch das geringste Problem und mit relativ wenig Aufwand in kurzer Zeit erledigt. Wenn es um das Aufsetzen des Systems auf dem Raspberry Pi geht, ist etwas mehr Können gefragt. Aber selbst ohne Vorbelastung ist es möglich. Man sollte vielleicht etwas Zeit mitbringen, denn es ist unabdingbar sich in die Materie einzuarbeiten. Dafür gibt es Anleitungen im Internet zu Hauf. Die richtigen Fragen bei Google gestellt, weisen einem dann den Weg. In einschlägigen Foren gibt es weitere Hilfe. Eine Liste mit Links füge ich am Ende des Beitrages ein.

Für mich war der Einstieg nicht ganz so schwer.
Quasi mit dem ersten Linux Kernel 0.12 irgendwann Anfang der 90er Jahre hatte ich bereits erste Erfahrungen mit dem Betriebssystem gesammelt. Seither ist jedoch viel passiert, vor allem bin ich älter geworden und meine Interessen haben sich verlagert. Viel ist nicht in Erinnerung. Dennoch traute ich mir zu ein entsprechendes System für Taku Moe einzurichten. Der Winter war bestens dafür geeignet. Zunächst habe ich einen Raspberry Pi 3b+ besorgt, um erste Erfahrungen damit zu sammeln. Hinzu kamen dann noch einige Sensoren und Smart Switches, um deren Installation und die Einbindung zu ergründen. Das gelang auch sehr gut. Zuhause, quasi im Trockenlauf, mussten dafür etliche Lampen sowie die Heizungssteuerung herhalten. Einer der Sensoren zeigte mir auch auf, dass es in meiner Wohnung viel zu trocken ist 😉
Das gesteckte Ziel war jedoch einen Signal K Server einzurichten und gleichzeitig auch Victron’s VenusOS laufen zu lassen. Das ist technisch auf einem einzigen Raspberry möglich. Allerdings übersteigt es meine Fähigkeiten ein entsprechendes Image zu kompilieren. Insofern greife ich der Einfachheit halber lieber auf fertige Images zurück. So musste ein zweiter Raspberry her. Beide laufen nun in einem Netzwerk und versorgen sich gegenseitig mit Daten. Je nach Bedarf füge ich neue Bestandteile hinzu, erweitere das System und schicke die ausgewerteten Daten dann an die jeweilige App oder an die Multifunktionsdisplays.

Das ist sicherlich ein gehöriger Aufwand und ganz bestimmt auch eine nette Spielerei, die man nicht unbedingt haben muss. Ich kann aber auch einen guten Nutzen daraus ziehen. Taku Moe kann quasi aus der Ferne überwacht und zum Teil auch gesteuert (steuern im Sinne von schalten…obwohl theoretisch auch eine Steuerung des Schiffes aus der Ferne möglich ist. Nur wer bedient dann die Segel 😮 ) werden. VPN und/oder die Signal K Cloud machen es möglich in Realzeit auf alle Daten zuzugreifen. Das Vergnügen hatte ich gerade, als ich zwei Tage in Holland war und dennoch alles im Blick hatte.

Im nächsten Beitrag werde ich nochmals eingehender über WilhelmSK und seine Möglichkeiten berichten. Auch ein etwas ausführlicher Bericht über das Victron VenusOS als Ersatz für den CCGX bzw. Venus GX wird folgen.

Hier noch ein paar Links mit weiterführenden Informationen und abschließend eine Bilder, die WilhelmSK und VenusOS in Aktion zeigen:
http://signalk.org
https://github.com/SignalK
https://www.wilhelmsk.com
https://github.com/victronenergy/venus/wiki/raspberrypi-install-venus-image
http://forum.openmarine.net
http://sailoog.com/openplotter
https://signalk-dev.slack.com
https://nodered.org
https://www.influxdata.com
https://grafana.com

Signal K Appstore
Signal K Appstore
Signal K Node Server WebUi
Darstellung WilhelmSK über VPN
Überwachung der relevanten Schiffsdaten aus der Ferne (hier bin ich gerade in Holland) über VPN
Darstellung WilhelmSK VPN
Überwachung der relevanten Schiffsdaten aus der Ferne (hier bin ich gerade in Holland) über VPN
Darstellung WilhelmSK VPN
Überwachung der Schiffsposition aus der Ferne (hier bin ich gerade in Holland) über VPN
Darstellung WilhelmSK iPad
WilhelmSK auf dem iPad Pro 11″ mit Autopilot
WilhelmSK iPad
WilhelmSK auf dem iPad Pro 11″ mit Navionics Charts (Boating App muss installiert sein)
WilhelmSK iPad
WilhelmSK auf dem iPad Pro 11″ mit Navionics Charts (Boating App muss installiert sein) in B&G ähnlicher Darstellung
CAN-USB Stick Signal K
CAN-USB Stick von Sailoog (Openplotter) mit potentialfreien Eingängen
Raspberry Pi Victron VenusOS Signal K
Raspberry Pi mit Victron VenusOS und Signal K Node Server
Sailing Taku Moe Victron
So in etwa spielt alles zusammen. Noch nicht mit eingezeichnet ist das NMEA 2000 Netzwerk, das jedoch am Signal K Node Server per USB angeschlossen ist

Loading



15 Antworten zu “Signal K – WilhelmSK – Taku Moe becomes smart”

  1. Slawomir sagt:

    Great integration! Do you use any of ESS (Energy Storage System) Assistants on Victron’s OS?
    Have you updated the firmware on Mulit by yourself or by someone trained as Victron asks to do so?

    • Stefanie sagt:

      Hi Slawomir,

      thanks 🙂

      No ESS. Although it could make sense at some point (without feeding back into Grid), I just rely on DVCC feature and maybe other Assistants. Firmware update was done all by myself. I’m not a certified or trained Victron installer, but IMO this task is pretty easy to understand for someone who knows what she/he is doing.

  2. Stefanie sagt:

    And here is the official Victron Energy Blogpost about Signal K, WilhelmSK and Victron devices integration. Thanks to John Rushworth and Victron for the opportunity to tell a bit about this project!

    https://www.victronenergy.com/blog/2019/06/13/sailing-with-signal-k/

  3. […] with Signal K aboard Taku Moe.The blogpost pretty much sums up what I’ve written in my previous post about Signal K, WilhelmSK and all my Victron devices. And the good thing: it’s written in […]

  4. Matthew Jacobus sagt:

    Can you share how you reverse engineered the use of the Pico shunt in one of your pictures? I have 4 tanks i want to monitor, and im leaning towards resistive-NMEA2K adapters unless i can buy 1 Pico tank monitor shunt. Thanks!!

    • Stefanie sagt:

      Hi Matthew!

      The Pico shunt and all the other Pico stuff is not reverse engineered yet. It’s a work in progress. Not sure how long it will take or if I ever will succeed.
      And to be honest, it is much easier to either use one of the N2K adaptors or even better using a diy solution with 1wire sensors hooked up to the RasPi. You can find quite a number of easy solutions in the web.

  5. Hallo Stefanie,

    WilhelmSK ist nur für iOS verfügbar. Gibt es für Android auch eine gute Alternative?

    Danke für ein Feedback.
    Liebe Grüsse Hubert

  6. Bernd Huester sagt:

    Hallo,
    unter anderem wegen dieses Artikels habe ich WilhelmSK erworben. Mit dem YDWG-02 funktioniert es super, mit den Testservern auch. Jetzt habe ich einen Raspi mit SignalK installiert. Sobald ich den mit WilhelmSK anspreche, stürzt die App sofort ab – auf einen iPhone und 2 iPads. Vom WilhelmSK-Support kommt leider nichts. Eine ewig alte Anfrage wurde nie beantwortet, die aktuelle auch bisher nicht.
    Hat jemand einen Tipp?

  7. Bernd Hüster sagt:

    Was Recht ist muss Recht bleiben. Scott von WilhelmSK hat sich gemeldet. Wir haben ein paar Infos ausgetauscht, letztendlich hat er Log-Files angefordert. Daraus hat er sehr schnell das Problem erkannt. In SignalK fehlten Werte meines Bootes. Ich hatte die Länge mit 5,5 eigegeben, es werden aber nur ganze Meter akzeptiert. Beim Speichern wurden die Werte also gelöscht. Dieses leere Feld war die Ursache des Absturzes. Mein Lob für die gute Zusammenarbeit an Scott.

    Gruss Bernd

    • Stefanie sagt:

      Ich habe Scott von dem Problem erzählt. Woraufhin er sich seinen Spamfolder angesehen hat, wo sich die Supportanfrage versteckt hielt.
      Schön, dass das Problem gelöst ist.

      Stefanie

  8. Oliver sagt:

    Hallo, ihr schreibt dass ihr mit WSK Schaltplanes schaltet. Welche Pfade bietet der Smart Switch dafür an? Gruß Oliver

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.