NEWS
Adapter "smartmeter"
-
heute hatte ich leider auch den SIGABRT-Fehler. Insgesamt 18 mal.
Ist nur ein Ausschnitt, aber bei LogLevel Debug kommt da ne Menge zusammen. Was mir auffällt ist dass das Log mit Unmengen [NUL]-Werten zugemüllt wird. `
Danke!
Die NUL ist nur blödheit beim Logging. Wird mit der nächsten Version gefixt. kannst aktuell Debug ausschalten.
ich bin jetzt soweit das es irgendein Speichherproblem im node-Prozess mit Buffern ist. Hab bissl experimentiert und versucht umzubauen, aber ändert nix.
Ich versuche das jetzt "kleiner" nachzustellen das ich es den node Entwicklern geben kann. Und mit node 7 will ichs auch noch testen …
Also erstmal: Leider akzeptieren .. melde mich wenn ich was neues habe
-
Wann kann ich die Korrektur von den 0x77er testen? `
Offiziell mit neuer Version: Wenn das hier https://github.com/dspautz/OpenSML/pull/4 akzeptiert wurde und ich dann ne neue Version gepulisht hab.
Manuell:
Im node_modules-Verzeichnis gibt es das "open-sml" Verzeichnis. Du musst das File hier austauschen: https://github.com/Apollon77/OpenSML/bl … SmlList.js mit der hier von dem Github Link. Dann kannste mal Adapter neu starten und schauen was passiert
Bin gespannt
Ingo F `
Heidewitzka, was man hier alles sehen kann!Vielen Dank. Morgen gibts mehr infos!
1597_js2.png -
Gut - alles klar. Ist erstmal kein Problem. Der Adapter läuft ja nach dem automatischen Restart nach dem Fehler sogar problemlos weiter.
Also - kein Stress…ich warte bis du soweit bist.
-
Und doch noch der 0x3c Fehler:
! ````
2017-02-09 22:41:05.289 - error: smartmeter.0 uncaught exception: Error
while parsing SML message: Error: Unknown TL-Field 0x3c for OctetString [Offset
: 120]!: Message: 1b1b1b1b010101017609000000000674d58b62016200726301017601010900
0000000226f1db0b064841470109a8eb2f5c0101636aba007609000000000674d58c620162007263
070177010b064841470109a8eb2f5c070100620affff72620165038ccf3bf17677078181c78203ff
01010101044841033cf5860177070100010802ff0101621e52ff5327100177070100100700ff0101
621b52005301230177070100240700ff0101621b52ff53041e01770701001f0700ff0101622152fe
5300480177070100200700ff0101622352fe5358d60177070100380700ff0101621b52ff5301f201
77070100330700ff0101622152fe5300330177070100340700ff0101622352fe53591c0177070100
4c0700ff0101621b52ff5305470177070100470700ff0101622152fe5300570177070100480700ff
0101622352fe5359790177070100603200020101620952ff5300f40177078181c78205ff01010101
83028dac263c220b9f1d489336b5c0a793a2826273774faf6fb64b41640e45732704e6d59fc08e96
016d9dabec88ea55e980017707010060320303010162235200628d01770701006032030401016223
520062ef017707010060320003010162095200520a017707010060320004010162095200521d0177
07010060320005010162095200520901010163dfc1007609000000000674d5946201620072630201
710163af4f00001b1b1b1b1a0160f9
2017-02-09 22:41:05.295 - error: smartmeter.0 Error: Error while parsin
g SML message: Error: Unknown TL-Field 0x3c for OctetString [Offset: 120]!: Mess
age: 1b1b1b1b010101017609000000000674d58b620162007263010176010109000000000226f1d
b0b064841470109a8eb2f5c0101636aba007609000000000674d58c620162007263070177010b064
841470109a8eb2f5c070100620affff72620165038ccf3bf17677078181c78203ff0101010104484
1033cf5860177070100010802ff0101621e52ff5327100177070100100700ff0101621b520053012
30177070100240700ff0101621b52ff53041e01770701001f0700ff0101622152fe5300480177070
100200700ff0101622352fe5358d60177070100380700ff0101621b52ff5301f2017707010033070
0ff0101622152fe5300330177070100340700ff0101622352fe53591c01770701004c0700ff01016
21b52ff5305470177070100470700ff0101622152fe5300570177070100480700ff0101622352fe5
359790177070100603200020101620952ff5300f40177078181c78205ff0101010183028dac263c2
20b9f1d489336b5c0a793a2826273774faf6fb64b41640e45732704e6d59fc08e96016d9dabec88e
a55e980017707010060320303010162235200628d01770701006032030401016223520062ef01770
7010060320003010162095200520a017707010060320004010162095200521d01770701006032000
5010162095200520901010163dfc1007609000000000674d5946201620072630201710163af4f000
01b1b1b1b1a0160f9
at SmlProtocol.handleMessage (/opt/iobroker/node_modules/iobroker.smartmeter
/node_modules/smartmeter-obis/lib/protocols/SmlProtocol.js:48:15)
at SerialPort. <anonymous>(/opt/iobroker/node_modules/iobroker.smartmeter/no
de_modules/smartmeter-obis/lib/transports/SerialResponseTransport.js:52:41)
at emitOne (events.js:77:13)
at SerialPort.emit (events.js:169:7)
at SerialPort.module.exports.raw (/opt/iobroker/node_modules/iobroker.smartm
eter/node_modules/smartmeter-obis/node_modules/serialport/lib/parsers.js:7:13)
at SerialPort._emitData (/opt/iobroker/node_modules/iobroker.smartmeter/node
_modules/smartmeter-obis/node_modules/serialport/lib/serialport.js:313:18)
at SerialPort. <anonymous>(/opt/iobroker/node_modules/iobroker.smartmeter/no
de_modules/smartmeter-obis/node_modules/serialport/lib/serialport.js:293:14)
at SerialPort. <anonymous>(/opt/iobroker/node_modules/iobroker.smartmeter/no
de_modules/smartmeter-obis/node_modules/serialport/lib/serialport.js:306:7)
at FSReqWrap.wrapper [as oncomplete] (fs.js:576:17)
2017-02-09 22:41:05.299 - warn: smartmeter.0 Exception: Error: Error wh
ile parsing SML message: Error: Unknown TL-Field 0x3c for OctetString [Offset: 1
20]!: Message: 1b1b1b1b010101017609000000000674d58b62016200726301017601010900000
0000226f1db0b064841470109a8eb2f5c0101636aba007609000000000674d58c620162007263070
177010b064841470109a8eb2f5c070100620affff72620165038ccf3bf17677078181c78203ff010
10101044841033cf5860177070100010802ff0101621e52ff5327100177070100100700ff0101621
b52005301230177070100240700ff0101621b52ff53041e01770701001f0700ff0101622152fe530
0480177070100200700ff0101622352fe5358d60177070100380700ff0101621b52ff5301f201770
70100330700ff0101622152fe5300330177070100340700ff0101622352fe53591c01770701004c0
700ff0101621b52ff5305470177070100470700ff0101622152fe5300570177070100480700ff010
1622352fe5359790177070100603200020101620952ff5300f40177078181c78205ff01010101830
28dac263c220b9f1d489336b5c0a793a2826273774faf6fb64b41640e45732704e6d59fc08e96016
d9dabec88ea55e980017707010060320303010162235200628d01770701006032030401016223520
062ef017707010060320003010162095200520a017707010060320004010162095200521d0177070
10060320005010162095200520901010163dfc1007609000000000674d5946201620072630201710
163af4f00001b1b1b1b1a0160f9
2017-02-09 22:41:05.808 - info: smartmeter.0 terminating
2017-02-09 22:41:05.882 - error: host.miniyou instance system.adapter.s
martmeter.0 terminated with code 0 (OK)
2017-02-09 22:41:05.889 - info: host.miniyou Restart adapter system.ada
pter.smartmeter.0 because enabled</anonymous></anonymous></anonymous>Super Arbeit!
-
Und doch noch der 0x3c Fehler: `
Kannst Du den immer reproduzieren? bzw. gestern war es doch noch 0x3b, oder ?! Ist das ein anderer Zähler oder wo kommt das her. hast Du ne Typenbezeichnung?
Also hier gibts wieder nen SML-protokollverstoß. Die Listeinträge sind einfach komisch/falsch aufgebaut und haben mehrere Daten anders/falsch
-
Und doch noch der 0x3c Fehler: `
Kannst Du den immer reproduzieren? bzw. gestern war es doch noch 0x3b, oder ?! Ist das ein anderer Zähler oder wo kommt das her. hast Du ne Typenbezeichnung?Also hier gibts wieder nen SML-protokollverstoß. Die Listeinträge sind einfach komisch/falsch aufgebaut und haben mehrere Daten anders/falsch `
1. Es ist ein HAGER EHZ363W5 https://www.hager.de/sonderprodukte/ehz … #Downloads2. Der Lesekopf ist ein HAGER EHZ001K https://www.hager.de/zaehlerplatzsystem … #Downloads Der rückseitig verbaut ist. Mit dem Udo-Kopf hatte ich auf der Vorderseite die standard OBIS Informationen ausgelesen. Mehr gab es nicht. Die hintere Schnittstelle scheint die erweiterte OBIS Infos auszugeben.
Datentelegramm nach FNN Lastenheft EDL: OBIS-Kennzahl Inhalt 81 81 C7 82 03 FF Hersteller-Identifikation 01 00 00 00 09 FF Geräteeinzelidentifikation 01 00 01 08 00 FF Zählerstand Totalregister 01 00 01 08 01 FF Zählerstand Tarif 1 01 00 01 08 02 FF Zählerstand Tarif 2 Statusinformation 01 00 10 07 00 FF aktuelle Wirkleistung 01 00 01 11 00 FF (nur rückseitige Schnittstelle) letzter signierter Total-Zählerstand 81 81 C7 82 05 FF öffentlicher Schlüssel
Zusatztelegramm (optional): OBIS-Kennzahl Inhalt
01 00 24 07 00 FF: Wirkleistung L1
01 00 38 07 00 FF: Wirkleistung L2
01 00 4C 07 00 FF: Wirkleistung L3
01 00 60 32 00 02: Aktuelle Chiptemperatur
01 00 60 32 00 03: Minimale Chiptemperatur
01 00 60 32 00 04: Maximale Chiptemperatur
01 00 60 32 00 05: Gemittelte Chiptemperatur
01 00 60 32 03 03: Spannungsminimum
01 00 60 32 03 04: Spannungsmaximum
01 00 1F 07 00 FF: Strom L1
01 00 20 07 00 FF: Spannung L1
01 00 33 07 00 FF: Strom L2
01 00 34 07 00 FF: Spannung L2
01 00 47 07 00 FF: Strom L3
01 00 48 07 00 FF: Spannung L3Logbuch: Der Zähler besitzt ein Logbuch in welchem verschiedene Ereignisse gespeichert werden. Das Logbuch wird mit OBIS Kennzahl 81 81 C7 89 E1 FF angesprochen. Ereignisse nach FNN Lastenheft EDL, Version 1.1: OBIS Kennzahl 81 81 C7 89 E2 FF Phasenwechsel: Ereignis-Code 0x00010001 Stellen der System-Uhr wenn die Änderung größer als +/-27s ist: Ereignis-Code 0x0001000E Wechsel der System-Uhr in den Zustand „asynchron“: Ereignis-Code 0x0001000F Fatalen Fehler erkannt: Ereignis-Code 0x00010010 Manipulation erkannt: Ereignis-Code 0x00010011 Zusatzereignisse (optional) OBIS Kennzahl 81 81 C7 90 D1 FF Über-/Unterspannung: Spannungswert Ereignis-Code 0x48470002 ```` Alles Infos sind aus [https://www.hager.de/files/download/0/4 … Z1000B.PDF](https://www.hager.de/files/download/0/447_1/0/6EHZ1000B.PDF) aus dem o.g Link. Vielleicht findest du dort noch mehr Informationen. Wenn es um die Fehlermeldung geht, dann werde ich heute Abend noch was prüfen. Wie ich schon geschrieben habe, lese ich die Werte im Moment minütlich per conjob mit meinem eigenen Script. Das Skript war aber nicht abgeschaltet, als ich smartmeter getestet habe. Heute Abend werde ich alles abschalten und den smartmeter ausgiebig testen. Vielleicht gab es irgendwelche Seiteneffekte wenn beide Scripte liefen. Was du bis jetzt erreicht hast ist große Klasse. Ich hoffe, dass der Fahler aus dem optionalen OBIS Code resultiert, weil dieser bisher nicht implementiert wurde. Dann könnte man den Parser einfach um den Code erweitern. Aber was erzähle ich dir, du bist der Experte. Also nochmal vielen Dank für deine Arbeit. a200.
-
Was du bis jetzt erreicht hast ist große Klasse. Ich hoffe, dass der Fahler aus dem optionalen OBIS Code resultiert, weil dieser bisher nicht implementiert wurde. Dann könnte man den Parser einfach um den Code erweitern. Aber was erzähle ich dir, du bist der Experte. `
Danke.An den an sich optionalen Codes sollte es nicht liegen weil die korrekt ausgelesen werden. Faktisch würde es heissen das Sie zusätzlich zu eigenen OBIS-IDs 8wie gesagt die sind kein Stress) auch das SML-protokoll erweitert haben … kann ich irgendwie nicht glauben.
Siehst Du irgendwo die Firmware-Version des Zählers?! Dann könnte man bei Hager mal anfragen ...
Ingo F
-
Was du bis jetzt erreicht hast ist große Klasse. Ich hoffe, dass der Fahler aus dem optionalen OBIS Code resultiert, weil dieser bisher nicht implementiert wurde. Dann könnte man den Parser einfach um den Code erweitern. Aber was erzähle ich dir, du bist der Experte. `
Danke.An den an sich optionalen Codes sollte es nicht liegen weil die korrekt ausgelesen werden. Faktisch würde es heissen das Sie zusätzlich zu eigenen OBIS-IDs 8wie gesagt die sind kein Stress) auch das SML-protokoll erweitert haben … kann ich irgendwie nicht glauben.
Siehst Du irgendwo die Firmware-Version des Zählers?! Dann könnte man bei Hager mal anfragen ...
Ingo F ` Im Display nicht. Hab mir von meiner Frau ein Foto schicken lassen!
Laut der Doku wird die FW-Version beim Hochfahren angezeigt. Aber das kann ich schlecht machen… :roll:
1597_111.png
1597_112.png -
Ok, Danke. Kannst Du mir noch die Typenbezeichnung von dem Zähler mit dem 0x77 Problem senden? Falls Hager auf meine E-Mail antwortet kann ich das auch fragen
-
Ok, Danke. Kannst Du mir noch die Typenbezeichnung von dem Zähler mit dem 0x77 Problem senden? Falls Hager auf meine E-Mail antwortet kann ich das auch fragen `
Beide Fehler treten auf dem selben Zähler auf: EHZ363W5 -
Der 0x77-Fehler dann vorn?
-
Der 0x77-Fehler dann vorn? `
Nein. Vorne lief bei mir alles einwandfrei. als ich mit dem smartmeter die Schnittstelle hinten auslesen wollte, bekam ich die Fehler 0x3b und 0x77. Nachdem Fix von gestern Abend (neue SmlList.js) wurden erstmal die Werte die man im Screensot oben sieht eingelesen. Daraufhin folgte noch die 0x3c Fehlermeldung.Wie gesagt, heute Abend kann ich etwas intensiver testen.
-
2. Der Lesekopf ist ein HAGER EHZ001K https://www.hager.de/zaehlerplatzsystem … #Downloads Der rückseitig verbaut ist. Mit dem Udo-Kopf hatte ich auf der Vorderseite die standard OBIS Informationen ausgelesen. `
Hallo a200
Wie hast du denn die Schnittstelle an iobroker angeschlossen? Ich habe nämlich einen EMH Zähler und bei mir ist die Schnittstelle auch verbaut, würde die auch gern abgreifen, kannst du mir ein Tip geben
Vielen dank in voraus
Gruß
Adrian
-
Hallo a200
Wie hast du denn die Schnittstelle an iobroker angeschlossen? Ich habe nämlich einen EMH Zähler und bei mir ist die Schnittstelle auch verbaut, würde die auch gern abgreifen, kannst du mir ein Tip geben
Vielen dank in voraus
Gruß
Adrian `
1. entweder:RJ10 Kupplung: https://www.amazon.de/InLine-Modular-Ku … B001ACV1IW
Telefonkabel: https://www.amazon.de/Kab24-Modularkab … B01AKGNGOU
oder:
1. Kabel mit Buchse: https://www.amazon.de/Modular-Verlänger … B01F3D64EY
2. entweder:
Adapter RJ12 auf D-Sub 9(F): https://www.amazon.de/DB9-Stecker-RJ-12 … B00XVIPWYC
oder:
D-Sub 9 Stecker https://www.reichelt.de/SUB-D-Standardv … 9%2Bbuchse
3. Seriell auf USB Adapter: https://www.amazon.de/Manhattan-USB-Ser … B0007OWNYA
Belegung:
HAGER: 1=Gelb=Hilfsspannung, 2=Grün=GND, 3=Rot=RxD, 4=Schwarz=TxD
D-Sub9 (F): Von Vorne, nicht Lötseite!
5 grün (GND)4 gelb (DTR)
3 rot Rx
2 schwarz Tx
Natürlich geht es auch billiger, aber so hast du den kleinsten Aufwand. Je nachdem was du für Teile zu hause fliegen hast. Ich hatte alles da, musste aber noch etwas löten. Aus Erfahrung kann ich dir sagen, dass du u.U. auftretende Farbwechsel bei Kupplungen und anderen Verbindungen aufpassen musst. Am Besten aufmalen, Beschriften. Dann klappt. Meine RJ10-Kupplung war drinnen gekreuzt, was ich erst später gemerkt habe. Also musste ich mehrmals löten. Aber keine Angst die Schnittstelle ist sehr robust.
-
Irgendwas stimmt noch nicht ganz.
Ich habe zwei Zähler i.B. und daher zwei Instanzen von Smartmeter. Die Zuordung USB ist erfolgt und auch das Skript läuft zwei mal. Aber bei der WP müsste jetzt zumindest bei den Stundenwert was richtiges rauskommen aus dem Skript, läuft immerhin seit Gestern. Anbei noch die Bilder. Könnt ihr einen Fehler sehen?
-
Ach ich glaube im zweiten Skript habe ich ein paar zu viele 0en gegen 1en ersetzt.
Mal ne Stunde warten.
-
Hi, habe seit gestern meinen Zweiwege Zähler in der Überwachung. Also erstmal super wie unkompliziert das Ding funktioniert.
Allerdings habe ich ein Verständnisproblem. Bei mir sind beide T2 ohne Wert. Hier hatte ich erwartet das beim ersten T2 die aufgenommen Leistung und beim zweiten T2 die abgegebene Leistung angezeigt wird. Die Wirkleistung Total verstehe ich als Summe.
Ist das so richtig das beide T2 den Wert 0 haben??
Danke Gruß Zippolighter
-
Hi, habe seit gestern meinen Zweiwege Zähler in der Überwachung. Also erstmal super wie unkompliziert das Ding funktioniert.
Allerdings habe ich ein Verständnisproblem. Bei mir sind beide T2 ohne Wert. Hier hatte ich erwartet das beim ersten T2 die aufgenommen Leistung und beim zweiten T2 die abgegebene Leistung angezeigt wird. Die Wirkleistung Total verstehe ich als Summe.
Ist das so richtig das beide T2 den Wert 0 haben??
Screenshot_157.jpg
Danke Gruß Zippolighter `
Total Abgabe = Total Abgabe Tarif 1 (T1) + Total Abgabe Tarif 2 (T2)
Tatal Bezug = Total Bezug Tarif 1 (T1) + Total Bezug Tarif 2 (T2)
Wie die Meisten hast du Wahrscheinlich nur einen Tarif. Deshalb ist T2 in beiden Fällen 0 und Total = T1
-
T1 und T2 sind "Tarife". Es gibts Stromtarife wo man andere Konditionen in der Haupt- und Nebenzeit hat (z.B. wenn man Wärmespeichersysteme hat die z.B. nachts mit billigerem Strom aufgeladen/aufgewärmt werden und man tagsüber mehr bezahlt. Das ist das was hier unter "Tarif" gemeint ist.
-
Danke schonmal für die Antworten
Das heisst der Wert Momentanwert Gesamtwirkleistung (Total) wird berechnet aus Bezug und Abgabe??
Danke