NEWS
DMP8624 -> iobroker
-
@ralla66 ,
das Skript geht auch ohne MQTT eben getestet. -
@ralla66 ,
mir fäääällt noch was ein, tpow tvolt und tampere habe ich in das Skript eingefügt um das Teil von ioBroker zu bedienen.
Das Skript von Github hatte das nicht, das kannst du auch mal testen. -
Volt und Ampere ist Regelbar.
Ist da was beim toggeln Ein / Aus im Script falsch ?
Das könnte erklären warum die set und dsip Werte nicht erscheinen,
wenn Var Ein / Aus immer 0 bleibt -
@ralla66 ,
bei Power 0 bleiben nur die disp Werte auf 0, die set Werte ändern sich. -
weiter kann ich nicht helfen,
ohne zu sehen was die Var ( glaube SW ist Ein / Aus ) macht.
Mehr Debug geht halt nicht.
Nachtrag
Vom Android Handy selbe Spiel, nur bei Ein kommt :
17:52:18.066 MQT: stat/tasmota_3CECBB/RESULT = {"tpow":1}
Bei Aus sollte was kommen, entweder tpow 1 oder tpow 0
Ist aber nicht so -
@ralla66 ,
ich habe das AusgangsSkript getestet und da wird im Log nichts mehr angezeigt und das funktioniert auch.Das Skript kannst du noch testen, es schaltet nur aus und ein.
>D SW=0 rSW="01060002000" vSW="" >B ->sensor53 r >W bu(SW "DPM Ein" "DPM Aus") >T if ((chg[SW]>0) then vSW=rSW+s(SW) sml(1 3 vSW) endif >M 1 +1,3,m,16,9600,DC,1,2,010300020001 1,010302SSssxxxx@i0:1,Ausgang (set),,sSwitch,0 #
-
Ein und Aus geht damit
-
@ralla66 ,
hmm gut und wie machen wir weiter ?
Eins nach dem anderen hinzufügen ?>D SW=0 rSW="01060002000" vSW="" >B ->sensor53 r >W bu(SW "DPM Ein" "DPM Aus") >T if ((chg[SW]>0) then vSW=rSW+s(SW) sml(1 3 vSW) endif >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
was passiert hier :
if ((chg[SW]>0)
wenn der Zustand des Web Gui Switch wechselt und >0 ist ?
Also Switch Web Gui muß 1 sein ?Nachtrag 2 Script geht auch Es wird
-
@ralla66 ,
SW Groß geschrieben ist der Status des Buttons.>W bu(SW "DPM Ein" "DPM Aus")
-
ja ok das then wird ausgeführt bei 1 und wenn Switch 0 ist ?
-
@ralla66 ,
SW nimmt den Buttonstatus an undchg[SW] >0 heisst change[SW] wenn SW geändert wurde.
if ((chg[SW]>0) then vSW=rSW+s(SW) sml(1 3 vSW) endif
-
Script 2 schalten geht, Werte keine
19:10:26.697 MQT: tele/tasmota_3CECBB/SENSOR = {"Time":"2023-09-17T19:10:26","DC":{"sVolt":0.00,"sCur":0.00,"sSwitch":0,"dVolt":0.00,"vCur":0.00,"tCur":0.0}}
-
@ralla66 ,
da haben wir schon ein Problem. -
sollten ankommen
-
@ralla66 ,
ja du hast Recht.
Das hier funktioniert also nicht, ist aber nur die Anzeige die macht aber programmtechnisch nichts.>M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
dann was für später eben.
Ein / Aus und Vorgaben Volt und Ampere sollte min lauffähig sein.
Bin noch ne Stunde Online wenn du noch was testen möchtest.Erst einmal Danke für die Mühe, Top
Ralla
-
@ralla66 ,
das Einzige wäre nur die Anzeige testen.>D >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
keine Werte in der Web Gui.
den Status sw Switch vom DPM kann man weglassen, würde stumpf Ein / Aus senden
Nachtrag zum Feierabend :
habe and (sw!=SW) entfernt, Ein / Aus geht, Volt und Ampere geht. Yeep
( Dein Script von oben )
keine Werte in der Web Gui -
@ralla66 sagte in DMP8624 -> iobroker:
habe and (sw!=SW) entfernt, Ein / Aus geht, Volt und Ampere geht.
Super, dadurch konnte ich das Skript anpassen und die Verzögerung ist dadurch weg.
>D Vmax=60 Cmax=24 v=0 V=0 c=0 C=0 sw=0 SW=0 rV="01060000" vV="" rC="01060001" vC="" rSW="01060002000" vSW="" >BS +>subscribe V, cmnd/%topic%/tvolt +>subscribe C, cmnd/%topic%/tampere +>subscribe SW, cmnd/%topic%/tpow >B smlj=0 ->sensor53 r >R smlj=0 >S if upsecs>30 then smlj=1 endif sw=DC#sSwitch v=DC#sVolt c=DC#sCur if (chg[sw]>0) then SW=sw +>publish stat/%topic%/RESULT {"tpow":%0sw%} endif if ((chg[v]>0) and (V!=v)) then V=v +>publish stat/%topic%/RESULT {"tvolt":%2v%} endif if ((chg[c]>0) and (C!=c)) then C=c +>publish stat/%topic%/RESULT {"tampere":%2c%} endif if chg[V]>0 then if V>Vmax then V=Vmax endif if V<0 then V=0 endif vV=rV+sb(hx((V*100)) 4 4) +>publish stat/%topic%/RESULT {"tvolt":%2V%} sml(1 3 vV) endif if chg[C]>0 then if C>Cmax then C=Cmax endif if C<0 then C=0 endif vC=rC+sb(hx((C*1000)) 4 4) +>publish stat/%topic%/RESULT {"tampere":%2C%} sml(1 3 vC) endif if (chg[SW]>0) then vSW=rSW+s(SW) +>publish stat/%topic%/RESULT {"tpow":%0SW%} sml(1 3 vSW) endif >W bu(SW "DPM Ein" "DPM Aus") nm(0.0 60.0 0.01 V "DPM Ausgang (V)" 200 2) nm(0.0 24.0 0.01 C "DPM Ausgang (A)" 200 2) >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #