NEWS
Eastron SDM230M Energy Monitor mit ESPHome
-
Ich habe einen original SDM230M und würde den gerne über ESPHome auslesen. Ich denke ich habe alles richtangeschlossen (RS485 TO TTL Adapter), Abschlusswiderstand etc. Aber es kommt absolut keine Verbindung zustande. Gibt es da irgend etwas besonderes zu beachten was nicht in der Doku zu ESPHome steht?
-
@wolfgangfb sagte in Eastron SDM230M Energy Monitor mit ESPHome:
es kommt absolut keine Verbindung zustande.
von wo wohin?
-
@homoran
Na zwischen dem SDM230M Energy Monitor und dem ESP.
Ich habe 1:1 den Code aus https://esphome.io/components/sensor/sdm_meter.html genommen, Einen RS485 TO TTL wandler dazwischen, A mit A, B mit B, Gnd mit GND und dann RX und TX mal gekreuzt, mal gerade an den ESP angeschlossen, in den Logs des ESP (sowohl mit ESP8266 als auch mit ESP32 probiert) kommt einfach nichts.
Von daher die Frage, ob das schon mal jemand erfolgreich hinbekommen hat (das Auslesen dieses oder eines anderen RS485 Stromzählers)? -
Von daher die Frage, ob das schon mal jemand erfolgreich hinbekommen hat (das Auslesen dieses oder eines anderen RS485 Stromzählers)?
Etliche davon. Allerdings nie ESPHome verwendet. Auf den ersten Blick fehlt mir da eine Angabe zur Adressierung der Modbus-Teilnehmer. Ist der SDM z.B. der Teilnehmer Nr.2 mit entsprechender Adresse am RS485 läuft diese Konfguration vermutet völlig ins Leere.
Die Baudrate ist im SDM oder in der yaml angepasst, wie es in Deinem Link explizit erwähnt wird?
Ob sich überhaupt etwas tut, könnte in erster Näherung an einem TTL Wandler "ablesbar" sein, wenn er beim Halbduplex lesen zu erst die Send-LED blinken lässt und danach die Receive-LED bei Empfangen.
Dieser Vorgang sollte nach der Konfiguration alle 60 Sekunden laufen.Aber so alles sehr viel Glaskugel mit so wenig konkreten Angaben zum individuellen Aufbau....
-
Ich habe mich auch über die fehlende ID in der yaml gewundert, im Zähler ist aber ID=00001 eingestellt.
Wie hast Du das denn konkret realisiert? (welche Hardware, welche Software)?
-
@wolfgangfb said in Eastron SDM230M Energy Monitor mit ESPHome:
Ich habe mich auch über die fehlende ID in der yaml gewundert, im Zähler ist aber ID=00001 eingestellt.
ok, dann liegt es daran nicht. Die Adressangabe ist optional und nur notwendig wenn ungleich 1
Wie hast Du das denn konkret realisiert? (welche Hardware, welche Software)?
Ein ESP32 mit TTL Wandler dahinter und das Ganze mit Tasmota
https://tasmota.github.io/docs/Modbus-Bridge/Ich mag funktionell dabei die Konsole von Tasmota sehr, da sie massiv beim Trouble Shooting hilft.
Mein ESP32 Board passte hier nicht wirklich zu vlt. hätte ich dann auch sowas mal getestet: https://github.com/zivillian/esp32-modbus-gateway
-
@dieter_p
So, ich habe esgeschafft, wenn man GPIO 15/16 für den UART nimmt geht es aauf einmal, andere GPIO Kombinationen wollten aus welchen Gründen auch immer nicht. Das einzige was noch etwas unschön ist sind die vielen CRC Prüfsummenfehler. Ich habe den Abschlusswiderstand direkt an den Stromzähler angebracht. Ist das OK? -
-
und schau dir auch genau deinen TTL Wandler an, oft sind 120Ohm Widerstände drauf und man darf aus Chinesischen Manuals herausfinden was da aktiv oder wie zu verlöten ist.
Bei dem Ding zB R0 Brücken um den 120Ohm Abschluß am Master zu aktivieren:
Bisher hatte ich überwiegend kurze Verbindungen vom TTL Wandler zu einem Teilnehmer und es hat ohne Terminierung funktioniert auch wenn es sicher nicht der Bus-Norm entspricht.
-
Ich habe genau diesen Wandler, nur sehe ich da keinen R= den ich brücken kann. Kannst Du mir auf dem Bild zeigen, wo die Brücke gesetzt werden muss?
-
@wolfgangfb sagte in Eastron SDM230M Energy Monitor mit ESPHome:
nur sehe ich da keinen R= den ich brücken kann
dann hast du nicht den gleichen
Auf dem Bild über B-
-
Danke, der ist bei mir nur anders beschrieftet (R13), ansonsten ist die Platine identisch.
-
@wolfgangfb said in Eastron SDM230M Energy Monitor mit ESPHome:
Danke, der ist bei mir nur anders beschrieftet (R13), ansonsten ist die Platine identisch.
Das solltest Du zu 100% prüfen. Wie gesagt, nicht einfach Doku zu diesen Cent-Platinen aus Fernost zu finden.
Im Zweifel einfach sein lassen und selbst einen Widerstand zwischen A und B hängen um den Bus zu terminieren. Oder komplett ohne Widerstände. Einseitig terminiert wäre jedenfalls nicht meine Empfehlung wenn du schon von Fehlern berichtest.
Edit: scheint so zu sein: