EcoMeter Proteus bzw. TEK603 Schnittstelle

Begonnen von Happyuser20, 26 Februar 2019, 07:12:29

Vorheriges Thema - Nächstes Thema

Happyuser20

Bei euch gibt es ja ein Modul für den EcoMeter zum Abfragen des Heizölstandes und Einbindung in FHEM

Habe mir auch so ein EcoMeter zugelegt und würde dieses gerne im Volkszähler einbinden.

Könnte mir evtl. jemand die Schnittstellenparameter zukommen lassen?
Was wird alles gesendet bzw. welche Daten können ausgelesen werden?

Wäre sehr Dankbar.

Gruß
HappyUser20




dkreutz

Das ist eine serielle Schnittstelle. Parameter wie Baudrate, Bit etc.  lassen  sich evtl. im TEK603 Modul ablesen oder ausprobieren.

Readings: Gesamt in Liter, Verbleibend in Liter und Prozent, Uhrzeit, Temperatur
Raspberry Pi3B+ (Bullseye) / JeeLink868v3c (LaCrosse), nanoCUL433 (a-culfw V1.24.02), HM-MOD-UART (1.4.1), TEK603, MapleCUL / diverse Sensoren/Sender/Aktoren von Technoline, Intertechno, Shelly, Homematic und MAX!, Froggit Wetterstation, Luftdaten.info / Autor des fhem-skill für Mycroft.ai

Happyuser20

Da ja der Ecometer Öl nur alle 60min was sendet, habe ich mal über Nacht den Monitor am Laptop angeschlossen und mit HTerm ausgelsen.

Mit dem Ergebnis komme ich nicht klar. Siehe Bild

Egal was ich an Baudrate einstelle usw. Ergebnis ist immer das gleiche, bzw. für mich.

Gruß
HappyUser20

dkreutz

#3
Hier die Konfiguration der seriellen Schnittstelle aus dem Quellcode von 44_TEK603.pm

95         # Parameter 115200, 8, 1, even, none
96         $po->reset_error();
97         $po->baudrate(115200);
98         $po->databits(8);
99         $po->stopbits(1);
100         $po->parity('none');
101         $po->handshake('none');
102         $po->dtr_active(1);
103         $po->rts_active(1);

Dem Screenshot nach zu urteilen hast Du das aber bereits richtig eingestellt. Bleibt nur noch "CTS Flowcontrol" das bei Dir deaktiviert ist (im Quellcode wird dtr/rts aber auf "1" gesetzt). Das würde ich mal aktivieren...
Raspberry Pi3B+ (Bullseye) / JeeLink868v3c (LaCrosse), nanoCUL433 (a-culfw V1.24.02), HM-MOD-UART (1.4.1), TEK603, MapleCUL / diverse Sensoren/Sender/Aktoren von Technoline, Intertechno, Shelly, Homematic und MAX!, Froggit Wetterstation, Luftdaten.info / Autor des fhem-skill für Mycroft.ai

Happyuser20

Hab jetzt mal flow control auf aktiviert, das gleiche Ergebnis


dkreutz

Dann weiß ich leider auch nicht weiter. Vielleicht kann Stephan Eisler, der Autor des Moduls, weiterhelfen?(Username im Forum "eisler")
Raspberry Pi3B+ (Bullseye) / JeeLink868v3c (LaCrosse), nanoCUL433 (a-culfw V1.24.02), HM-MOD-UART (1.4.1), TEK603, MapleCUL / diverse Sensoren/Sender/Aktoren von Technoline, Intertechno, Shelly, Homematic und MAX!, Froggit Wetterstation, Luftdaten.info / Autor des fhem-skill für Mycroft.ai

Happyuser20

Danke für den Tip, jetzt weis ich zumindest  das Byte 17 & 18 die Aktuelle Literanzahl die gemessen wird.

Scheiter aber am Bash Script.

Stelle erstmal die Schnittstelle für den USB um, an dem der Monitor angeschlossen ist.
Zitatstty -F /dev/usb-ir-lesekopf0 115200 cs8 -parenb -cstopb

Dann führe ich diesen Befehl aus.
Zitatprintf "%d\n" "0x$(cat /dev/usb-ir-lesekopf0 | xxd -s 0x10 -l 2 -ps)"

Führe ich das öfter aus, bekomme ich jedesmal einen anderen wert zurück, obwohl sich der Stand nicht ändert. Sollten immer 2214 Liter sein.

Dann schaute ich mal was überhaupt an dem USB ankommt, mit
Zitatcat /dev/usb-ir-lesekopf0 | xxd

Nach ca 5Std. Laufzeit bekomme ich das
Zitat00000000: 3419 505e 4234 b854 5349 0002 101a 505e  4.P^B4.TSI....P^
00000010: 4234 0000 0008 a60b 7aac 3f53 4900 0210  B4......z.?SI...
00000020: 341b 505e 085e 6300 3008 a60b 5349 000f  4.P^.^c.0...SI..
00000030: 0208 341b 505e 085e ca78 5349 0002 1005  ..4.P^.^.xSI....
00000040: 1d48 345e 5b00 0000 08a6 0b7a 45e4 5349  .H4^[......zE.SI
00000050: 000f 0208 051d 4834 5e5b 37a6 5349 0002  ......H4^[7.SI..
00000060: 1005 341e 485e 455e 6300 3008 a60b 7a40  ..4.H^E^c.0...z@
00000070: 8e53 4900 0f02 0805 341e 485e 455e b4ba  .SI.....4.H^E^..
00000080: 5349 0002 1006 1f48 5e45 3400 0000 08a6  SI.....H^E4.....
00000090: 0b7a 4453 4900 0f02 0806 2145 5e5d 487a  .zDSI.....!E^]Hz
000000a0: cc53 4900 0f02 0806 2145 5e5d 487a cc53  .SI.....!E^]Hz.S
000000b0: 4900 0210 0634 2048 5e46 5e63 0030 08a6  I....4 H^F^c.0..
000000c0: 0b7a a90f 5349 000f 0208 0634 2048 5e46  .z..SI.....4 H^F
000000d0: 5efa 2d53 4900 0210 0721 485e 4634 0000  ^.-SI....!H^F4..

Und blicke jetzt garnicht mehr durch.

Hat hier jemand einem Tip oder Denkanstoß  :)

Gruß
Happyuser20

eisler

Die Werte sehen gut aus.

Das sich die Werte ändern obwohl sich der Stand nicht ändert liegt an der RTC die mit in den Werten steht und sich jede Sekunde ändert und damit auch die CRC in den Werten.

Grüße
Stephan