ESP Hella IBS 200 Gateway LIN->MQTT

13. September 2019 at 20:38
Print Friendly, PDF & Email

Das Modul liest die Daten des Hella Batteriesensors aus und schickt es an einen MQTT/Broker. Die Verbindung zum IBS wird über die LIN Schnittstelle realisiert, zum MQTT-Broker via WLAN.

Für meinen ersten Versuch habe ich einen Arduino Nano eingesetzt. Leider bekommt man damit das Timing für die LIN Übertragung nicht zuverlässig hin. Mann braucht zwingend ein ESP, ein Mega oder STM32.

Damit der Stromverbrauch gesenkt wird, verwendet der ESP DeepSleep. In der passiven Phase kommt man somit auf ca. 35mA. Der ESP alleine verbraucht dabei nur 3 mA.

Das Modul soll als Basis für weitere Sensoren dienen, z.b. Ultraschallmessung des Frischwassertanks im Wohnmobil. Somit entfällt die Verlegung von Daten- oder Steuerleitungen.

MQTT erlaubt eine asynchrone Anbindung, so dass die zentrale Bedieneinheit sich die Daten abholen kann, wenn sie es braucht. Weiterhin lassen sich die Nachrichten im MQTT-Broker abgreifen, um das System zu analysieren.

ToDo: Das Modul soll sich drei WLAN-Netzwerke merken. Damit könnten sich die Sensoren mit dem Heimnetzwerk verbinden und die Daten zu Hause ohne Bedieneinheit ausgelesen werden.

Hinweis: Aufgrund der Länge der MQTT Nachricht, muss in PubSubClient.h die package size auf 250 gesetzt werden. #define MQTT_MAX_PACKET_SIZE 250

Das LIN-Protokoll kann man mit einem Salae logic analyzer analysieren. Stark vereinfacht: Channel 0 zeigt die Anforderung des Masters. Der IBS antwortet dann entsprechend.

Der Code liegt auf github:

https://github.com/ThomasH-W/ESP_IBS_Gateway