NEWS
SONOFF NSPanel mit Lovelace UI
-
@tt-tom Danke! Ich habe es versucht aus der Vorlage zu bauen aber wie im Wiki steht kommen viele Neulinge mit den Alaisen nicht zurecht. Jetzt klappt es. Im Script wurde auf "alias.0.NSPanel_1.wlan_guest.ACTUAL" verwiesen. Nachdem ich das ACTUAL gelöscht habe gehts.
Peinliche Frage zu Aliasen: Muss ich die immer über das Menü Geräte anlegen oder geht das auch direkt in den Objekten?
Gibt es die Möglichkeit nach Ablauf des Timers einen Ton zu spielen? Ich meine irgendwo gehört zu haben dass das NSPanel einen Pieper besitzt.
Beim Timer steht auf "CANCLE" statt "CANCEL"
Danke, Roland
-
Vielen Dank für deine Antwort . Welches Gehäuse hast du oder hast du selber eins entworfen? Muss das Panel wohl hängen oder stellen.
Das Gehäuse hat mir ein Kumpel gedruckt. Die Ecken sind verstärkt um die Metallplatte fest zu schrauben.

-
@tt-tom Danke! Ich habe es versucht aus der Vorlage zu bauen aber wie im Wiki steht kommen viele Neulinge mit den Alaisen nicht zurecht. Jetzt klappt es. Im Script wurde auf "alias.0.NSPanel_1.wlan_guest.ACTUAL" verwiesen. Nachdem ich das ACTUAL gelöscht habe gehts.
Peinliche Frage zu Aliasen: Muss ich die immer über das Menü Geräte anlegen oder geht das auch direkt in den Objekten?
Gibt es die Möglichkeit nach Ablauf des Timers einen Ton zu spielen? Ich meine irgendwo gehört zu haben dass das NSPanel einen Pieper besitzt.
Beim Timer steht auf "CANCLE" statt "CANCEL"
Danke, Roland
@procrastinator sagte in SONOFF NSPanel mit Lovelace UI:
Beim Timer steht auf "CANCLE" statt "CANCEL"
Stimmt. Bezeichner wird geändert.
Zugehörige Action ist in der HMI (Nextion) ist aber ebenfalls falsch. Daher bleibt das HMI-Event vorerst so wie es ist, aber der Anzeigename ändert sich mit dem nächsten Fix.
Sollte dich das vorher zu sehr stören, kannst du im Script auch folgende Änderung bis dahin selbst vornehmen:
Suchen:
label2 = 'CANCLE';Ersetzten:
label2 = 'CANCEL';Werde die Bezeichner aber noch ins Locales-File mit aufnehmen...
-
@procrastinator sagte in SONOFF NSPanel mit Lovelace UI:
Beim Timer steht auf "CANCLE" statt "CANCEL"
Stimmt. Bezeichner wird geändert.
Zugehörige Action ist in der HMI (Nextion) ist aber ebenfalls falsch. Daher bleibt das HMI-Event vorerst so wie es ist, aber der Anzeigename ändert sich mit dem nächsten Fix.
Sollte dich das vorher zu sehr stören, kannst du im Script auch folgende Änderung bis dahin selbst vornehmen:
Suchen:
label2 = 'CANCLE';Ersetzten:
label2 = 'CANCEL';Werde die Bezeichner aber noch ins Locales-File mit aufnehmen...
@armilar @TT-Tom Danke für die schnelle Hilfe.
Hab die Bezeichnung des Feldes schon geändert, dazu reicht es bei meinen Fähigkeiten noch.
Die Dann bleibe ich beim Geräte Adapter. Hab leider die 1.1.2 drauf. In den Anleitungen steht nur oft, dass man unter alias einen Datenpunkt setzten soll, daher war ich von den beiden Namen Alias <-> Geräte verwirrt.Den Buzzer werde ich mal versuchen ob der hörbar ist. Dann muss ich noch eine Lösung für das Sonos finden, das funktioniert mit ioBroker auch ohne NSPanel nicht so toll. Hab es auch mit dem Script hier im Forum nie richtig zum laufen gebracht.
Vielleicht schaffe ich es ja, das Ende des Timers über Sonos zu vermitteln. -
@armilar @TT-Tom Danke für die schnelle Hilfe.
Hab die Bezeichnung des Feldes schon geändert, dazu reicht es bei meinen Fähigkeiten noch.
Die Dann bleibe ich beim Geräte Adapter. Hab leider die 1.1.2 drauf. In den Anleitungen steht nur oft, dass man unter alias einen Datenpunkt setzten soll, daher war ich von den beiden Namen Alias <-> Geräte verwirrt.Den Buzzer werde ich mal versuchen ob der hörbar ist. Dann muss ich noch eine Lösung für das Sonos finden, das funktioniert mit ioBroker auch ohne NSPanel nicht so toll. Hab es auch mit dem Script hier im Forum nie richtig zum laufen gebracht.
Vielleicht schaffe ich es ja, das Ende des Timers über Sonos zu vermitteln.@procrastinator sagte in SONOFF NSPanel mit Lovelace UI:
Dann bleibe ich beim Geräte Adapter. Hab leider die 1.1.2 drauf.
du kannst im Expertenmodus wieder zurück auf Version 1.1.1, dazu musst du aus des letzte Symbol (+) klicken und die Version auswählen.

-
@xblades sagte in SONOFF NSPanel mit Lovelace UI:
Frage : kann man Datenpunkte verschachteln bzw. wie?
Bekomme im Trashschedule unter trashschedule.0.next.types nur den Typ, z.b. Wertstofftonne. Die Farbe wäre dann zu finden unter trashschedule.0.type.wertstofftonne.colorwenn du den Abfallkalender nach dem Wiki nachbauen willst, wirst du mit dem Color Probleme bekommen. Der Trash bringt den Color in HEX und das Script benötigt es aber als rgb_dec565. Zusätzlich wird der aktuelle nicht oben stehen auf der Page.
du kannst auch mein Script nutzen, es holt sich die Daten aus dem ical und ist mit dem Wiki konform
@tt-tom said in SONOFF NSPanel mit Lovelace UI:
@xblades sagte in SONOFF NSPanel mit Lovelace UI:
Frage : kann man Datenpunkte verschachteln bzw. wie?
Bekomme im Trashschedule unter trashschedule.0.next.types nur den Typ, z.b. Wertstofftonne. Die Farbe wäre dann zu finden unter trashschedule.0.type.wertstofftonne.colorwenn du den Abfallkalender nach dem Wiki nachbauen willst, wirst du mit dem Color Probleme bekommen. Der Trash bringt den Color in HEX und das Script benötigt es aber als rgb_dec565. Zusätzlich wird der aktuelle nicht oben stehen auf der Page.
Alternativ könnte man auch einfach das JSON aus Trashschedule verwenden/auswerten, da stehen eigentlich alle Daten drin. Ok, die Farben passen dann noch nicht, aber die kann man ja konvertieren :stuck_out_tongue_winking_eye: Ich mache das hier mit diesem kleinen Script:
-
@tt-tom said in SONOFF NSPanel mit Lovelace UI:
@xblades sagte in SONOFF NSPanel mit Lovelace UI:
Frage : kann man Datenpunkte verschachteln bzw. wie?
Bekomme im Trashschedule unter trashschedule.0.next.types nur den Typ, z.b. Wertstofftonne. Die Farbe wäre dann zu finden unter trashschedule.0.type.wertstofftonne.colorwenn du den Abfallkalender nach dem Wiki nachbauen willst, wirst du mit dem Color Probleme bekommen. Der Trash bringt den Color in HEX und das Script benötigt es aber als rgb_dec565. Zusätzlich wird der aktuelle nicht oben stehen auf der Page.
Alternativ könnte man auch einfach das JSON aus Trashschedule verwenden/auswerten, da stehen eigentlich alle Daten drin. Ok, die Farben passen dann noch nicht, aber die kann man ja konvertieren :stuck_out_tongue_winking_eye: Ich mache das hier mit diesem kleinen Script:
-
@l4rs
Wie heißt es so schön: Viele Wege führen nach Rom. Und einige fahren gerne über Berlin. 😉😎Hallo,
mir ist aufgefallen das einige Icons nicht funktionieren.
https://htmlpreview.github.io/?https://github.com/jobr99/Generate-HASP-Fonts/blob/master/cheatsheet.htmlz.B. car-brake-low-pressure (wollte eine Symbol für Luftdruck)
Hat das Probleme sonst noch jemand?
-
@procrastinator sagte in SONOFF NSPanel mit Lovelace UI:
Dann bleibe ich beim Geräte Adapter. Hab leider die 1.1.2 drauf.
du kannst im Expertenmodus wieder zurück auf Version 1.1.1, dazu musst du aus des letzte Symbol (+) klicken und die Version auswählen.

@tt-tom Wieder was gelernt, danke!
Wenn ich das Skript starte bekomme ich immer einen Fehler. Ist nehme ich an nicht schlimm es geht nur um die Tasmota Version, aber ich kann ja noch ein wenig dazu lernen :)10:54:30.293 warn javascript.0 (3809) script.js.NSPanel.Panel1: error setState in function get_tasmota_status0Cannot read properties of undefined (reading 'Version') -
Hallo,
mir ist aufgefallen das einige Icons nicht funktionieren.
https://htmlpreview.github.io/?https://github.com/jobr99/Generate-HASP-Fonts/blob/master/cheatsheet.htmlz.B. car-brake-low-pressure (wollte eine Symbol für Luftdruck)
Hat das Probleme sonst noch jemand?
-
@tt-tom Was meinst du mit RAW Modus?
-
@tt-tom Wieder was gelernt, danke!
Wenn ich das Skript starte bekomme ich immer einen Fehler. Ist nehme ich an nicht schlimm es geht nur um die Tasmota Version, aber ich kann ja noch ein wenig dazu lernen :)10:54:30.293 warn javascript.0 (3809) script.js.NSPanel.Panel1: error setState in function get_tasmota_status0Cannot read properties of undefined (reading 'Version')Kannst du bitte mal unter mqtt.0.SmartHome.NSPanelxxxx.stat.STATUS0 schauen was in deinem JSON drinsteht.
Bei mir sieht der Teil mit der Version so aus
"StatusFWR": { "Version": "12.5.0(tasmota32)", "BuildDateTime": "2023.04.17 08:12:37", "Core": "2_0_7", "SDK": "4.4.4.20230310", "CpuFrequency": 160, "Hardware": "ESP32-D0WD-V3 rev.3", "CR": "455/699" }, -
@tt-tom Sorry das es etwas gedauert hat aber hier noch das Blockly, wie ich den Alarm Adapter mit der AlarmPage verbunden habe.
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="P7QE+GF6h)E2g%:#y$/Y">LichtEGStatusAlt</variable> <variable id="UcL-MS2|s1+aEP7O*`A:">LichtOGStatusAlt</variable> </variables> <block type="on_ext" id="|8X[PbbvSU!7I^5{*^a=" x="88" y="63"> <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="`)3Y`~St5DH5v?F+]9M3"> <field name="oid">0_userdata.0.NSPanel.Alarm.Aktivierungen.VollschutzAn</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="7[^|QcTy/@.{2s(OG$Fb"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="=.KD7qSe4~]TtSI!xiI."> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="CPg[7^D?vcw{xepZZ}EX"> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="T[[`hbH(-}+MXWi9KnYp"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="logic_boolean" id="x)l][_Kt,BrAEFLDdC@u"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="a-[@@{!jc/q29XT$V#^o"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="o7.X|H!0~iKqFeQp5a*H"> <field name="ATTR">val</field> <field name="OID">alarm.0.status.enableable</field> </block> </value> <value name="B"> <block type="logic_boolean" id="@2dbs*qhF=tzkW^1}r+*"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="ZHQRocGj=Q*cJItr_[,a"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.AlarmPin</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="!M0tIs|-E.^-Vq8F@?|0"> <field name="NUM">1234</field> </block> </value> <next> <block type="control" id="[W{gk$~R,i,/YN:v#}]9"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.AlarmState</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="oX_:B54QYu5Vhdf[vg*("> <field name="TEXT">armed</field> </block> </value> <next> <block type="control" id="p@-g_|Ai2)pFRlmW!?!."> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.AlarmType</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="NXo+M(9d}#{0}{1d}rDg"> <field name="TEXT">A1</field> </block> </value> <next> <block type="control" id="tsT$MuFe0)Sc#oLXC5Fm"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alarm.0.status.activated</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="!R0?Sfg.nqx%}`G]hHVJ"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="`V)hoN1w2b=nkKl`oddW"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyHeading</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="wnXujXR/B-fTx9*ESBPK"> <field name="TEXT">Alarmanlage</field> </block> </value> <next> <block type="control" id="P+~noX9+8Xc~~.UP$Lwu"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.1.ScreensaverInfo.popupNotifyText</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="GBTKSe+%xY9n]r[El0f$"> <field name="TEXT">Vollschutz aktiv</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="TPzsIanmsL4v[Cq=IRQ@"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="l9$l`DT]e5;:SvPO@]+["> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="E9Z0MOKXn=]f24RS7F77"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="logic_boolean" id="1mGoL-)gl|wF]4ojsWCS"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="=^_Se%Hun-5UjTB9aX,b"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="*TwUAn4%?h=|l?g$GcHR"> <field name="ATTR">val</field> <field name="OID">alarm.0.status.enableable</field> </block> </value> <value name="B"> <block type="logic_boolean" id="t~pMo=u0XsA^I([8xy8Z"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="`AR;2[%g4!:!@fSU[Nk8"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.Aktivierungen.VollschutzAn</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Qd[b2-|vE)wCJwkcW:x/"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> </block> <block type="on_ext" id="878R%*,J0DoZ$`CTH2~G" x="88" y="563"> <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="vY]]X7=yW5ud-7)@.[cX"> <field name="oid">0_userdata.0.NSPanel.Alarm.AlarmState</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="Dn3uq*-U3bF|r|lRF=O2"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id=":gh%YH,Er.:u%^k/A5M^"> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id=",vVGqd18%^nS?@Lv*@iO"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="text" id="@jB:FzUnE.mM*{xtFGFs"> <field name="TEXT">disarmed</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="GKiESAyt$/0)d;GBBzTG"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alarm.0.use.disable</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="bo{lnh?p0H#UgmEi+^O("> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="l[o~|nrZ50ecR#m70T(m"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">alarm.0.use.disable</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="lY5y;c!arQEj}{/5;Jt7"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="/DuX0s07rDjJG_)GH#Qa"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.Aktivierungen.VollschutzAn</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Y.!%z)Aoj;8hq;]7y^#]"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="PAKXc91S8U.I-a%xop9L"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.TreppeFlur.DeckeEG.ON</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="0`x4B6[Rj_Tn*_CF$)Vz"> <field name="VAR" id="P7QE+GF6h)E2g%:#y$/Y">LichtEGStatusAlt</field> </block> </value> <next> <block type="control" id="e~EA|q9|2[iW8nsp.O:C"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.TreppeFlur.DeckeOG.ON_SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="))H2`fEybXNbjU3df]!j"> <field name="VAR" id="UcL-MS2|s1+aEP7O*`A:">LichtOGStatusAlt</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="6w!6(LoO[?}oY*U#Gl~K"> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="h.e)e34pQyCsHTmWie:?"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="text" id="YlgD^C`@F@9!K-CTWb^3"> <field name="TEXT">arming</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="7II/mr[uv-iwLiantF?J"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.Aktivierungen.VollschutzAn</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="lurrJr!WWoTy6(qJ{uSE"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </statement> </block> <block type="on_ext" id="GigMf:F8epyVG;Dwj+@C" x="863" y="538"> <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="PdQZ.w~i9RiZ^o#yRh43"> <field name="oid">alarm.0.status.burglar_alarm</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="XijA|xcfM?eTr!T~%puY"> <value name="IF0"> <block type="logic_compare" id="1Y)4rnLtqEUM0$cnP^d."> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="kfH9w6vy}dZp?hY//MRw"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="logic_boolean" id="wnM,DSd8Y*ZOzFX~/6e)"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="8c-h%.Im$e^`5Tb)HE}*"> <field name="VAR" id="P7QE+GF6h)E2g%:#y$/Y">LichtEGStatusAlt</field> <value name="VALUE"> <block type="get_value" id="b}hOF7NXr^3gH=Ozq^D="> <field name="ATTR">val</field> <field name="OID">alias.0.TreppeFlur.DeckeEG.ON</field> </block> </value> <next> <block type="variables_set" id="Q[shuU$MzOS2N-+/%g#R"> <field name="VAR" id="UcL-MS2|s1+aEP7O*`A:">LichtOGStatusAlt</field> <value name="VALUE"> <block type="get_value" id="]~yhhkD0E.^c7_kTIwJ;"> <field name="ATTR">val</field> <field name="OID">alias.0.TreppeFlur.DeckeOG.ON_SET</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> <block type="on_ext" id="Mj%;$r_Va+fuu23DU%zO" x="863" y="788"> <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="WTlwg+c]eF{}UUUNCLw~"> <field name="oid">alarm.0.status.sleep</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="Uz5pl3/qX5MFoxJ!b2-{"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="Q_^C5_tNat6gj.:=e(ga"> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id=",8ut)Jl78*^_B_gKRP^O"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="logic_boolean" id=";ALn4,6|YLJ)Y%~:UQ^C"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="yxR{V$lEKXa@0|[DUy88"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.Aktivierungen.VollschutzAn</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="G(c~)uuXbDDh/t0zg#3V"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> <value name="IF1"> <block type="logic_compare" id="%W$wM#=_v5Ce~l:Xu:FV"> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="fC1}q6!ZR;xELf{2=p$M"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="logic_boolean" id="=1xlUlZ,T:}h|zv8#^GQ"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="e#6S8g*`Kr(:)7iG:xMA"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.Aktivierungen.VollschutzAn</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="1-v-X([W0xGAqO#+1%;w"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="(vV*wIqmAE}M;8AJoO6s"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alarm.0.use.disable</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="]Wf{Ua.|#,S4U0ktYX72"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="*;;l^`=_PIe{)JJt`x`."> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">alarm.0.use.disable</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="`SZ{/m5h$PhZ7E-t%C,}"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="iRX$?5x=agp2yQQJO,B+"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.AlarmPin</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="XtR/6+Jiz$*6^w3Y(vM#"> <field name="TEXT">1234</field> </block> </value> <next> <block type="control" id="yE]mw5BVbcwuJV@DY2%/"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.AlarmState</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="xjC{pV2??Mdu4ExLgb2X"> <field name="TEXT">disarmed</field> </block> </value> <next> <block type="control" id="DAYNMXSt!]Br=~m.xa-i"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.NSPanel.Alarm.AlarmType</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="~t:e?*BP{*SquN714-a$"> <field name="TEXT">D1</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </xml>Kurze Erklärung noch dazu:
-Es wird ein Datenpunkt als Boolean benötigt, in dem Blockly "VollschutzAN".
-Ich nutze einen festen Pin (im Blockly 1234) kann entweder ein fester Pin sein oder durch einen Datenpunkt ersetzt werden.
-zur Aktivierung am Panel, egal welcher Pin bei der Aktivierung eingegeben wird, der Pin im Blockly ist der der den Alarm deaktiviert!!!
-Es wird alles im Alarm Adapter festgelegt, also was Überwacht wird, was bei welchem Alarm gesteuert wird usw.
-Es ist alles noch in der "Testphase" bei mir läuft es zur Zeit so: Ich habe die AlarmPage auf dem Panel neben meiner Haustür aktiv, per Button am Panel wird die Alarmanlage scharf geschaltet, ich überwache alle Türkontakte sowie Bewegungsmelder im Alarmadapter. Wichtig beim scharfschalten die Tür muss offen sein und im Alarmadapter der Haken gesetzt sein "Konfigurierte Zustände bei der Aktivierung ignorieren" da sonst schon beim verlassen der Alarm ausgelöst wird. Wird der Alarm ausgelöst öffnet sich am Panel automatisch die AlarmPage und mit der StandartPin lässt sich der Alarm deaktivieren. Sollte dies nicht innerhalb von der Im Alarmadapter festgelegten Zeit passieren blicken erst die Lampen die im Blockly stehen. Was danach passiert kann ja jeder selbst entscheiden und im AlarmAdapter festlegen, z.B Rauchmelder aktivieren Alexa etwas sagen lassen eine Telegram Nachricht verschicken, usw.Hoffe das war nicht zu ausführlich.
Das Blockly darf gern verwendet und im besten Fall verbessert werden! :)
ich habe dein Blockly mal importiert. zwei Hinwiese dazu. Wenn du ein Datenpunkt auf wahr/true prüfst reicht diese Schreibweise. Den Pin übergibst du hier als Zahl, der Datenpunkt ist aber ein String, dann sollte sie auch als String übergeben werden.

ich werde den Post im Wiki verlinken, mit einem kleinen Hinweis zum Alarm-Adapter.
-
Kannst du bitte mal unter mqtt.0.SmartHome.NSPanelxxxx.stat.STATUS0 schauen was in deinem JSON drinsteht.
Bei mir sieht der Teil mit der Version so aus
"StatusFWR": { "Version": "12.5.0(tasmota32)", "BuildDateTime": "2023.04.17 08:12:37", "Core": "2_0_7", "SDK": "4.4.4.20230310", "CpuFrequency": 160, "Hardware": "ESP32-D0WD-V3 rev.3", "CR": "455/699" },"StatusFWR": { "Version": "12.5.0(nspanel)", "BuildDateTime": "2023-04-17T08:07:02", "Core": "2_0_7", "SDK": "4.4.4.20230218", "CpuFrequency": 160, "Hardware": "ESP32-D0WD-V3 rev.3", "CR": "445/699" -
"StatusFWR": { "Version": "12.5.0(nspanel)", "BuildDateTime": "2023-04-17T08:07:02", "Core": "2_0_7", "SDK": "4.4.4.20230218", "CpuFrequency": 160, "Hardware": "ESP32-D0WD-V3 rev.3", "CR": "445/699"@procrastinator
kommen da noch mehr Meldungen, oder ist es die einzige? Was steht den bei dir im Datenpunkt 0_userdata.0.NSPanelxxxxx.Tasmota_Firmware.currentVersion bzw. in dem .....Tasmota.Version -
@tt-tom Das ist die einzige beim starten.
Bei Tasmota_Firmware steht currentVersion: 12.5.0
Im Ordner Tasmota steht Version: 12.5.0(nspanel) -
@tt-tom Das ist die einzige beim starten.
Bei Tasmota_Firmware steht currentVersion: 12.5.0
Im Ordner Tasmota steht Version: 12.5.0(nspanel)@procrastinator lösch bitte mal die beiden Werte raus und starte neu. Welcher bleibt leer?
-
@procrastinator lösch bitte mal die beiden Werte raus und starte neu. Welcher bleibt leer?
@tt-tom Bin unterwegs, ich werde es am Donnerstag testen.
-
-
Es werden beide Werte neu geschrieben, identisch wie oben beschrieben. Die Fehlermeldung bleibt bestehen.
-
Zusätzliches Thema: Sonos
Ich habe ein Sonos Panel eingerichtet, allerdings ist das Verhalten es was komisch:
Einmal ist dort ein Schriftzug "No Music to control" bei dem ich nicht sicher bin, auf was er sich bezieht.

Wenn ich die Lautstärke verändern will wird eine zweite Karte eingeblendet, aber sofort wieder ausgeblendet, wenn man zum beispiel mehrfach auf das +/- tippt um die Lautstärke zu ändern. Ist das verhalten so gewollt?

Zudem funktionieren die meisten Tasten nicht (falls es Tasten sind): Grüner Notenschlüssel, zwei Pfeile nach rechts, Zufallswiedergabe. Dort kommt immer eine Warnung des HandleButtonEvent
10:47:12.029 warn javascript.0 (3809) at setIfExists (script.js.NSPanel.Panel1:5708:17) 10:47:12.029 warn javascript.0 (3809) at HandleButtonEvent (script.js.NSPanel.Panel1:6232:21) 10:47:12.030 warn javascript.0 (3809) at HandleMessage (script.js.NSPanel.Panel1:3378:21) 10:47:12.030 warn javascript.0 (3809) at Object.<anonymous> (script.js.NSPanel.Panel1:3287:25) 10:47:12.030 warn javascript.0 (3809) at step (script.js.NSPanel.Panel1:33:23) 10:47:12.030 warn javascript.0 (3809) at Object.next (script.js.NSPanel.Panel1:14:53) 10:47:12.030 warn javascript.0 (3809) at script.js.NSPanel.Panel1:8:71 10:47:12.030 warn javascript.0 (3809) at __awaiter (script.js.NSPanel.Panel1:4:12) 10:47:12.030 warn javascript.0 (3809) at Object.<anonymous> (script.js.NSPanel.Panel1:3279:12)und die Lautsprecherliste ist leer, obwohl im Skript der Name drin steht. Wozu dient die Liste eigentlich?
Wäre es möglich den im Titel der Karte "Sonos Player" den Namen der Raumes anzuzeigen?Das Skript hat auch nur einen Player angelegt, wie es auch schon weiter oben im Thread mal gemeldet wurde.
- Und noch was anderes Ich habe eine Karte vom Typ cardLChart für die Gewächshaustemperatur angelegt. Welcher Typ muss der Datenpunkt sein, in den das JS für den history Adapter die Daten rein schreibt?
Vielen Dank, Roland
-
