NEWS
SONOFF NSPanel mit Lovelace UI
-
Der Fehler tritt bei meinem NSPanel auch wieder mit der Tasmota 14.6.0 auf. Folgende Vorgehensweise funktioniert aber:
Bei mir funktionieren 4.7.1 und 4.7.2 (ist die DEV und aktuell nur eu-Version)
Falls mal bei 99% schluss, dann durchstarten und neu flashen...
-
-
https://forum.iobroker.net/post/1244117
@ticaki hatte Ende Januar zwei Möglichkeit beschrieben, wie die Icons dynamisch geändert werden können. Betrifft dann auch die Farben.
Die aufgebohrte Temperaturanzeige (unteres Beispiel) sollte adaptiert auch eine Batterie abbilden können...
Im oberen Beispiel kannst du das ebenfalls über ein "externes Skript" realisieren und die Icons entsprechend deines Lade-Status steuern.
Eigene Funktionen in das Backend zu implementieren ist aufgrund der Wartbarkeit nicht wirklich zu empfehlen, es sei denn diese sind so ausgereift, dass sie den Funktionsumfang erweitern... Auch fällt es mir schwer, bei Fehlern aus solchen Funktionen später support zu leisten....
-
Habe den Link schon mal im Wiki unter Screensaver verankert. Werde die Tage noch etwas Text dazu schreiben.
-
Ha, ich bin net der einzige der so bekloppt mit seiner Batterie ist
@Snigga
Wenn der Adapter mal soweit ist, geht das mit wenigen handgriffen. Das schöne Wetter und meine mangelnde Lust bei diesem in der Bude zu sitzen, verzögern das jedoch.Alternative Möglichkeit:
Du erzeugt einen State für Zeichenketten. Dazu ein Skript (typescript). Musst die 3 Datenpunkt ids anpassen.
bydhvs.0.State.SOC
: Ladestand
bydhvs.0.State.Power_Delivery
: positive zahl -> es wird geladen
0_userdata.0.zuhause.k.technik.Battery_NsPanel_Icon
: da wird das icon hingeschriebenAnpassen der 5 im Skript - mein Akku ist bei einem ladestand von 5% "leer".
on({id:'bydhvs.0.State.SOC', change:'any'}, (dp)=> { setTimeout((dp) => setBatteryIcon(dp.state.val),100, dp) }) setBatteryIcon(getState('bydhvs.0.State.SOC').val); function setBatteryIcon(val: number): void { const power = getState('bydhvs.0.State.Power_Delivery').val > 0; let result = 'battery' if (power) result += '-charging' if (val <= 5) result += '-outline'; else if (val < 95) result += '-'+String(Math.round(val /10) * 10) setState('0_userdata.0.zuhause.k.technik.Battery_NsPanel_Icon', result, true); }
Das erzeugt 19 verschiedene icons je nach laden, entladen und füllstand - 18 von 0 - 90 und 1 für 100 - da kann man ja nicht mehr laden.
Wird nur aktualisiert wenn die SOC sich ändern.
EDIT: Ach die Datenpunkt-ID in die du das icon schreibst mußt du dann bei IconOn oder wie das beim Screensaver heißt eintragen, bei OFF muß null stehen - letzteres glaube ich nur.
-
@armilar das hat leider bei mir nicht funktioniert. Auch glaube ich, dass ich die EU Version habe (jedenfalls war mir der Unterscheid nicht klar und ich hab es hier bestellt). Habe beide Befehle ausprobiert. Wäre der Befehl für die EU Version korrekt?
FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v4.7.2.tft
Bei mir beginnt der Flashvorgang aber auch erst gar nicht... jedenfalls bewegt sich da kein Balken und kein Fortschritt wird angezeigt.
Hier nochmal mit Versuch 4.7.1 der Log vom Panel:00:05:05.186 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v4.7.1.tft 00:05:05.194 MQT: SmartHome/NSPanel_1/stat/RESULT = {"FlashNextion":"Done"} 00:05:05.218 FLH: host: nspanel.pky.eu, port: 80, get: /lovelace-ui/github/nspanel-v4.7.1.tft 00:05:07.387 FLH: Send (High Speed) flash start 00:05:07.740 BRY: Exception> 'type_error' - unsupported operand type(s) for <: 'nil' and 'int'
Und hier noch das Bild vom Panel, dass sofort beim Flashvorgang erscheint... aber ohne Änderung:
-
Das ist der falsche Link.
http://nspanel.de/nspanel-v4.7.2.tft
iobroker hat ein weiter entwickeltes TFT.
-
@ticaki sagte in SONOFF NSPanel mit Lovelace UI:
Das will auch nicht. Habe sogar ein Downgrade auf tasmota 13.4.0. durchgeführt.
00:01:23.762 CMD: FlashNextion http://nspanel.de/nspanel-v4.7.2.tft 00:01:23.775 MQT: SmartHome/NSPanel_1/stat/RESULT = {"FlashNextion":"Done"} 00:01:23.820 FLH: host: nspanel.de, port: 80, get: /nspanel-v4.7.2.tft 00:01:25.997 FLH: Send (High Speed) flash start 00:01:26.350 BRY: Exception> 'type_error' - unsupported operand type(s) for <: 'nil' and 'int'
-
Mal vom strom getrennt? Das Display an sich wird nur so "resetet".
-
@ticaki habe ich auch schon dran gedacht. Das könnte klappen... zumal die IP bisher immer gleich geblieben ist... probiere ich aus.
Edit.: ohne Erfolg. Ich bleibe erstmal bei Version 53. Vorgeschlagen wird 56 V4.7.2 -
So müsste es aber bei deinem Tasmota-Fehler
BRY: Exception> 'type_error' - unsupported operand type(s) for <: 'nil' and 'int'
funktionieren:
Das tritt in der Regel nur auf, wenn statische IP's vergeben sind
-
IP des Panels merken
-
backlog savedata 1; ipaddress1 0.0.0.0; savedata 0; restart 1
-
nach dem Reboot:
FlashNextion http://nspanel.de/nspanel-v4.7.2.tft
-
wenn erfolgreich geflasht, dann:
backlog savedata 1; ipaddress1 <gemerkte-IP>; savedata 0; restart 1
-