NEWS
Sonoff NSPanel
-
@a200 mehr steht nicht
-
@wheinz44 sagte in Sonoff NSPanel:
@a200 mehr steht nicht
Bei mir sieht es so aus:
root@iobroker:~# node -p process.versions { node: '12.22.12', v8: '7.8.279.23-node.57', uv: '1.40.0', zlib: '1.2.11', brotli: '1.0.9', ares: '1.18.1', modules: '72', nghttp2: '1.41.0', napi: '8', llhttp: '2.1.4', http_parser: '2.9.4', openssl: '1.1.1n', cldr: '37.0', icu: '67.1', tz: '2021a4', unicode: '13.0' }
dann versuch es mit:
npm set -g unsafe-perm npm install -g full-icu npm set -g unsafe-perm false
Damit sollte die volle Internationalisierung von nod installiert werden
Meine Lösung war node v12 zu deinstallieren und die aktuelle Version 18 zu installieren.
iobroker stop apt purge nodejs curl -fsSL https://deb.nodesource.com/setup_18.x | bash - apt-get install -y nodejs iobroker start
jetzt geht es auch mit dem Datum
-
node18 ist nicht die vorgesehene Version. Das ist nodeJS@16. Und schau dir an, wie man die root shell vermeidet.
-
Ich habe eine Frage:
Kann ich, wenn ich einen Button drücke einen bestimmten Wert in einen Datenpunkt schreiben lassen oder ist das immer ein Boolean?
Ich meine ich komme auch hin mit Boolean, aber ein String würde mir mein Blockly massiv vereinfachen.Danke im Vorfeld.
-
@armilar sagte in Sonoff NSPanel:
@vocaris sagte in Sonoff NSPanel:
Command via MQTT Explorer "{"HMI_resources":[{"index":1,"ctype":"group","id":"1","uiid":1}]}"
Was ist das für ein Command?
via MQTT Explorer "{"HMI_resources":[{"index":1,"ctype":"group","id":"1","uiid":1}]}"
Folgst du der falschen Beschreibung?
Anleitung nur in diesem Thread befolgen...
Hei.
Das bezog sich auf die Tasmota Installation. Nicht auf deinen WEg bzgl. lovelace.
Das gucke ich mir jetzt mal an, ob ich das hinbekomme. -
@Armilar
Hallo,
aktuell scheitere ich an Step 5. Das Flashen.
Der Befehl FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft oder http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft
wir nicht akzeptiert9:17:27.195 CMD: http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft 09:17:27.211 MQT: Haus/EG/NS-Panel/stat/RESULT = {"Command":"Unknown"} 09:17:48.979 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft 09:17:48.998 MQT: Haus/EG/NS-Panel/stat/RESULT = {"Command":"Unknown"} 09:18:00.868 NSP: Sent = {"year":2022,"mon":7,"day":1,"hour":9,"min":18
Was mache ich falsch?
PS: Hat sich erledigt. Ein Reboot über die Oberfläche reichte wohl nicht aus. Nachdem ich das Panel vom Strom getrennt und neu gestartet habe, hat er wohl das Script geladen und konnte nun den Befehl FlashNextion ausführen
-
@vocaris sagte in Sonoff NSPanel:
@Armilar
Hallo,
aktuell scheitere ich an Step 5. Das Flashen.
Der Befehl FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft oder http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft
wir nicht akzeptiert9:17:27.195 CMD: http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft 09:17:27.211 MQT: Haus/EG/NS-Panel/stat/RESULT = {"Command":"Unknown"} 09:17:48.979 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft 09:17:48.998 MQT: Haus/EG/NS-Panel/stat/RESULT = {"Command":"Unknown"} 09:18:00.868 NSP: Sent = {"year":2022,"mon":7,"day":1,"hour":9,"min":18
Was mache ich falsch?
Gehe die Anleitung nochmal durch. Es dürfte nachdem der korrekte Berry-Treiber installiert ist, kein NSP Send mehr geben. Lösche mal alle Dateien aus dem Tasmota-Dateisystem und lege die "autoexec.be" neu an. Inhalt:
https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be
--> Danach Panel bootenDann folgendes in der Tasmota-Konsole ausführen
FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.1.0.tft
Die aktuellsten Versionen findest du im immer im TS-Skript (Header)
https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts -
@kuckuckmann sagte in Sonoff NSPanel:
Ich habe eine Frage:
Kann ich, wenn ich einen Button drücke einen bestimmten Wert in einen Datenpunkt schreiben lassen oder ist das immer ein Boolean?
Ich meine ich komme auch hin mit Boolean, aber ein String würde mir mein Blockly massiv vereinfachen.Danke im Vorfeld.
Ja, das "Geheimnis" liegt aber nicht im Skript, sondern im "Alias" -->
Analog der Radiosender:
kannst du auch Funktionsaufrufe unter definieren -
@armilar sagte in Sonoff NSPanel:
FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.1.0.tft
OK. Wie geschrieben. Also ich das Panel vom Strom genommen habe, lief es mit dem Befehl.
Habe aber jetzt aufgrund deines Post nochmal aus dem Post die be Datei neu gespeichert.
Dann auch die neue tft Version installiert. Auf dem Display sehe ich den Balken und "writing Data". Aber nach dem Befehl kam direkt eine Exception!10:21:31.614 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.1.0.tft 10:21:31.630 MQT: Haus/EG/NS-Panel/stat/RESULT = {"FlashNextion":"Done"} 10:21:31.670 FLH: host: nspanel.pky.eu, port: 80, get: /lovelace-ui/github/nspanel-v3.1.0.tft 10:21:32.875 FLH: Send (High Speed) flash start 10:21:33.281 BRY: Exception> 'type_error' - unsupported operand type(s) for <: 'nil' and 'int'
Der Bildschirm mit dem vollen Balken bleibt jetzt stehen.
Wollte eigentlich noch was wegen dem Eintrag in dem NSPanelTS Script fragen und das Problem, dass ich den cmd Datenpunkt im mqtt Adapter nicht erzeugen kann. Aber jetzt habe ich erst mal das Problem mir der Exception bei flashen der neuen tft Version -
@vocaris sagte in Sonoff NSPanel:
@armilar sagte in Sonoff NSPanel:
FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.1.0.tft
OK. Wie geschrieben. Also ich das Panel vom Strom genommen habe, lief es mit dem Befehl.
Habe aber jetzt aufgrund deines Post nochmal aus dem Post die be Datei neu gespeichert.
Dann auch die neue tft Version installiert. Auf dem Display sehe ich den Balken und "writing Data". Aber nach dem Befehl kam direkt eine Exception!10:21:31.614 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.1.0.tft 10:21:31.630 MQT: Haus/EG/NS-Panel/stat/RESULT = {"FlashNextion":"Done"} 10:21:31.670 FLH: host: nspanel.pky.eu, port: 80, get: /lovelace-ui/github/nspanel-v3.1.0.tft 10:21:32.875 FLH: Send (High Speed) flash start 10:21:33.281 BRY: Exception> 'type_error' - unsupported operand type(s) for <: 'nil' and 'int'
Der Bildschirm mit dem vollen Balken bleibt jetzt stehen.
Wollte eigentlich noch was wegen dem Eintrag in dem NSPanelTS Script fragen und das Problem, dass ich den cmd Datenpunkt im mqtt Adapter nicht erzeugen kann. Aber jetzt habe ich erst mal das Problem mir der Exception bei flashen der neuen tft VersionDas sollte auch zuerst passieren. Zuerst muss das Panel bereit sein mit dem ioBroker zu arbeiten.
Welche Tasmota-Version hast du installiert, Hast du die GPIO's korrekt gesetzt?
{"NAME":"NSPanel","GPIO":[0,0,0,0,3872,0,0,0,0,0,32,0,0,0,0,225,0,480,224,1,0,0,0,33,0,0,0,0,0,0,0,0,0,0,4736,0],"FLAG":0,"BASE":1}Irgendwo muss da noch ein Fehler im Tasmota sein. Eigentlich läuft das "Flashen" reibungslos durch. Habe gestern erst innnerhalb von 10 Minuten ein komplettes Panel aufgesetzt.
-
@armilar
Es ist die 12.0.2.
Habe die Tasmota32-DE.bin installiert von hier:
http://ota.tasmota.com/tasmota32/release/
{"NAME":"NSPanel","GPIO":[0,0,0,0,3872,0,0,0,0,0,32,0,0,0,0,225,0,480,224,1,0,0,0,33,0,0,0,0,0,0,0,0,0,0,4736,0],"FLAG":0,"BASE":1}
habe ich auch drin.
Mittlerweile habe ich auf dem Display diesen drehenden Kreis. Bekomme aber den Datenpunkt nicht erzeugt.
Habe nur anstatt Smarthome wie du das Full Topic etwas anders Haus/EG/%topic%/%prefix%/: -
@vocaris sagte in Sonoff NSPanel:
@armilar
Es ist die 12.0.2.
Habe die Tasmota32-DE.bin installiert von hier:
http://ota.tasmota.com/tasmota32/release/
{"NAME":"NSPanel","GPIO":[0,0,0,0,3872,0,0,0,0,0,32,0,0,0,0,225,0,480,224,1,0,0,0,33,0,0,0,0,0,0,0,0,0,0,4736,0],"FLAG":0,"BASE":1}
habe ich auch drin.
Mittlerweile habe ich auf dem Display diesen drehenden Kreis. Bekomme aber den Datenpunkt nicht erzeugt.
Habe nur anstatt Smarthome wie du das Full Topic etwas anders Haus/EG/%topic%/%prefix%/:ggf. nochmal auf die https://github.com/arendst/Tasmota/releases/download/v12.0.2/tasmota32-nspanel.bin wechseln. Soll irgendeinen Speiecherbereich geben, der dann mitverwaltet wird. Konnte den Unterschied aber auch nie bemerken
Drehender Kreis ist perfekt. Das Panel arbeitet jetzt so weiter, bis es ein Signal vom TS-Skript bekommt.
Da haben die meisten Probleme mit! Versuche es mal mit dem "MQTT Explorer" (ist kostenlos). Mit dem funktioniert es früher oder später bei allen. Verbinden, NSPanel_1 suchen und unter cmnd auf der rechten Seite /CommandSend hinzufügen und unten time~12:00 als Payload absenden.
Alternativ in der Tasmota-Konsole "CustomSend time~12:00" eingeben.
-
Könntest auch mal ein JavaScript (JS) im ioBroker anlegen (Name egal) und mit dem Inhalt befüllen und ausführen:
var paneltopic, result; paneltopic = 'Haus/EG/NSPanel_1/cmnd/CustomSend'; sendTo("mqtt.0", "sendMessage2Client", { "topic": paneltopic, "message": 'time~' + String(formatDate(new Date(), "hh:mm")) }, async function (result) { console.log(result); });
Was aber interessant ist - 3 Posts weiter oben sehe ich "Haus/EG/NS-Panel/stat/RESULT" mit einem Bindestrich. Im mqtt.0. sehe ich einen Unterstrich. Hast du das nochmal korrigiert oder ist da eine Inkonsistenz in deinen MQTT-Einstellungen im Tasmota?
-
@armilar
Beides schon gemacht.
Nix passiert im mqtt Adapter bzgl. der Datenpunktes -
@vocaris sagte in Sonoff NSPanel:
@armilar
Beides schon gemacht.
Nix passiert im mqtt Adapter bzgl. der DatenpunktesGleiches Thema wie im vorherigen Post. Linke Seite Unterstrich und im Sendetopic ein Bindestrich. Da stimmt was nicht...
-
@armilar
Yeep. Ich hatte andere Topics etc als in deiner Anleitung.
Ich hatte aber angst, dass im TS Script nachher genau deine mqtt Bezeichnungen etc. drin sind und dann was nicht läuft. Habe dann alles (bis auf das topic) so umgestellt wie bei dir.
Im TS Script muss ja was angepasst werden. Ich war da verwirrt, da im Script der Baum mit. getrennt wird.
Im mqtt ist es mittels /
Der Eintrag im TS Script muss doch dann so sein, oder?panelRecvTopic: "mqtt.0.Haus.EG.NSPanel_1.tele.RESULT", //anpassen panelSendTopic: "mqtt.0.Haus.EG.NSPanel_1.cmnd.CustomSend", //anpassen
Aber da ich den cmnd Datenpunkt nicht habe wirft das Script Fehler aus.
-
@vocaris sagte in Sonoff NSPanel:
@armilar
Yeep. Ich hatte andere Topics etc als in deiner Anleitung.
Ich hatte aber angst, dass im TS Script nachher genau deine mqtt Bezeichnungen etc. drin sind und dann was nicht läuft. Habe dann alles (bis auf das topic) so umgestellt wie bei dir.
Im TS Script muss ja was angepasst werden. Ich war da verwirrt, da im Script der Baum mit. getrennt wird.
Im mqtt ist es mittels /
Der Eintrag im TS Script muss doch dann so sein, oder?panelRecvTopic: "mqtt.0.Haus.EG.NSPanel_1.tele.RESULT", //anpassen panelSendTopic: "mqtt.0.Haus.EG.NSPanel_1.cmnd.CustomSend", //anpassen
Aber da ich den cmnd Datenpunkt nicht habe wirft das Script Fehler aus.
Die Anpassungen im Script sind korrekt, aber du sendest das Payload nicht über das Topic:
mqtt.0.Haus.EG.NSPanel_1.cmnd.CustomSend
sondern aktuell über:
mqtt.0.Haus.EG.NSPanel-1.cmnd.CustomSendDa liegt dein Fehler. So wird er cmnd/CustomSend niemals anlegen.
Mach mal im MQTT Explorer
Topic: "Haus.EG.NSPanel_1.cmnd.CustomSend"und Payload: time~12:00
-
@armilar Korrekt. Hatte nicht aktualisiert. Aber macht kein Unterschiede. Der DS wird einfach nicht geschrieben.
Werder über die Konsole noch als JS noch per Explorer...
Und hier müsste auch alles OK sein
PS: Habe die andere Tasmota Firmware installiert. Jetzt hat er den Datenpunkt gesetzt.
-
@vocaris sagte in Sonoff NSPanel:
@armilar Korrekt. Hatte nicht aktualisiert. Aber macht kein Unterschiede. Der DS wird einfach nicht geschrieben.
Werder über die Konsole noch als JS noch per Explorer...
Und hier müsste auch alles OK sein
Ja ist korrekt. Hatte den Post darüber noch erweitert.
-
@vocaris sagte in Sonoff NSPanel:
@armilar Korrekt. Hatte nicht aktualisiert. Aber macht kein Unterschiede. Der DS wird einfach nicht geschrieben.
Werder über die Konsole noch als JS noch per Explorer...
Und hier müsste auch alles OK sein
PS: Habe die andere Tasmota Firmware installiert. Jetzt hat er den Datenpunkt gesetzt.
Perfekt. Dann sollte das Skript jetzt die ersten Infos an das Panel senden