Auf den Modbus DP habe ich dann entsprechend nachjustiert:
Versuche den gewünsten %Wert x100 einzugeben.
so wie bei meinem Screenshot 11% = 1100 dann sollte es funktionieren
Auf den Modbus DP habe ich dann entsprechend nachjustiert:
Versuche den gewünsten %Wert x100 einzugeben.
so wie bei meinem Screenshot 11% = 1100 dann sollte es funktionieren
Hatte auch das Problem mit dem alten Bild.
Ich habe die "Bild holen" Funktion kopiert und statt writeFile - delFile geschrieben und in Bild löschen umbenannt.
bevor das neue Bild geholt wird lasse ich das alte löschen.
seitdem funktioniert es einwandfrei.
@alyxabyss
Hallo
Ich stand vor dem selben Problem.
Ich löse es mit einer Liste in Blockly. In die Liste wird eine gewisse Anzahl von Werten des Feuchtigkeitssensors geschrieben. Dann vergleiche ich den kleinsten mit dem aktuellen Wert. Bei einer gewissen Differenz wird getriggert.
Hier das Blockly
Ich sende die Nachricht an zwei Benutzer. (ähnlich Telegramm da die Göttergattin ja nicht alle Meldunge braucht).
Schau zur Sicherheit noch im Web-Adapter nach und deaktiviere den Cache. (war bei mir auch ein Grund weshalb es nicht funktioniert hat.)
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="W7rU$,grIeN%1KO4vB%|">url</variable>
<variable id="u^a{RwAvq(*-0PK`(`@4">URL_Snapshot</variable>
<variable id="yW]q[i/Yfz.,5Z+Vb.a,">URL_ioBroker</variable>
<variable id="s`TAk}2fZk|p^o$4+d@t">result</variable>
</variables>
<block type="create" id="V@~u%:1g+=3-0?Brr}RL" x="95" y="-247">
<field name="NAME">0_userdata.0.Datenpunkte.chat.befehl</field>
<value name="COMMON">
<block type="text" id="8E6B#`YIJI=3V(!4hc,d">
<field name="TEXT">{ "name": "befehl", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }</field>
</block>
</value>
<next>
<block type="create" id="%|[RWPZ:8IXh38cvum:1">
<field name="NAME">0_userdata.0.Datenpunkte.chat.chat_bot</field>
<value name="COMMON">
<block type="text" id="-Hr_uhSo{vNY~CV,g{K!">
<field name="TEXT">{ "name": "chat_bot", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }</field>
</block>
</value>
<next>
<block type="update" id="6)Q/VTvxsl!)X(09sf,b">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.Datenpunkte.chat.chat_bot</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text" id="e7eF!wiY18;b,*_[Qsp_">
<field name="TEXT">http://XXXXXXXXXX:xxxx/webapi/entry.cgi?api=SYNO.Chat.External&method=chatbot&version=2&token=XXXXXXXXXXXXXXX&payload={"text":"</field>
</block>
</value>
<next>
<block type="create" id="U8qp0y6hlekgt7M9Io:z">
<field name="NAME">0_userdata.0.Datenpunkte.chat.file</field>
<value name="COMMON">
<block type="text" id="YO]%|LSlv%@Gh8vATUWF">
<field name="TEXT">{ "name": "file", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }</field>
</block>
</value>
<next>
<block type="update" id="L7O#MR-bdm|G~V%tB3WQ">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.Datenpunkte.chat.file</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text" id="]S?6]^DDFqe(KUjTU/IH">
<field name="TEXT">","file_url":"</field>
</block>
</value>
<next>
<block type="create" id="#zA-:.{V[S+R*9J}w1%S">
<field name="NAME">0_userdata.0.Datenpunkte.chat.petra</field>
<value name="COMMON">
<block type="text" id="Y+pL;1E8?74;y-e6,eJT">
<field name="TEXT">{ "name": "petra", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }</field>
</block>
</value>
<next>
<block type="update" id="lmG%=|.8TGJFS8-@TIEI">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.Datenpunkte.chat.petra</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text" id="`VY;$dA}jgS1relNi_/e">
<field name="TEXT">","user_ids": [XX]}</field>
</block>
</value>
<next>
<block type="create" id="#ca.9c[Hr!cvw~X9}Mpa">
<field name="NAME">0_userdata.0.Datenpunkte.chat.stefan</field>
<value name="COMMON">
<block type="text" id="w2i9!M{h[C|HVi4r|+P]">
<field name="TEXT">{ "name": "stefan", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }</field>
</block>
</value>
<next>
<block type="update" id="6=#9hCI.LDX.*/Xq18E;">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.Datenpunkte.chat.stefan</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text" id="t,oa2|qF:=@Bh?qIABDJ">
<field name="TEXT">","user_ids": [XX]}</field>
</block>
</value>
<next>
<block type="comment" id="1;xAzoL}:6w~0,J*XCF5">
<field name="COMMENT">Synology chat mit Bild</field>
<next>
<block type="on_ext" id="GLSol3Rrzx|U=4hEkqJ_">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="L@^X3Z`yr$~gDwh90WL|">
<field name="oid">0_userdata.0.example_state</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callcustomnoreturn" id="(@^+;C-VfwXiG;;,w6vL">
<mutation name="Bild_löschen"></mutation>
<next>
<block type="timeouts_wait" id=";l{TAX0O[5GEg;m+9b!c">
<field name="DELAY">100</field>
<field name="UNIT">ms</field>
<next>
<block type="variables_set" id="FIgc[8rrzBr`TtCt_Njh">
<field name="VAR" id="u^a{RwAvq(*-0PK`(`@4">URL_Snapshot</field>
<value name="VALUE">
<block type="get_value" id="=B9PHOU/pLx0?h+%lESx">
<field name="ATTR">val</field>
<field name="OID">alias.0.Kamera.LastEventData.snapshot_url</field>
</block>
</value>
<next>
<block type="procedures_callcustomnoreturn" id=")8.m*5:cjB,Z.vwL3m](">
<mutation name="Bild_holen"></mutation>
<next>
<block type="variables_set" id=".DnWEOW0Pg_URM34_`@~">
<field name="VAR" id="yW]q[i/Yfz.,5Z+Vb.a,">URL_ioBroker</field>
<value name="VALUE">
<block type="text" id="Akz];NA;oukZHmTP8mdv">
<field name="TEXT">http://192.168.178.11:8082/0_userdata.0/1/snapshot.jpg</field>
</block>
</value>
<next>
<block type="timeouts_wait" id="wwdO+pyI6o1#d@KPC,`q">
<field name="DELAY">1000</field>
<field name="UNIT">ms</field>
<next>
<block type="control" id="vBx`O8l$vkt]s/LC5Bie">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.Datenpunkte.chat.befehl</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text_join" id="dm+0e6{L(iPtuk8!Nv]+">
<mutation items="4"></mutation>
<value name="ADD0">
<block type="get_value" id="2Yr{e1dnlqQ5]V45Z~)^">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.chat_bot</field>
</block>
</value>
<value name="ADD1">
<block type="procedures_callcustomreturn" id="GD%^L~Wq_LIL_y86c}(2">
<mutation name="encodeURI">
<arg name="url"></arg>
</mutation>
<value name="ARG0">
<block type="get_value" id="IG0/rfj#`n5DUyGn0/t%">
<field name="ATTR">val</field>
<field name="OID">alias.0.Kamera.LastEventData.message</field>
</block>
</value>
</block>
</value>
<value name="ADD2">
<block type="get_value" id="+y?EgAqov#(5NiXe]?MN">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.file</field>
</block>
</value>
<value name="ADD3">
<block type="variables_get" id="~D+Wf%8Rgn9uu1}@s9Hz">
<field name="VAR" id="yW]q[i/Yfz.,5Z+Vb.a,">URL_ioBroker</field>
</block>
</value>
</block>
</value>
<next>
<block type="timeouts_wait" id="^I=uga?[C)og*JMdOS,5">
<field name="DELAY">1000</field>
<field name="UNIT">ms</field>
<next>
<block type="request" id="B%[X%~v2qRFjkxypUY:P">
<mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
<field name="WITH_STATEMENT">TRUE</field>
<field name="LOG"></field>
<value name="URL">
<shadow type="text">
<field name="TEXT">text</field>
</shadow>
<block type="text_join" id="-|^UFOC`)ZPh_oPnYb,p">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="get_value" id="qcrE$Ebr}jcFLExm6?(|">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.befehl</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="0He~_?/Rfx6ekJUtD?(S">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.stefan</field>
</block>
</value>
</block>
</value>
<statement name="STATEMENT">
<block type="debug" id="u`-Ee!RLS-Rv:bCxiXno">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="u$qY~V}Rv4[nuzF=;*Rg">
<field name="TEXT">test</field>
</shadow>
<block type="text_join" id="76U4^hP)]BXiT##v/;Qu">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="get_value" id="#C[O]Yzk7|mqx:FOAay=">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.befehl</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="TO[zVm@e28F0fHpIb)hW">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.stefan</field>
</block>
</value>
</block>
</value>
<next>
<block type="debug" id="-%qac?h-E8oS~{JuoYH9">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text">
<field name="TEXT">test</field>
</shadow>
<block type="variables_get" id="~O;0-B7q:{:NU7p`{tz.">
<field name="VAR" id="s`TAk}2fZk|p^o$4+d@t">result</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="timeouts_wait" id="4i]Sadf!zQL$%/Z}oq!E">
<field name="DELAY">3000</field>
<field name="UNIT">ms</field>
<next>
<block type="request" id="+k+P=.KGBi?V6iQRH-iA">
<mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
<field name="WITH_STATEMENT">TRUE</field>
<field name="LOG"></field>
<value name="URL">
<shadow type="text" id="m)x.{SQWCkI.L=:DAN[r">
<field name="TEXT">text</field>
</shadow>
<block type="text_join" id="8dgf/ad|.~!{?oTtS*o}">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="get_value" id="Xkux@UtO1by%Cw_$ukq$">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.befehl</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="dE*^Lj,L-M*YnEnCv.%c">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.petra</field>
</block>
</value>
</block>
</value>
<statement name="STATEMENT">
<block type="debug" id="%l+BOE5*Nb0,A_mv}Pi-">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="I7CCfzV5rIy6-}4s[uQ.">
<field name="TEXT">test</field>
</shadow>
<block type="text_join" id="#L_T`5E1GQ#8#oBOHJ(S">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="get_value" id="ke@t{qSa%j}q@#G,?O|}">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.befehl</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="6z+it!h{_.r?aBX}X0]e">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.Datenpunkte.chat.petra</field>
</block>
</value>
</block>
</value>
<next>
<block type="debug" id="cQtI!dDJRde$RnimpSnk">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text">
<field name="TEXT">test</field>
</shadow>
<block type="variables_get" id="?Y2j)i/BO~[U{aG@Fs;`">
<field name="VAR" id="s`TAk}2fZk|p^o$4+d@t">result</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="timeouts_wait" id="wq/F/r4;k/K,ixq@WL;Y">
<field name="DELAY">30</field>
<field name="UNIT">sec</field>
<next>
<block type="procedures_callcustomnoreturn" id="qyUa(45n!yuHmuz:Lej{">
<mutation name="Bild_löschen"></mutation>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
<block type="procedures_defcustomnoreturn" id="Fh|~ouZqovH}}ZEi:0P{" x="1012" y="163">
<mutation statements="false"></mutation>
<field name="NAME">Bild_holen</field>
<field name="SCRIPT">DQoNCg0KcmVxdWVzdCgNCg0KICB7DQoNCiAgICB1cmw6IFVSTF9TbmFwc2hvdCAsDQoNCiAgICBlbmNvZGluZzogbnVsbCwNCg0KICB9LA0KDQogIChlcnJvciwgcmVzcG9uc2UsIGJvZHkpID0+IHsNCg0KICAgIGlmICghZXJyb3IgJiYgYm9keSkgew0KDQogICAgICB3cml0ZUZpbGUoIjBfdXNlcmRhdGEuMCIsICIvMS9zbmFwc2hvdC5qcGciLGJvZHkgKTsNCg0KICAgIH0NCg0KICB9DQoNCik7DQo=</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="procedures_defcustomreturn" id="B`%(UJ@(5HI^#[)t`k$:" x="1013" y="188">
<mutation statements="false">
<arg name="url" varid="W7rU$,grIeN%1KO4vB%|"></arg>
</mutation>
<field name="NAME">encodeURI</field>
<field name="SCRIPT">dXJsID0gZW5jb2RlVVJJQ29tcG9uZW50KHVybCk7DQpyZXR1cm4gdXJsOw==</field>
<comment pinned="false" h="80" w="160">encode URL function</comment>
</block>
<block type="procedures_defcustomnoreturn" id="Frub~%,eU2~ya#!niSf0" x="1012" y="213">
<mutation statements="false"></mutation>
<field name="NAME">Bild_löschen</field>
<field name="SCRIPT">DQoNCg0KcmVxdWVzdCgNCg0KICB7DQoNCiAgICB1cmw6IFVSTF9TbmFwc2hvdCAsDQoNCiAgICBlbmNvZGluZzogbnVsbCwNCg0KICB9LA0KDQogIChlcnJvciwgcmVzcG9uc2UsIGJvZHkpID0+IHsNCg0KICAgIGlmICghZXJyb3IgJiYgYm9keSkgew0KDQogICAgICBkZWxGaWxlKCIwX3VzZXJkYXRhLjAiLCAiLzEvc25hcHNob3QuanBnIixib2R5KTsNCg0KICAgIH0NCg0KICB9DQoNCik7DQo=</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
</xml>
@grombiegel sagte in Variable für shelly nutzen:
Jetzt war mein Shelly kaputt, musste ersetzt werden und ich musste im Script bei allen "steuere" das Objekt wieder neu setzen.
ich benutze für alle Datenpunkte die in einer VIS oder für Blockly´s benutzt werden einen Alias. Dann musst du nur den Alias neu setzen und es funktioniert wieder.
@asgothian sagte in Tester Zigbee Adapter 3.x gesucht:
@mickemup Versuch mal bitte die andere Variante - mit dem Cluster und Attribute via read im send_payload. Es ist denkbar das die SendToZigbee Funktion buggy ist in der 2.x/3.x.
A.
mit diesem Payload funktioniert es
{ "read": { "cluster": "genPowerCfg", "attributes": ["batteryPercentageRemaining"] }}
Danke für die rege Diskussion und die ganzen Tipps da lerne ich jeden Tag dazu
es fehlt der native part
so sollte es funktionieren
{
"common": {
"name": "Test",
"desc": "Manuell erzeugt",
"role": "state",
"type": "boolean",
"read": true,
"write": true,
"def": false,
"custom": {
"iot.0": {
"smartName": {
"de": "Test"
}
}
}
},
"native":{},
"type": "state",
"_id": "0_userdata.0.Devices.Testgeraet.Test",
"acl": {
"object": 1636,
"state": 1636,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator"
},
"from": "system.adapter.admin.0",
"user": "system.user.admin",
"ts": 1641086865932
}
@brokeling
Bei mir war der automatische Neustart der Kamera schuld. Seitdem ich den Neustart deaktiviert habe läuft es ohne Probleme
Das geht auch nicht.
Es gibt dazu einen Issue auf Github.
In der neuen Beta besteht jetzt die Möglichkeit über einen Reverse proxy zuzugreifen inkl. Vergabe von Zugangsdaten.
Oder über VPN.
@asgothian sagte in Tester Zigbee Adapter 3.x gesucht:
@mickemup Versuch mal bitte die andere Variante - mit dem Cluster und Attribute via read im send_payload. Es ist denkbar das die SendToZigbee Funktion buggy ist in der 2.x/3.x.
A.
mit diesem Payload funktioniert es
{ "read": { "cluster": "genPowerCfg", "attributes": ["batteryPercentageRemaining"] }}
Danke für die rege Diskussion und die ganzen Tipps da lerne ich jeden Tag dazu
@Asgothian
Bin jetzt seit ein paar Tagen auf 3.0 und es läuft ohne Probleme.
gefühlt stabiler als die Vorgänger.
Vielen Dank für deinen Einsatz
@alex4 sagte in Test Adapter Fronius 2.0.x:
@nkleber Das Problem ist, dass ich zb. mit einer gewissen Leistung entladen will und wenn man von der Batterie eine Zwangsladung veranlasst, macht das der Gen24 mit 500Watt. Ich muss hier die Leistung mitgeben können. Das hätte ich beim Modbus nicht gefunden bis dato.
Hier wurde das Thema behandelt
https://forum.iobroker.net/topic/77932/geklärt-mit-modbus-fronius-akku-aus-dem-netz-beladen
Ich löse das über einen Kalender den ich via ical-Adapter auslese. Nur an Tagen mit Eintrag Weihnachtsbeleuchtung wird ausgelöst
@bjoern77 sagte in Modbus & Fronius GEN24:
Aber ich Versuche den minSOC über Modbus zu ändern.
Laut den Fronius Webinaren sollten die SOC-Grenzen immer im "Auto"-Modus sein und kann auch glaube ich nicht über Modbus verstellt werden.
Wenn ich 40350 auslese, bekomme ich 11%, in dem UI habe ich aber 10% eingestellt.
Der Register 40350 ist der Reserve-SOC und nicht der minSOC
Das stimmt bei mir auch nicht
Da kann ich auch nicht weiterhelfen.
Wie gesagt ich nutze INT&SF und bei mir sind die Werte indent.
Solarweb:
Modbus:
ergibt zusammen
Du schreibst einmal FLOAT und dann INT&SF
Das wird nicht zusammenpassen.
Gesamtleistung INT&SF
modbus.0.holdingRegisters.1.40186_ActWh -> Lifetime AC Leistung
modbus.0.holdingRegisters.1.40275_module/1/DCWH -> Lifetime DC MPPT1
modbus.0.holdingRegisters.1.40295_module/2/DCWH -> Lifetime DC MPPT1
Wenn den angezeigten Wert der APP haben möchtest musst du diese beiden Werte zusammenzählen
Batterieladung Gesamt:
Entladung Gesamt
Ich speichere die Werte in eine SQL Datenbank und ermittle über eine Abfrage die Tageswerte.