NEWS
SONOFF NSPanel mit Lovelace UI
-
@armilar said in SONOFF NSPanel mit Lovelace UI:
@bhenyamin sagte in SONOFF NSPanel mit Lovelace UI:
Im EG befindet sich im selben Raum ein Unifiy U6 Lite Accesspoint, im OG ist das Panel im Bad, und der Accesspoint im Flur - nur von einer Tür getrennt. Signaldämpfung unten -48 dBm, oben -69 dBm. Ich kann die Werte nicht einordnen. Kann das für die Ausfälle verantwortlich sein?
Die Werte sind noch okay...
Die Panels sind vollständig entkoppelt und sollten sowohl unter 0_userdata.0 als auch unter alias.0 jeweils einen eindeutigen Ordner haben.
Ich vermute jetzt mal, dass der Parameter in der Config für die Eindeutigkeit des NSPanels bei beiden NSPanelTs.ts-Skripten identisch ist...
Bitte mal nachsehen:
Der müsste also unterschiedlich sein. Z.B.
- 0_userdata.0.NSPanel.1 für das 1. NSPanel und
- 0_userdata.0.NSPanel.2 für das 2. NSPanel
Okay, darauf hätte man auch kommen können
Vielen Dank, genau so war es!
-
Cool - Viel Spaß mit dem 2. NSPanel
-
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
@ompi du könntest jetzt als Event / Suchmuster folgendes machen. Hast dann aber nur zwei Tonnenfarben. z.B.
const idRestmuellName: string = 'Gelbe Tonne, Biotonne, Restmülltonne'; // Schwarze Tonne const idWertstoffName: string = 'Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich'; // Gelbe Tonne / Sack
wirst aber Probleme mit dem Eventnamen auf dem Display haben, wegen begrenzte Anzahl an Zeichen.
Edit: wie würdest du es am liebsten auf dem Display haben bzw. angezeigt bekommen.
Danke für die Antwort. Wenn ich es so eingebe, scheint das Skript wohl Übereinstimmungen zu finden, kann diese aber anscheinend nicht in die Objekte schreiben.
2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: getState(id=ical.0.data.table, timerId=undefined) => {"val":[{"date":"14.12.2023 ","event":" Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich","_class":"ical_Abfall ","_date":"2023-12-13T23:00:00.000Z","_end":"2023-12-14T23:00:00.000Z","_IDID":"6568f816d4d7f","_allDay":true,"_private":false,"_rule":" ","location":"","_calName":"Abfall","_calColor":"#FF0000","_object":{"type":"VEVENT","params":[],"start":"2023-12-13T23:00:00.000Z","datetype":"date","end":"2023-12-14T23:00:00.000Z","dtstamp":"2023-12-05T21:43:50.000Z","uid":"6568f816d4d7f","class":"PUBLIC","created":"2023-11-30T21:01:19.000Z","lastmodified":"2023-11-30T21:01:19.000Z","sequence":"0","status":"CONFIRMED","summary":" Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich","transparency":"OPAQUE","MICROSOFT-CDO-ALLDAYEVENT":"TRUE","method":"PUBLISH"}},{"date":"29.12.2023 ","event":" Gelbe Tonne, Biotonne, Restmülltonne","_class":"ical_Abfall ","_date":"2023-12-28T23:00:00.000Z","_end":"2023-12-29T23:00:00.000Z","_IDID":"6568f816d4d84","_allDay":true,"_private":false,"_rule":" ","location":"","_calName":"Abfall","_calColor":"#FF0000","_object":{"type":"VEVENT","params":[],"start":"2023-12-28T23:00:00.000Z","datetype":"date","end":"2023-12-29T23:00:00.000Z","dtstamp":"2023-12-05T21:43:50.000Z","uid":"6568f816d4d84","class":"PUBLIC","created":"2023-11-30T21:01:23.000Z","lastmodified":"2023-11-30T21:01:23.000Z","sequence":"0","status":"CONFIRMED","summary":" Gelbe Tonne, Biotonne, Restmülltonne","transparency":"OPAQUE","MICROSOFT-CDO-ALLDAYEVENT":"TRUE","method":"PUBLISH"}}],"ack":true,"ts":1701812630745,"q":0,"from":"system.adapter.ical.0","user":"system.user.admin","lc":1701812630745} 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Rohdaten von iCal: [{"date":"14.12.2023 ","event":" Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich","_class":"ical_Abfall ","_date":"2023-12-13T23:00:00.000Z","_end":"2023-12-14T23:00:00.000Z","_IDID":"6568f816d4d7f","_allDay":true,"_private":false,"_rule":" ","location":"","_calName":"Abfall","_calColor":"#FF0000","_object":{"type":"VEVENT","params":[],"start":"2023-12-13T23:00:00.000Z","datetype":"date","end":"2023-12-14T23:00:00.000Z","dtstamp":"2023-12-05T21:43:50.000Z","uid":"6568f816d4d7f","class":"PUBLIC","created":"2023-11-30T21:01:19.000Z","lastmodified":"2023-11-30T21:01:19.000Z","sequence":"0","status":"CONFIRMED","summary":" Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich","transparency":"OPAQUE","MICROSOFT-CDO-ALLDAYEVENT":"TRUE","method":"PUBLISH"}},{"date":"29.12.2023 ","event":" Gelbe Tonne, Biotonne, Restmülltonne","_class":"ical_Abfall ","_date":"2023-12-28T23:00:00.000Z","_end":"2023-12-29T23:00:00.000Z","_IDID":"6568f816d4d84","_allDay":true,"_private":false,"_rule":" ","location":"","_calName":"Abfall","_calColor":"#FF0000","_object":{"type":"VEVENT","params":[],"start":"2023-12-28T23:00:00.000Z","datetype":"date","end":"2023-12-29T23:00:00.000Z","dtstamp":"2023-12-05T21:43:50.000Z","uid":"6568f816d4d84","class":"PUBLIC","created":"2023-11-30T21:01:23.000Z","lastmodified":"2023-11-30T21:01:23.000Z","sequence":"0","status":"CONFIRMED","summary":" Gelbe Tonne, Biotonne, Restmülltonne","transparency":"OPAQUE","MICROSOFT-CDO-ALLDAYEVENT":"TRUE","method":"PUBLISH"}}] 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Anzahl iCal - Daten: 2 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: --------- Nächster Termin wird geprüft --------- 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Startdatum UTC: 2023-12-13T23:00:00.000Z 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Datum: 14.12.2023 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Event: Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Kontrolle Leerzeichen %Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich% 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.1.date, state={"val":"14.12.2023 ","ack":false,"ts":1701812630746,"q":0,"from":"system.adapter.javascript.0","lc":1701812630746,"c":"script.js.common.NSPanel.Abfall"}) 2023-12-05 22:43:50.746 - warn: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.1.date, state={"val":"14.12.2023 ","ack":false,"ts":1701812630746,"q":0,"from":"system.adapter.javascript.0","lc":1701812630746,"c":"script.js.common.NSPanel.Abfall"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.1.event, state={"val":"Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich","ack":false,"ts":1701812630746,"q":0,"from":"system.adapter.javascript.0","lc":1701812630746,"c":"script.js.common.NSPanel.Abfall"}) 2023-12-05 22:43:50.746 - warn: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.1.event, state={"val":"Gelbe Tonne, Biotonne, Restmülltonne, Blaue Papiertonne, Restmülltonne 4-wöchentlich","ack":false,"ts":1701812630746,"q":0,"from":"system.adapter.javascript.0","lc":1701812630746,"c":"script.js.common.NSPanel.Abfall"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist 2023-12-05 22:43:50.746 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.1.color, state={"val":65504,"ack":false,"ts":1701812630746,"q":0,"from":"system.adapter.javascript.0","lc":1701812630746,"c":"script.js.common.NSPanel.Abfall"}) 2023-12-05 22:43:50.746 - warn: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.1.color, state={"val":65504,"ack":false,"ts":1701812630746,"q":0,"from":"system.adapter.javascript.0","lc":1701812630746,"c":"script.js.common.NSPanel.Abfall"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Abfallnummer: 1 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: --------- Nächster Termin wird geprüft --------- 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Startdatum UTC: 2023-12-28T23:00:00.000Z 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Datum: 29.12.2023 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Event: Gelbe Tonne, Biotonne, Restmülltonne 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Kontrolle Leerzeichen %Gelbe Tonne, Biotonne, Restmülltonne% 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.2.date, state={"val":"29.12.2023 ","ack":false,"ts":1701812630747,"q":0,"from":"system.adapter.javascript.0","lc":1701812630747,"c":"script.js.common.NSPanel.Abfall"}) 2023-12-05 22:43:50.747 - warn: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.2.date, state={"val":"29.12.2023 ","ack":false,"ts":1701812630747,"q":0,"from":"system.adapter.javascript.0","lc":1701812630747,"c":"script.js.common.NSPanel.Abfall"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.2.event, state={"val":"Gelbe Tonne, Biotonne, Restmülltonne","ack":false,"ts":1701812630747,"q":0,"from":"system.adapter.javascript.0","lc":1701812630747,"c":"script.js.common.NSPanel.Abfall"}) 2023-12-05 22:43:50.747 - warn: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.2.event, state={"val":"Gelbe Tonne, Biotonne, Restmülltonne","ack":false,"ts":1701812630747,"q":0,"from":"system.adapter.javascript.0","lc":1701812630747,"c":"script.js.common.NSPanel.Abfall"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.2.color, state={"val":33840,"ack":false,"ts":1701812630747,"q":0,"from":"system.adapter.javascript.0","lc":1701812630747,"c":"script.js.common.NSPanel.Abfall"}) 2023-12-05 22:43:50.747 - warn: javascript.0 (181) script.js.common.NSPanel.Abfall: setForeignState(id=0_userdata.0.Abfallkalender.2.color, state={"val":33840,"ack":false,"ts":1701812630747,"q":0,"from":"system.adapter.javascript.0","lc":1701812630747,"c":"script.js.common.NSPanel.Abfall"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist 2023-12-05 22:43:50.747 - info: javascript.0 (181) script.js.common.NSPanel.Abfall: Abfallnummer: 2
Die Anzeige aus dem Beispiel würde mir schon reichen. Wobei mir die Restmülltonne, Blaue Tonne und Gelbe Tonne reichen würden.
Der trashschedule Adapter schafft es die Tonnen zu trennen und die jeweiligen Abholdaten anzuzeigen. Das hilft mir beim NSPanel aber nicht weiter, oder?
-
Hast du den Debugmodus von der Javascript Instanz aktiv? Den bitte ausschalten und nur im Script die DEBUG - Variable auf true setzen. Dann sollte es mit dem Schreiben auch klappen.
kannst du mir mal das JSON schicken aus dem Trashschedule
trashschedule.0.type.json
dann, passe ich das Script mal an. Beim Trashschedule werden andere Farbcodes genutzt.
-
@tt-tom
Ja, der Debugmodus war aktiviert. Nun schreibt er auch alles.Hier die JSON aus trashschedule.0.type.json
[{"name":"Restmülltonne","daysLeft":8,"nextDate":1702508400000,"_completed":false,"_color":"#545454"},{"name":"Gelbe Tonne","daysLeft":8,"nextDate":1702508400000,"_completed":false,"_color":"#bab827"},{"name":"Biotonne","daysLeft":8,"nextDate":1702508400000,"_completed":false,"_color":"#27ba4e"},{"name":"Blaue Papiertonne","daysLeft":8,"nextDate":1702508400000,"_completed":false,"_color":"#2764ba"}]
Grüße
ompi -
@ompi
Hi,Ja, der Debugmodus war aktiviert. Nun schreibt er auch alles.
Jetzt solltest du auch etwas im Panel sehen.
Du bekommst auf deinem Panel nur 4 Termine angezeigt, das würde jetzt mit den Daten vom Trashschedule 4x der gleiche Termin sein mit unterschiedlichen Tonnen.
Ich habe im Script die Möglichkeit geschaffen, eigene Namen/Texte für den Termin zu vergeben, vielleicht hilft dir das. Leider hast du auch nur eine begrenzte Anzahl an Zeichen pro Termin. Diese Anpassungen im Script sind aber noch nicht auf Github.
-
@tt-tom
das mit dem gleichen Termin ist richtig, da bei der nächsten Abholung die blaue Tonne mit dran ist. Die blaue Tonne wird nur alle 4 Wochen geholt. Die Anderen alle 2 Wochen.
Das mit dem eigenen Namen würde mir reichen. Dann würde ich 2 Termine anzeigen lassen:- mit blauer Tonne
- ohne blaue Tonne
Danke dir!
-
okay, dass lässt sich damit realisieren. Gib dir dann Bescheid, wenn es auf GitHub ist.
-
@tt-tom
Vielen Dank! -
Guten Abend,
ich wollte fragen, ob es möglich ist via ioBroker das Display einzuschalten und eine Seite zu öffnen. Usecase wäre, dass ich automatisch sobald über den VCR Musik abgespielt wird, die entsprechende Seite öffnen will.
Zweite Frage: Klappt bei euch das Neustarten des Panels über die Settings? Da passiert bei mir gar nichts. Im Log kommt auch keine Ausgabe.
-
Zweite Frage: Klappt bei euch das Neustarten des Panels über die Settings? Da passiert bei mir gar nichts. Im Log kommt auch keine Ausgabe.
Ja, eben ausprobiert und hat komplett rebootet
ich wollte fragen, ob es möglich ist via ioBroker das Display einzuschalten und eine Seite zu öffnen. Usecase wäre, dass ich automatisch sobald über den VCR Musik abgespielt wird, die entsprechende Seite öffnen will.
Ja ist möglich...
Ich weiß zwar nicht was der VCR ist und ob der einen Datenpunkt hat, der verrät dass er etwas abspielt, aber wenn es einen gibt, dann könnte der als Trigger dienen. Ein Blockly-/JS-Script müsste dann0_userdata.0.NSPanel.1.ScreensaverInfo.activeDimmodeBrightness
(0=aus; > 0 = an; -1 = deaktiv) steuern und über den Datenpunkt0_userdata.0.NSPanel.1.PageNavi
die richtige Seite aus dem pages-Array aufrufen.z.B. Seite 11
{ "pagetype": "page", "pageId": 11 }
EDIT: 13b beschreibt den Seitenaufruf:
https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---FAQ-&-Anleitungen#13b-aus-dem-iobroker-eine-bestimmte-seite-auf-dem-nspanel-öffnen -
@theknut sagte in SONOFF NSPanel mit Lovelace UI:
Zweite Frage: Klappt bei euch das Neustarten des Panels über die Settings? Da passiert bei mir gar nichts. Im Log kommt auch keine Ausgabe.
jo läuft, kann ich bestätigen. Wenn du am Panel den Debug Modus einstellst, sollte beim Betätigen des Reboot, diese Meldungen kommen.
22:22:29.544 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: HandleButtonEvent übergebene Werte event - buttonPress2 - alias.0.NSPanel.1.Config.rebootNSPanel - button - undefined - PageId: 0 22:22:29.546 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: HandleButtonEvent buttonAction: button 22:22:29.547 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: HandleMessage -> buttonPress2 event - buttonPress2 - alias.0.NSPanel.1.Config.rebootNSPanel - button - undefined 22:22:29.561 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: get_current_tasmota_ip_address: 192.168.178.101 22:22:29.568 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: GetNavigationString Übergabe pageId: 0 22:22:29.569 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: CreateEntity Standard ~button~navigate.NSPanel_Info~~38060~Infos~mehr... 22:22:29.569 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: CreateEntity Standard ~button~navigate.NSPanel_Einstellungen~~38060~Einstellungen~mehr... 22:22:29.570 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: CreateEntity Standard ~button~navigate.NSPanel_Firmware~~38060~Firmware~mehr... 22:22:29.570 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: CreateEntity Icon role button ~button~alias.0.NSPanel.1.Config.rebootNSPanel~~32495~Reboot NSPanel~Start 22:22:29.571 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: GeneratePageElements pageData entityUpd~Service Menü~button~bPrev~~65535~~~button~bNext~~65535~~~button~navigate.NSPanel_Info~~38060~Infos~mehr...~button~navigate.NSPanel_Einstellungen~~38060~Einstellungen~mehr...~button~navigate.NSPanel_Firmware~~38060~Firmware~mehr...~button~alias.0.NSPanel.1.Config.rebootNSPanel~~32495~Reboot NSPanel~Start 22:22:29.645 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: Tasmota Reboot 22:22:29.646 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: Name: script.js.common.Testcenter.nspanelBeta 22:22:29.646 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: Instanz: 1 22:22:29.646 info javascript.1 (8773) script.js.common.Testcenter.nspanelBeta: Reboot NSPanel... done
-
Update v4.3.3.18
Ich beschreibe es nicht weiter, da es mit Ausnahme der kleinen Erweiterung des Alexa-Players eher einen funktionalen Nutzen für spätere JS-Adapter-Versionen (> stable = 7.1.6) hat.
Wer es dennoch möchte, kann den unteren Teil austauschen...
-
@armilar Und wie mach ich das Display wieder aus? Habe
0_userdata.0.NSPanel.1.ScreensaverInfo.activeDimmodeBrightness
wieder auf-1
gestellt und der Bildschirm bleibt weiterhin an, kein Screensaver.Edit: bin schon auf 4.3.3.18
-
- mit dem Wert 0 ist es aus
- mit -1 übernimmt das NSPanel wieder automatisch
EDIT: v4.3.3.18 ist ja auch die weiteste
-
@tt-tom bei mir kommt nur
info: javascript.0 (321) script.js.NSPanel.Wohnzimmer: HandleButtonEvent übergebene Werte event - buttonPress2 - alias.0.NSPanel.1.Config.rebootNSPanel - button - undefined - PageId: 4 info: javascript.0 (321) script.js.NSPanel.Wohnzimmer: HandleButtonEvent buttonAction: button info: javascript.0 (321) script.js.NSPanel.Wohnzimmer: HandleMessage -> buttonPress2 event - buttonPress2 - alias.0.NSPanel.1.Config.rebootNSPanel - button - undefined
Hier hab ich nichts geändert
-
bei dir fehlen ja diverse Ordner, hast du sie von Hand angelegt oder über Script?
Im Userdata steht auch "null" was nicht richtig ist muss false sein.
lass die Ordner vom Script neu anlegen, in dem du alles unter 0_userdata.0.NSPanel.1 und alias.0.NSPanel.1 löschst.Edit: eventuell löst sich dann auch dein anders Problem.
-
@tt-tom das sieht nur so aus, weil ich oben nach
reboot
gefiltert hatte. Habe nun auffalse
gesetzt und jetzt geht es. Ich hatte am Anfang auch schon mal ein Problem, dass ein Wertnull
war. Komisch... -
Stimmt...
Das Script würde den Datenpunkt mit dem Wert "false" anlegen...
Und was ganz wichtig ist bei der Anlage durch das Script:
Habs mal schnell aus der Wiki kopiert:
https://github.com/joBr99/nspanel-lovelace-ui/wiki/iobroker---Basisinstallation#8--einstellungen-in-js-adapter-instanz -
es gibt eigentlich nur zwei DP die 'null' haben sollten
0_userdata.0.NSPanel.1.ScreensaverInfo.activeDimmodeBrightness 0_userdata.0.NSPanel.1.ScreensaverInfo.bExitPage
sonst sollten immer Werte enthalten sein. Du kannst mit dem Script Datenpunkte auch neu anlegen lassen, wenn du noch mehr hast. Das aktuelle Script nutzt auch schon die neue Schreibweise von -1 statt null.