NEWS
SONOFF NSPanel mit Lovelace UI
SONOFF NSPanel mit Lovelace UI
-
@tt-tom und die relais soll ich einfach mitschalten lassen?
also wenn ich die so73 zurrücknehme und die Rule definiere passiert nichts ausser das das relais schaltet.
Rule2 on Button1#state do Publish NSPanel/%topic%/tele/RESULT {"CustomRecv":"event,button1"} endon on Button2#state do Publish NSPanel/%topic%/tele/RESULT {"CustomRecv":"event,button2"} endondas hier wird im mgtt übertragen:
11:44:00.595 MQT: NSPanel/nspanel_C39D28/stat/RESULT = {"POWER1":"ON"} -
SONOFF NSPanel Touch Display Switch
mit Lovelace UI und TASMOTA Firmware

Das Thema https://forum.iobroker.net/topic/50888/sonoff-nspanel/1542 wird hier jetzt fortgesetzt...
An alle begeisterten NSPanel'er
Dieser Thread soll sich jetzt ausschließlich mit den Fragen und Themen rund um das SONOFF NSPanel mit Lovelace UI beschäftigen.
Wie alles begann:
- 22.10.2021
Blakadder's Dokumentation der Dekodierung des NSPanel-Kommunikationsprotokolls und Einrichtung der Steuerung des Nextion-Bildschirms mit benutzerdefinierter Firmware.
https://blakadder.com/nspanel-hacking/ - 01.01.2022
Erste Gehversuche mit Blockly-Scripts auf der Original-Firmware nach einer ersten coolen Anleitung für den ioBroker von @haus-automatisierung. - ...
Funkstille auf allen Kanälen, da das Panel in der Originalsoftware einfach zu wenig Funktionalität hat. Ein Vergleich mit "Jugend forscht" wäre maßlos übertrieben... - 15.01.2022
@jobr99 Erstes POC von Lovelace Konzept mit ESPhome Komponente, da Nextion Upload Protcol unter tasmota nicht umsetzbar ist (berry tcpclient crashed ESP, HTTP Libary ist auf viel zu kleine Dateien limitiert) - 17.01.2022
peepshow-21 Erste implementierung von Nextion Upload Protocol 1.1 mit Workaround für HTTP Libary über Java Converter um tft files für tasmota vorzubereiten - 20.01.2022
s-hadinger fixt bug in berry tcpclient - 31.01.2022
Erste Version für HomeAssistant mit Nodered und Tasmota - 08.02.2022
@joBr99 Erste Implementierung von Nextion Upload Protokoll 1.2 in Berry basiertend auf HTTP Range Header Requests und lokalem Buffer (funktioniert nur mit -nspanel tasmota build uns PSRAM Support) - 12.02.2022
peepshow-21 Implementierung von Nextion Upload Protocol 1.2 mit vollständigem Download und "streaming" zum Nextion Screen während dem Download - 05.03.2022
@joBr99 Portierung von Node-Red Flow zu AppDaemon, da AppDaemon sich besser eignet zur Implementierung vom Backend - 13.03.2022
@joBr99 Erste Version von Lovelace Berry Driver basierend auf Upload Protocol Implementierung von peepshow-21, da diese etwas stabiler läuft mit zusätzlichem Error Handling - 30.03.2022
@joBr99 kommt mit der Info um die Ecke, dass es ein erstes Script v1.9.0 für den ioBroker von @Britzelpuf gibt. Zu diesem Zeitpunkt gab es bereits den Screensaver die Seitennavigation und die Möglichkeit eine Lampe, einen Dimmer eine Taste und eine Info, sowie die popUps für Licht (Brightness) und Shutter (Position) und einen Thermostaten zur Steuerung einzubinden. - 10.04.2022
@joBr99 Firmware got bigger and bigger with >15 Minutes Flashing Time for the tft file
Increased Flashing Speed of Berry Driver from 115200 to 921600 and added skipping to the End with HTTP Range Headers, resulted in faster display flashing - 11.04.2022
@Armilar macht seine ersten Änderungen auf github und hört seit dem nicht mehr auf, weitere Funktionen in das TSScript hinzuzufügen...
@joBr99 entwickelt die HMI und neue Funktionen für Home Assistant schneller als der Wind - und macht das Panel zur echten Bereicherung für jedes Smart Home

heute
- Eine der besten Community's die ich jemals erlebt habe. Hilfsbereit und kompetent wird jeder mit Hilfestellungen und Problemlösungen in kürzester Zeit versorgt.
Es macht großen Spaß zusammen mit euch...
VG
Armilar
Beispiele:










Features:
- cardEntities für die Unterstützung diverser Steuerelemente (siehe Beispiele)
- cardGrid (3x2-Raster) für die Unterstützung diverser Steuerelemente (siehe Beispiele)
- cardGrid2 (4x2) für die Unterstützung diverser Steuerelemente (siehe Beispiele)
- cardGrid3 (2x2) für die Unterstützung diverser Steuerelemente (siehe Beispiele)
- cardPower zur Visualisierung der Energieverteilung
- cardAlarm als Seite für Alarmanlagen
- cardMedia - der Media-Player (Diverse Adapter)
- cardThermo - Seite für Thermostat oder Klimaanlage
- cardQR - Seite mit QRCode zur Anzeige von WLAN-Informationen
- cardChart - Balkendiagramme
- Detailseiten für Leuchtmittel (Helligkeit, Temperatur und Farbe)
- Detailseite für Jalousien/Rollos (Position und Tilt)
- Detailseite für Ventilatoren
- Detailseite für Timer
- Auswahl Detailseite für Werteliste
- Bildschirmschonerseite mit Uhrzeit, Datum und Wetterinformationen oder/und Infos
- Multilingual (unterstützt über 40 Sprachen)
- Unbegrenzte Anzahl an Seiten und Unterseiten
- Abfallkalender
- Favoritenseiten
- etc.
NsPanel Lovelace UI ist eine Firmware für den Nextion-Bildschirm innerhalb des NSPanel.
Die allgemeine Idee ist, dass das Nextion-Display einen Seitenzähler durchläuft und der ESP32 dem Display sagt, was zu tun ist. Alles ist dynamisch durch Alias-Erstellung konfigurierbar, es ist nicht erforderlich, Nextion Editor zu programmieren. Neben der Seiten-Definition sind im ioBroker keine Programmierkenntnisse erforderlich. Es ist im ioBroker ebenfalls kein Lovelace-Adapter erforderlich.
Das Panel arbeitet mit Tasmota und MQTT. Um das Panel zu steuern und mit Inhalten von ioBroker zu aktualisieren, gibt es ein vordefiniertes TypeScript (TS) für den JavaScript-Adapter.
Aktuelle Wiki (Anleitung) für den ioBroker
https://github.com/joBr99/nspanel-lovelace-ui/wiki by @Kuckuckmann
NsPanelTs.ts (TypeScript) für ioBroker v4.9.3.X
zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar und @TT-Tom
https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker
abgestimmt auf:- TFT 58 / v4.9.3 ( by @joBr99 / Armilar > 4.4.0)
- BerryDriver 9 ( by peepshow-21 (based on code by blakadder and s-hadinger))
- Tasmota 15.1.0 ( by Theo Arends ) --> Theo-Arends-Sonoff-MQTT-OTA
Projekt:
by @joBr99
- main (Home Assistant - Version und Nextion HMI): https://github.com/joBr99/nspanel-lovelace-ui by @joBr99
- ioBroker: https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker by @Armilar (HA - Adaption)
Icon-Mapper:
- icon_mapping.ts:
https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/icon_mapping.ts
(TypeScript muss in global liegen)
Icons:
unter: https://docs.nspanel.pky.eu/icon-cheatsheet.html
Video-Tutorial:
https://www.youtube.com/watch?v=ZPLJk2ZLo_8 by @haus-automatisierung
@armilar sagte in SONOFF NSPanel mit Lovelace UI:
Detailseite für Jalousien/Rollos (Position und Tilt)
Ich mir nicht sicher, ob ich einen Fehler in der Detailseite für Jalousien gefunden habe, oder ob ich selbst einen Fehler gemacht habe. (Skript Version v4.2.1.2)
Ich habe eine CardEntity mit drei "blinds" Alias und einem "dimmer" Alias. Auf der Übersichtsseite kann ich die Markisen super bedienen, der Pfeil nach unten bewegt die Markise nach unten, der Pfeil nach oben bewegt sie nach oben und das Rechteck stoppt die Bewegung. Alles super, wie es sein soll.
Gehe ich allerdings auf die Detailsseite einer Markise, so ist der "Pfeil runter" grau, obwohl die Markise ganz oben ist und umgekehrt die "Pfeil rauf" ist grau, obwohl die Markise ganz unten ist. Das bedeutet, dass die Markise über die Detailseite nicht steuerbar ist, wenn sie auf 0% oder 100% steht. Bei Werten zwischen 1% und 99% sind beide Pfeile aktiv.
Definition CardEntity:
Alias:
Mache ich was falsch?
- 22.10.2021
-
@armilar sagte in SONOFF NSPanel mit Lovelace UI:
Detailseite für Jalousien/Rollos (Position und Tilt)
Ich mir nicht sicher, ob ich einen Fehler in der Detailseite für Jalousien gefunden habe, oder ob ich selbst einen Fehler gemacht habe. (Skript Version v4.2.1.2)
Ich habe eine CardEntity mit drei "blinds" Alias und einem "dimmer" Alias. Auf der Übersichtsseite kann ich die Markisen super bedienen, der Pfeil nach unten bewegt die Markise nach unten, der Pfeil nach oben bewegt sie nach oben und das Rechteck stoppt die Bewegung. Alles super, wie es sein soll.
Gehe ich allerdings auf die Detailsseite einer Markise, so ist der "Pfeil runter" grau, obwohl die Markise ganz oben ist und umgekehrt die "Pfeil rauf" ist grau, obwohl die Markise ganz unten ist. Das bedeutet, dass die Markise über die Detailseite nicht steuerbar ist, wenn sie auf 0% oder 100% steht. Bei Werten zwischen 1% und 99% sind beide Pfeile aktiv.
Definition CardEntity:
Alias:
Mache ich was falsch?
Auf der Übersichtsseite werden die Pfeile nicht über den Öffnungsgrad gesteuert, dadurch sind sie immer bedienbar.
Auf der Detailpage ist bei 0% down gesperrt und bei 100% up. welche Stellung ist den bei dir 100%?
-
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
welche Stellung ist den bei dir 100%?
ganz unten.
Edit:
Dann muss ich wahrscheinlich diese Zeilen ändern, oder?
let icon_up_status = getState(id + '.ACTUAL').val != 100 ? 'enable' : 'disable'; let icon_stop_status = 'enable'; let icon_down_status = getState(id + '.ACTUAL').val != 0 ? 'enable' : 'disable'; -
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
welche Stellung ist den bei dir 100%?
ganz unten.
Edit:
Dann muss ich wahrscheinlich diese Zeilen ändern, oder?
let icon_up_status = getState(id + '.ACTUAL').val != 100 ? 'enable' : 'disable'; let icon_stop_status = 'enable'; let icon_down_status = getState(id + '.ACTUAL').val != 0 ? 'enable' : 'disable';okay, dann ist das Verhalten erstmal normal und der Fehler liegt nicht bei dir.
könnest du die Laufrichtung vom Rolladen ändern?
oder wie schon schreibst die Codezeilen anpassen, dann aber immer bei jedem Update. -
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
welche Stellung ist den bei dir 100%?
ganz unten.
Edit:
Dann muss ich wahrscheinlich diese Zeilen ändern, oder?
let icon_up_status = getState(id + '.ACTUAL').val != 100 ? 'enable' : 'disable'; let icon_stop_status = 'enable'; let icon_down_status = getState(id + '.ACTUAL').val != 0 ? 'enable' : 'disable';was für eine Steuerung benutzt du denn?
-
okay, dann ist das Verhalten erstmal normal und der Fehler liegt nicht bei dir.
könnest du die Laufrichtung vom Rolladen ändern?
oder wie schon schreibst die Codezeilen anpassen, dann aber immer bei jedem Update.@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
könnest du die Laufrichtung vom Rolladen ändern?
oder wie schon schreibst die Codezeilen anpassen, dann aber immer bei jedem Update.Hmmm, die zweite Option ist natürlich unschön, weil man beim Update immer daran denken muss. Ich denke, dass ich die Prozente einfach im Alias umrechne/umkehre. So wie ich das jetzt überblicke, gibt es dann keine weiteren Seiteneffekte, außer dass der Slider dann andersrum funktioniert.
was für eine Steuerung benutzt du denn?
Ich habe eine Warema Steuerung und habe mir eine Funk/MQTT Bridge gebaut. Theoretisch könnte ich hier auch anpacken, aber der Aufwand wäre ungleich höher.
Vielen Dank erstmal!
-
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
könnest du die Laufrichtung vom Rolladen ändern?
oder wie schon schreibst die Codezeilen anpassen, dann aber immer bei jedem Update.Hmmm, die zweite Option ist natürlich unschön, weil man beim Update immer daran denken muss. Ich denke, dass ich die Prozente einfach im Alias umrechne/umkehre. So wie ich das jetzt überblicke, gibt es dann keine weiteren Seiteneffekte, außer dass der Slider dann andersrum funktioniert.
was für eine Steuerung benutzt du denn?
Ich habe eine Warema Steuerung und habe mir eine Funk/MQTT Bridge gebaut. Theoretisch könnte ich hier auch anpacken, aber der Aufwand wäre ungleich höher.
Vielen Dank erstmal!
@marc-berg sagte in SONOFF NSPanel mit Lovelace UI:
Ich habe eine Warema Steuerung und habe mir eine Funk/MQTT Bridge gebaut.
ich habe hier auch zwei Rollläden mit Warema Funkmotoren, könnte ich die auch mit deiner Bridge steuern??
-
@marc-berg sagte in SONOFF NSPanel mit Lovelace UI:
Ich habe eine Warema Steuerung und habe mir eine Funk/MQTT Bridge gebaut.
ich habe hier auch zwei Rollläden mit Warema Funkmotoren, könnte ich die auch mit deiner Bridge steuern??
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
ich habe hier auch zwei Rollläden mit Warema Funkmotoren, könnte ich die auch mit deiner Bridge steuern??
Klar, das geht dann aber nur mit dem Warema-Stick, der auch für die Programmierung notwendig ist. Und: ich habe es als Docker Container erstellt, weil es besser in meine Umgebung passt. Liegt hier: https://github.com/Marc-Berg/wms2mqtt und ist ein Fork, den ich von den ganzen HomeAssistant-Funktionen befreit und noch angepasst habe.
-
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
ich habe hier auch zwei Rollläden mit Warema Funkmotoren, könnte ich die auch mit deiner Bridge steuern??
Klar, das geht dann aber nur mit dem Warema-Stick, der auch für die Programmierung notwendig ist. Und: ich habe es als Docker Container erstellt, weil es besser in meine Umgebung passt. Liegt hier: https://github.com/Marc-Berg/wms2mqtt und ist ein Fork, den ich von den ganzen HomeAssistant-Funktionen befreit und noch angepasst habe.
@marc-berg
okay, danke werde mir das mal ansehen und dich ggf. direkt an schreiben. -
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
welche Stellung ist den bei dir 100%?
ganz unten.
Edit:
Dann muss ich wahrscheinlich diese Zeilen ändern, oder?
let icon_up_status = getState(id + '.ACTUAL').val != 100 ? 'enable' : 'disable'; let icon_stop_status = 'enable'; let icon_down_status = getState(id + '.ACTUAL').val != 0 ? 'enable' : 'disable';@marc-berg sagte in SONOFF NSPanel mit Lovelace UI:
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
welche Stellung ist den bei dir 100%?
ganz unten.
Edit:
Dann muss ich wahrscheinlich diese Zeilen ändern, oder?
let icon_up_status = getState(id + '.ACTUAL').val != 100 ? 'enable' : 'disable'; let icon_stop_status = 'enable'; let icon_down_status = getState(id + '.ACTUAL').val != 0 ? 'enable' : 'disable';@Armilar wäre es nicht an uns hier einen Parameter oder eine Konfiguration zu etablieren, mit der man das entsprechend umkehren kann? vermutlich wird das ja nicht der letzte Hersteller sein, bei dem wir es so benötigen.
Vor allem, was ist wenn wir es mixed haben, also beide Fälle von unterschiedlichen Geräten benötigt werden. -
@marc-berg sagte in SONOFF NSPanel mit Lovelace UI:
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
welche Stellung ist den bei dir 100%?
ganz unten.
Edit:
Dann muss ich wahrscheinlich diese Zeilen ändern, oder?
let icon_up_status = getState(id + '.ACTUAL').val != 100 ? 'enable' : 'disable'; let icon_stop_status = 'enable'; let icon_down_status = getState(id + '.ACTUAL').val != 0 ? 'enable' : 'disable';@Armilar wäre es nicht an uns hier einen Parameter oder eine Konfiguration zu etablieren, mit der man das entsprechend umkehren kann? vermutlich wird das ja nicht der letzte Hersteller sein, bei dem wir es so benötigen.
Vor allem, was ist wenn wir es mixed haben, also beide Fälle von unterschiedlichen Geräten benötigt werden.ja stimmt. Bin ehrlich gesagt selbst überrascht, dass ich da keinen minValue und maxValue berücksichtigt habe. Dann könnte man auch 0% / 100% drehen und über die Scale wäre der Slider auch korrekt...
Kommt mit dem nächsten Release...
-
ja stimmt. Bin ehrlich gesagt selbst überrascht, dass ich da keinen minValue und maxValue berücksichtigt habe. Dann könnte man auch 0% / 100% drehen und über die Scale wäre der Slider auch korrekt...
Kommt mit dem nächsten Release...
@armilar sagte in SONOFF NSPanel mit Lovelace UI:
Kommt mit dem nächsten Release...
Das wäre natürlich super. Habe jetzt festgestellt, dass bei meinen SOMFY Rolläden das Verhalten das Gleiche ist, also 100% = ganz unten. Da ich mich aber gerade beim Aufbau befinde, bin ich darüber noch nicht gestolpert.
-
Hallo, ich hab nochmal eine (vielleicht blöde Frage), bisher hab ich ja alles mit einem ESP32 als DEV Panel gemacht, allerdings ist heute mein erstes richtiges Panel angekommen.
Hab alles vorbereitet zum Flashen, was mir allerdings trotz lesen der Anleitung und mehrfachem anschauen der Vido-Anleitung nich so ganz klar ist, ist?
Wann kann ich den den FTDI Adapter abmachen und das Panel wieder zusammenbauen um dann weiter zumachen?
In dem Video von Matthias is das Panel dann aufeinmal wie durch Zauberhand wieder zusammengebaut und hängt am ganz normalen Strom.
Vielleicht kann ja einer nochmal kurz erklären was alles mit dem FTDI-Adapter gemacht werden muß und wann das Panel wieder zusammengebaut werden kann.
-
Hallo, ich hab nochmal eine (vielleicht blöde Frage), bisher hab ich ja alles mit einem ESP32 als DEV Panel gemacht, allerdings ist heute mein erstes richtiges Panel angekommen.
Hab alles vorbereitet zum Flashen, was mir allerdings trotz lesen der Anleitung und mehrfachem anschauen der Vido-Anleitung nich so ganz klar ist, ist?
Wann kann ich den den FTDI Adapter abmachen und das Panel wieder zusammenbauen um dann weiter zumachen?
In dem Video von Matthias is das Panel dann aufeinmal wie durch Zauberhand wieder zusammengebaut und hängt am ganz normalen Strom.
Vielleicht kann ja einer nochmal kurz erklären was alles mit dem FTDI-Adapter gemacht werden muß und wann das Panel wieder zusammengebaut werden kann.
@icebear sagte in SONOFF NSPanel mit Lovelace UI:
Wann kann ich den den FTDI Adapter abmachen und das Panel wieder zusammenbauen um dann weiter zumachen?
Sobald die Meldung "Flashing is complete" angezeigt wird, kannst du das Panel gefahrlos vom Strom nehmen und zusammenbauen.
-
@icebear sagte in SONOFF NSPanel mit Lovelace UI:
Wann kann ich den den FTDI Adapter abmachen und das Panel wieder zusammenbauen um dann weiter zumachen?
Sobald die Meldung "Flashing is complete" angezeigt wird, kannst du das Panel gefahrlos vom Strom nehmen und zusammenbauen.
Ich danke dir.
-
Guten Morgen
Ich hab heute morgen mein NSPanel geflashed, das hat auch soweit funktioniert und er sagt 'Installation complete'.
Dann hab ich den FTDI Adapter abgemacht und das Panel zusammengebaut und an Strom angeschloßen.
Es passiert aber gar nichts nachdem ich den Stecker vom Kabel in die Steckdose gesteckt hab, das Display bleibt aus.
Nochmal alles auseinander gebaut nochmal geflashed, das gleiche wieder.
Hat einer eine Idee oder is das Panel kaputt?
-
Guten Morgen
Ich hab heute morgen mein NSPanel geflashed, das hat auch soweit funktioniert und er sagt 'Installation complete'.
Dann hab ich den FTDI Adapter abgemacht und das Panel zusammengebaut und an Strom angeschloßen.
Es passiert aber gar nichts nachdem ich den Stecker vom Kabel in die Steckdose gesteckt hab, das Display bleibt aus.
Nochmal alles auseinander gebaut nochmal geflashed, das gleiche wieder.
Hat einer eine Idee oder is das Panel kaputt?
@icebear sagte in SONOFF NSPanel mit Lovelace UI:
Hat einer eine Idee oder is das Panel kaputt?
Direkt nach dem Flashen bleibt das Display dunkel, das ist korrekt. Du musste jetzt die weiteren Schritte durchführen, die in jeder Beschreibung enthalten sind.
z.B. an dieser Stelle:
-
ja stimmt. Bin ehrlich gesagt selbst überrascht, dass ich da keinen minValue und maxValue berücksichtigt habe. Dann könnte man auch 0% / 100% drehen und über die Scale wäre der Slider auch korrekt...
Kommt mit dem nächsten Release...
@armilar
Gibt es eigentlich die Möglichkeit, anstatt der Wettervorhersage am Screensaver zyklisch andere Werte anzeigen zu lassen?
Also wenn ich zB eine der 4 ScreensaverEntity zum anzeigen der aktuellen PV Leistung verwende, dann würde ich gerne nach ein paar Sekunden zB die Tagesproduktion sehen.Danke im Voraus für eine Info!


