Siemens IM350 mit dem Raspberry Pi auslesen

Leider habe ich versehentlich den ersten Blogeintrag zu diesem Thema gelöscht. Hier nochmals eine vereinfachte Version davon.

Mein Energieversorger Wels Strom (eww) hat vor einiger Zeit meinen Iskra MT-174 gegen einen Siemens IM350 getauscht. Dieser hat, im Unterschied zum Iskra, eine Kundenschnittstelle mit einem RJ12-Stecker und keine Infrarot-Schnittstelle. Mein Lesekopf war somit reif für willhaben.

Mein Wissen über das Auslesen habe ich zum Großteil von diesem Forum bezogen. Herzlichen Dank nochmals an dieser Stelle an alle, die sich mit diesem Thema, viel tiefer als ich, beschäftigt haben.

https://www.photovoltaikforum.com/thread/139837-siemens-im350/

Hardwaretechnisch braucht man vier Dinge:
– USB-TTL-Konverter
– RJ12-Kabel mit Stecker
– Invertierungsschaltung (ist selbst zu löten)
– Raspi (oder Arduino, aber damit habe ich keine Erfahrung)

Um die Daten zu beziehen, benötigt man eine Invertierungsschaltung. Diese kann entweder mit einem Transistor oder mit einem Inverter bestückt werden. Die Transistor-Schaltung hat bei mir nicht funktioniert und daher habe ich mir einen Inverter besorgt. Hier der Schaltplan, wobei die Kabelfarben vom verwendeten USB-TTL-Konverter und dem RJ12-Kabel abhängig sind:

Invertierungsschaltung
Foto der Schaltung

Hier der Link zum USB-TTL-Konverter*:
https://www.delock.de/produkt/83117/merkmale.html

Hier der Link zum RJ12-Kabel*:
https://www.amazon.de/gp/product/B000VMZHG4/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&th=1

*Es gibt natürlich auch andere Anbieter und Produkte, aber das sind die, die ich verwendet habe.

Die Software-Basis für das Auslesen ist SZReader:
https://gitlab.com/astrnad/szreader

Man braucht dafür einen Entschlüssungsschlüssel (Neudeutsch: Smart Meter Interface Passwort) vom EWW-Portal, da die Kundenschnittstelle die Daten verschlüsselt liefert:

In der szreader.config trägt man den Schlüssel dann ein. Bei mir schreibt er die Werte einfach in eine Textdatei (datasink):

Da ich zwei Zähler bzw. folglich zwei Schaltungen habe, sind da bei mir auch zwei Einträge. Ich verwende selbstgeschriebenes Programm zur Weiterverarbeitung. Wie man es z.B. mit OpenHAB, HASS, etc. verwendet, weiß ich leider nicht.