Der Lesekopf sitzt mit dem USB Stecker nach oben auf dem Zähler.
Ja. Dann lass jetzt einmal laufen. Bei mir kommen die Werte auch nur einmal die Stunde.
Der Lesekopf sitzt mit dem USB Stecker nach oben auf dem Zähler.
Ja. Dann lass jetzt einmal laufen. Bei mir kommen die Werte auch nur einmal die Stunde.
Versuch mal das:
>D
scnt=0
res=0
>B
=>sensor53 r
>F
;100ms iterations
scnt+=1
switch scnt
case 10
;300 baudrate
res=sml(1 0 300)
res=sml(1 1 "00000000000000000000000")
res=sml(1 1 "0000000000000000000000")
res=sml(1 1 "2F3F210D0A")
;\?!CRLF
;case 7
res=sml(1 0 2400)
case 6000
scnt=0
ends
>M 1
+1,3,o,16,2400,LGUH50,1
1,6.8(@1,Zählerstand,kWh,waermemenge,0
#
Alles anzeigen
Das ist die 11.1.0
Versuche mal die 12.3.1 nach der Anleitung ab Minute 8:
Die FW gibt es unter in den Kommentaren.
Alles anzeigenHallo, ich bin neu hier und habe mich jetzt mal durch die Anleitungen und Tip zum Wärmezähler von Landis&Gyr UH50 gearbeitet. Einen Hichi SchreibLese-Kopf mit Tasmota habe ich und erfolgreich ins Wlan eingebunden.
Nun benutze ich eines der angebenden Skripte um überhaupt erstmal zu sehen, ob ich Daten empfangen kann.
Auf der Tasmota Konsole bekomme ich aber u.a. 'var not found' angezeigt:
13:25:16.145 MQT: tele/tasmota_FA3251/STATE = {"Time":"2023-02-12T13:25:16","Uptime":"0T18:00:11","UptimeSec":64811,"Heap":20,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":4,"POWER":"ON","Wifi":{"AP":1,"SSId":"FritzLu","BSSId":"3C:A6:2F:56:5E:2E","Channel":1,"Mode":"11n","RSSI":100,"Signal":-46,"LinkCount":3,"Downtime":"0T00:00:07"}}
13:25:16.152 MQT: tele/tasmota_FA3251/SENSOR = {"Time":"2023-02-12T13:25:16","LGUH50":{"waermemenge":0}}
13:28:25.314 script compressed to 238 bytes = 68 %
13:28:25.317 Script: nv=2, tv=0, vns=9, vmem=47, smem=2560
13:28:25.319 Script: performs "sensor53 r"
13:28:25.328 SNS: Hardware Serial
13:28:25.333 MQT: stat/tasmota_FA3251/RESULT = {"Time":"2023-02-12T13:28:25","SML":{"CMD":"restart"}}
13:28:26.299 var not found: sml(1 0 300)
13:28:26.301 var not found: sml(1 1 "00000000000000000000000")
13:28:26.303 var not found: sml(1 1 "0000000000000000000000")
13:28:26.305 var not found: sml(1 1 "2F3F210D0A")
13:28:26.306 var not found: sml(1 0 2400)
13:29:31.184 script compressed to 463 bytes = 66 %
13:29:31.186 Script: nv=2, tv=0, vns=9, vmem=47, smem=2560
13:29:31.188 Script: performs "sensor53 r"
13:29:31.198 SNS: Hardware Serial
13:29:31.204 MQT: stat/tasmota_FA3251/RESULT = {"Time":"2023-02-12T13:29:31","SML":{"CMD":"restart"}}
13:29:32.757 var not found: sml(1 0 300)
13:29:32.759 var not found: sml(1 1 "0000000000000000000000000000000000000000")
13:29:32.761 var not found: sml(1 1 "0000000000000000000000000000000000000000")
13:29:32.762 var not found: sml(1 1 "2F3F210D0A")
13:29:32.764 var not found: sml(1 0 2400)
Wo könnte ich mit der Fehlersuche beginnen? Lt. den letzten Posts kann man den Zähler ja ansprechen.
Danke im voraus, Jens
Welche Tasmota Version? Die Variablen werden erst mit einer neueren Version unterstützt.
Genau und das steht dort nicht drin
Um sicher zu sein. So sieht mein Script aus:
>D
scnt=0
res=0
;Variablen zum Zwischenspeichern der Werte
v1=0
v2=0
v3=0
v4=0
v5=0
v6=0
v7=0
v8=0
v9=0
;Stundenvariable für Tageswert
hr=0
;persistenter Speicher des letzten Werts um 0 Uhr
p:sm1=0
p:sm2=0
;persistenter Speicher des letztens Tagesverbrauchs
p:sd1=0
p:sd2=0
>T
;Bei jeder Teleperiode werden die letzten Werte in die Temp Var geschrieben
v1=LGUH50#kwh_count
v2=LGUH50#kwh_count_year
v3=LGUH50#heizleistung_max
v4=LGUH50#m3_count
v5=LGUH50#m3_count_year
v6=LGUH50#unknown
v7=LGUH50#durchlauf_max
v8=LGUH50#lauf_max
v9=LGUH50#flow_count
>R
>B
=>sensor53 r
>F
; Fernwrämezähler läuft mit Batterie und wird daher nur stündlich abgefragt
; count 100ms
scnt+=1
switch scnt
case 600
;set sml driver to 300 baud and send /?! as HEX to trigger the Meter
res=sml(1 0 300)
print "Anfrage wird gesendet"
res=sml(1 1 "0000000000000000000000000000000000000000")
res=sml(1 1 "0000000000000000000000000000000000000000")
res=sml(1 1 "2F3F210D0A")
res=sml(1 0 2400)
case 3000
;Schicke Werte, falls sie nicht Null sind
if v1!=0
then
=>publish stat/Fernwaerme/RESULT {"kwh_count":%v1%}
endif
if v2!=0
then
=>publish stat/Fernwaerme/RESULT {"kwh_count_year":%v2%}
endif
if v3!=0
then
=>publish stat/Fernwaerme/RESULT {"heizleistung_max":%v3%}
endif
if v4!=0
then
=>publish stat/Fernwaerme/RESULT {"m3_count":%v4%}
endif
if v5!=0
then
=>publish stat/Fernwaerme/RESULT {"m3_count_year":%v5%}
endif
if v6!=0
then
=>publish stat/Fernwaerme/RESULT {"unknown":%v6%}
endif
if v7!=0
then
=>publish stat/Fernwaerme/RESULT {"durchlauf_max":%v7%}
endif
if v8!=0
then
=>publish stat/Fernwaerme/RESULT {"lauf_max":%v8%}
endif
if v8!=0
then
=>publish stat/Fernwaerme/RESULT {"flow_count":%v9%}
endif
if sd1!=0
then
=>publish stat/Fernwaerme/RESULT {"Tagesverbrauch_kWh":%sd1%}
endif
if sd2!=0
then
=>publish stat/Fernwaerme/RESULT {"Tagesverbrauch_m3":%sd2%}
endif
;Neue Runde alle 60 Minuten
case 36000
scnt=0
ends
>S
;Tagesverbrauch
hr=hours
if chg[hr]>0
and hr==1
and v2>0
then
sd1=v2-sm1
sd2=v5-sm2
sm1=v2
sm2=v5
svars
endif
>M 1
+1,3,o,16,2400,LGUH50,1
1,6.8(@1,Zählerstand,MWh,kwh_count,3
1,6.8*01(@1,Zählerstand_year,MWh,kwh_count_year,3
1,6.6(@1,maximale Heizleistung,kWh,heizleistung_max,1
1,6.26(@1,Durchlauf,m³,m3_count,2
1,6.26*01(@1,Durchlauf_year,m³,m3_count_year,2
1,9.24(@1,unknown,m³h,unknown,1
1,6.33(@1,maximaler Durchlauf,m³h,durchlauf_max,3
1,9.4(@1,maximale VR Temp,C,lauf_max,1
1,9.31(@1,Fließdauer,h,flow_count,0
#
Alles anzeigen
Und da steht eben der Wert nicht drin
Solllt so aussehen:
Sollte in der Objekt Liste so aussehen. Und hinten siehts du dann das JSON.
Wo finde ich das Objekt TELE oder das jason?
Wenn du an deinem MQTT Topic nix geändert hast, hier:
mqtt.1.tele.tasmota_XXXXX.SENSOR
Aber das ist doch alles sehr iobroker lastig und sollten wir "drüben" besprechen.
Die Zählerwerte stehen in einem JSON. Das musst du auswerten und in einem separaten Objekt speichern:
Hi,
hast Du deinen Ultraheat T550 zum laufen bekommen?
Könntest du mir evtl. dein laufendes script zukommen lassen?
Gruss
Mit dem Script von oben hab ich es jetzt auch geschafft:
Zwei Tips:
- Der Zähler muss mit USB Anschluss nach oben positioniert werden.
- Geduld. Da gibt es zwei Zeitschleifen. Ein zum Auslesen des Sensors (einmal pro Stunde) und einen für das Senden per MQTT.
Da hatte ich überhaupt keine Probleme mit und klappte schon im ersten Anlauf. Hast du auch den GPI auf 0 gezogen?
Ich hatte diese Anleitung genommen:
Hallo erstmal, ich bin der Neue hier
Zum Auslesen meines Landis+Gyr T550 habe ich mir einen Hichi IR Wifi besorgt.
Da ist ja schon Tasmota fix und fertig drauf und ich habe auch andere Tasmota Geräte hier und komme klar mit.
Ich habe jetzt hier mal alles zum Thema T550 gelesen und auch das Script von Zappdidappdi heir gefunden:
Wenn ich das Script in Tasmota ausführe bekomme ich Meldungen das einige Variablen nicht gefunden werden:
08:02:49.098 var not found: sml(1 0 300)
08:02:49.100 var not found: sml(1 1 "0000000000000000000000000000000000000000")
08:02:49.102 var not found: sml(1 1 "0000000000000000000000000000000000000000")
08:02:49.104 var not found: sml(1 1 "2F3F210D0A")
08:02:49.105 var not found: sml(1 0 2400)
Muss ich hier noch was an der Tasmota FW machen?
Danke und Gruß
Holger