NEWS
SONOFF NSPanel mit Lovelace UI
-
Update v4.3.3.13
Dieses mal sind die Media-Player dran
Was ist neu:
Wenn der ParameteralwaysOnDisplay: true
im PageItem wie im nachfolgenden Beispiel mitgegeben wird, dann:- wird der Screensaver, wenn man auf dieser
cardMedia
ist, nicht mehr aktiv - werden die Updates werden gesendet, ohne dass die komplette
cardMedia
gerendert wird - Der
Sonos Player
kann jetzt auch Shuffle und Repeat (hat sich aber bisher auch keiner gemeldet, dass das nicht funktionierte )
Um wieder in den Screensaver-Modus zu gelangen, muss diecardMedia
über die Navigation verlassen werden...
Beispiel (okay - eigentlich benutze ich den genau "so" ) :
let SpotifyPremium = <PageMedia> { 'type': 'cardMedia', 'heading': 'Spotify-Premium', 'useColor': true, 'items': [<PageItem>{ id: AliasPath + 'Media.PlayerSpotifyPremium', adapterPlayerInstance: "spotify-premium.0.", speakerList: ['Überall','Echo Spot Buero','Esszimmer','Heimkino','Gartenhaus','Echo Dot Hobby', 'Echo Dot OG Badezimmer','Echo Dot Küche','Echo Dot Gästezimmer','Echo Dot Badezimmer', 'Echo Plus Esszimmer','Echo Esszimmer','Lenovo-W11'], playList: ['PartyPlaylist','Sabaton Radio','Rock Party','This Is Nightwish','Metal Christmas', 'John Diva & the Rockets of Love Radio','Dein Mixtape 2', 'Hartmann Radio', 'This Is Hartmann', 'This Is Saltatio Mortis','This Is Die Ärzte', 'This Is Alter Bridge', 'This Is Foo Fighters', 'Discover Weekly','Merry Axemas','Neue Deutsche Welle','Top-Songs - Global'], repeatList: ['off','context','track'], equalizerList: ['Bassboost','Klassik','Dance', 'Deep', 'Electronic', 'Flat', 'Hip-Hop', 'Rock', 'Metal', 'Jazz', 'Latin', 'Tonstärke', 'Lounge', 'Piano'], colorMediaIcon: colorSpotify, colorMediaArtist: Yellow, colorMediaTitle: Yellow, alwaysOnDisplay: true, autoCreateALias: true }] };
Also einfach im PageItem
alwaysOnDisplay: true,
hinzufügen und es läuft... Mache auch noch Screens von der sehr flüssigen Bedienung der Media-PlayerWo kann es noch Probleme geben?
Leider ist es mir nicht möglich die cardMedia mit dem Squeezebox-RPC oder Volumio zu testen. Ich gehe davon aus, dass sie analog der anderen Media-Player funktionieren, kann es aber nicht wirklich beantwortenUpdate auf v4.3.3.13
https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.tsEs reicht, den unteren Teil ab:
zu tauschen.LG
@TT-Tom & ArmilarEDIT: Irgendwie kommt mir gerade in den Sinn, ein popupTimer aufzuschalten, wenn ein Alexa-Timer an ist
- wird der Screensaver, wenn man auf dieser
-
@armilar said in SONOFF NSPanel mit Lovelace UI:
Falls noch nicht passiert, würde ich mal den kompletten ioBroker neu starten...
Manchmal sind es die einfachen Dinge, danke! Dachte ich hätte das schon längst probiert, aber dem war wohl nicht so. Funktioniert jetzt ohne Probleme mit dem Abspeichern.
NS-Panel mit Media Player läuft auf jeden Fall. Allerdings ist die Betätigung des Play/Pause Buttons nicht wirklich zuverlässig. Mal reagiert er prompt, mal gar nicht, mal zeitverzögert. Ist das bekannt? Bin aktuell auf Skript Version 4.3.3.9. -
Sieh mal einen Post oben drüber... Das ist ein cardMedia-Update (v4.3.3.13)
Sollte flüssiger sein, wenn der Parameter
alwaysOnDisplay: true
benutzt wird.Jedoch werden die Updates immer dann gemacht, wenn der jeweilige Adapter auch wirklich den Datenpunkt geschrieben hat. Der Zeitversatz kommt also durch die Media-Adapter in Kombination mit der Systemgeschwindigkeit zustande. Also auch Latenzen durch die Clouds der Anbieter.
-
Kleiner Zusatz zum Update...
Der Sonos-Player wird in den nächsten Tagen noch eine Playlist und eine Tracklist bekommen...
-
Moin zusammen,
ich habe ein Problem mit den Pages, die auf dem Panel angezeigt werden sollen. Grundsätzlich funktioniert alles, aber irgendwie funktioniert der Button, um auf die nächste Seite zu kommen, nicht so, wie er soll.
Beispiel: Wenn das Panel gestartet wurde und ich die Screensaver-Seite antippe, dann wird mir die erste Seite angezeigt. Ich komme dann auch mit dem Pfeil nach rechts zur nächsten Seite. Dort komme ich mit dem Pfeil nach rechts aber nicht weiter - es sei denn ich klicke irgendein Bedienelement. Danach funktioniert der Link zur nächsten Seite. Es sieht so aus, als wäre der Link vorher nicht definiert. Genauso verhält es sich mit dem Button nach links.Alle Versionen (Skript, Berry driver, Tasmota und Display) sollten aktuell sein. Außer zwei Warnings beim Start vom Skript sieht auch alles gut aus.
Hier mal die beiden Warnings:
javascript.0 (924856) script.js.NSPanels.Panel_Flur: error at function check_updates: Cannot read properties of null (reading 'split')
javascript.0 (924856) script.js.NSPanels.Panel_Flur: error setState in function get_tasmota_status0Cannot read properties of undefined (reading 'Version')
Hab das mal im Video festgehalten. Hoffe, dass jeder das so ansehen kann:
Link zum Video -
Die beiden Fehler kommen daher, dass das Rate-Limit bei Github für heute aufgebraucht, d.h. die Updates kommen leer zurück und es kann keine Versionsnummer ermittelt werden... Ist aber auch kein Problem, da ja alles vorhanden sein sollte... Morgen sind die Warnungen wieder weg...
Ich vermute mal, dass du vergessen hast einen Haken aus der MQTT-Instanz herauszunehmen.
Sieh mal bitte nach:
Nur bei Änderungen publizieren
darf auf keinen Fall gesetzt sein... -
Guten Morgen!
@armilar said in SONOFF NSPanel mit Lovelace UI:
Nur bei Änderungen publizieren darf auf keinen Fall gesetzt sein...
Vielen Dank für die schnelle Hilfe. Ich habe gerade mal nachgesehen und der Haken war gesetzt. Ob es dies nun war, kann ich erst heute Abend testen. Aber vermutlich war es ja das dann. Wie gesagt: Vielen Dank für den schnellen Support - ich bin gestern Nachmittag fast daran verzweifelt...
@armilar said in SONOFF NSPanel mit Lovelace UI:
Morgen sind die Warnungen wieder weg...
Habe gerade das Skript mal neu gestartet, aber die Warnungen sind noch da. Aber das stört mich nicht wirklich - ich schaue eh von Zeit zu Zeit immer mal überall durch, ob man was auf den neusten Stand bringen kann.
-
@cluni sagte in SONOFF NSPanel mit Lovelace UI:
Habe gerade das Skript mal neu gestartet, aber die Warnungen sind noch da. Aber das stört mich nicht wirklich - ich schaue eh von Zeit zu Zeit immer mal überall durch, ob man was auf den neusten Stand bringen kann.
Morgen
habe die aktuelle Scriptversion mal gestartet, ohne Probleme bzw. Warnungen. Welche Version hast du grade am laufen, kannst du mal in die Tasmota Konsole schauen, ob Daten gesendet werden. sollte so aussehen.
09:26:38.078 MQT: SmartHome/NSPanel_1/tele/STATE = {"Time":"2023-11-27T09:26:38","Uptime":"8T16:15:28","UptimeSec":749728,"Heap":85,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":33,"Berry":{"HeapUsed":53,"Objects":652},"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"TomTom24","BSSId":"2C:91:AB:AF:46:A7","Channel":2,"Mode":"11n","RSSI":68,"Signal":-66,"LinkCount":14,"Downtime":"0T00:02:35"}} 09:26:38.099 MQT: SmartHome/NSPanel_1/tele/SENSOR = {"Time":"2023-11-27T09:26:38","ANALOG":{"Temperature1":-3.6},"ESP32":{"Temperature":70.0},"TempUnit":"C"} 09:26:46.233 MQT: SmartHome/NSPanel_1/stat/STATUS0 = {"Status":{"Module":0,"DeviceName":"NSPanelBuero","FriendlyName":["NSPanelBuero",""],"Topic":"NSPanel_1","ButtonTopic":"0","Power":3,"PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0,"InfoRetain":0,"StateRetain":0,"StatusRetain":0},"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota32/release/tasmota32-DE.bin","RestartReason":"Software reset CPU","Uptime":"8T16:15:36","StartupUTC":"2023-11-18T16:11:10","Sleep":50,"CfgHolder":4617,"BootCount":32,"BCResetTime":"2023-01-05T06:15:40","SaveCount":277},"StatusFWR":{"Version":"13.2.0(tasmota32)","BuildDateTime":"2023.10.19 09:11:03","Core":"2_0_14","SDK":"4.4.6.231011","CpuFrequency":160,"Hardware":"ESP32-D0WD-V3 v3.0","CR":"452/699"},"StatusLOG":{"SerialLog":2,"WebLog":2,"MqttLog":2,"SysLog":0,"LogHost":"192.168.178.121","LogPort":514,"SSId":["TomTom24",""],"TelePeriod":300,"Resolution":"558180C0","SetOption":["00008009","2805C80001000600003C5A0A192800000000","00000080","00006000","00004000","00000001"]},"StatusMEM":{"ProgramSize":1873,"Free":1006,"Heap":87,"StackLowMark":4,"PsrMax":0,"PsrFree":0,"ProgramFlashSize":4096,"FlashSize":4096,"FlashChipId":"16405E","FlashFrequency":40,"FlashMode":"DIO","Features":["00000407","9F9AD7DF","0015A001","B7F7BFCF","05DA9BC4","E0360DC7","480840D2","20200000","D4BC482D","010A80B1"],"Drivers":"1,2,3,4,5,7,8,9,10,11,12,14,16,17,20,21,24,26,27,29,34,35,38,50,52,59,60,62,63,66,67,68,82,86,87,88","Sensors":"1,2,3,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,26,31,34,37,39,40,42,43,45,51,52,55,56,58,59,64,66,67,74,85,92,95,98,103,105,109,127","I2CDriver":"7,8,9,10,11,12,13,14,15,17,18,20,24,29,31,36,41,42,44,46,48,58,62,65,69,76,77,82"},"StatusNET":{"Hostname":"NSPanelBuero","IPAddress":"192.168.178.101","Gateway":"192.168.178.1","Subnetmask":"255.255.255.0","DNSServer1":"192.168.178.1","DNSServer2":"2a02:8109:a301:a900:b2f2:8ff:fe43:c159","Mac":"7C:87:CE:C6:1B:74","IP6Global":"2a02:8109:a301:a900:7e87:ceff:fec6:1b74","IP6Local":"fe80::7e87:ceff:fec6:1b74","Ethernet":{"Hostname":"","IPAddress":"0.0.0.0","Gateway":"0.0.0.0","Subnetmask":"0.0.0.0","DNSServer1":"192.168.178.1","DNSServer2":"2a02:8109:a301:a900:b2f2:8ff:fe43:c159","Mac":"00:00:00:00:00:00","IP6Global":"","IP6Local":""},"Webserver":2,"HTTP_API":1,"WifiConfig":4,"WifiPower":17.0},"StatusMQT":{"MqttHost":"192.168.178.121","MqttPort":1886,"MqttClientMask":"NSPanelBüro","MqttClient":"NSPanelBüro","MqttUser":"Iobroker","MqttCount":33,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30,"SOCKET_TIMEOUT":4},"StatusTIM":{"UTC":"2023-11-27T08:26:46","Local":"2023-11-27T09:26:46","StartDST":"2023-03-26T02:00:00","EndDST":"2023-10-29T03:00:00","Timezone":"+01:00","Sunrise":"08:16","Sunset":"16:58"},"StatusSNS":{"Time":"2023-11-27T09:26:46","ANALOG":{"Temperature1":-3.8},"ESP32":{"Temperature":70.0},"TempUnit":"C"},"StatusSTS":{"Time":"2023-11-27T09:26:46","Uptime":"8T16:15:36","UptimeSec":749736,"Heap":86,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":21,"MqttCount":33,"Berry":{"HeapUsed":53,"Objects":652},"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"TomTom24","BSSId":"2C:91:AB:AF:46:A7","Channel":2,"Mode":"11n","RSSI":68,"Signal":-66,"LinkCount":14,"Downtime":"0T00:02:35"}}}
zusätzlich kannst du im Browser mal eingeben:
http:// ip vom Panel /cm?cmnd=Status0
-
Ja, wird diese Zeile sein:
Der Datenpunkt
currentVersion
wird leer sein. Könnten wir noch abfangen und etwas schöner ausgeben.@TT-Tom liegt da schon richtig. Einfach mal den Status abrufen und in den Datenpunkt der Tasmota-Version sehen...
Das Limit und die Warnung des 2. Fehlers kommt durch zu viele Starts des Skriptes zustande...
Ist, obwohl ich viel am Testen war, aber ebenfalls ohne Warnungen...
Hat aber keinen Einfluss auf die Funktionalität des NSPanels
-
@tt-tom said in SONOFF NSPanel mit Lovelace UI:
Welche Version hast du grade am laufen, kannst du mal in die Tasmota Konsole schauen
Sieht bei mir so aus:
11:21:05.953 MQT: SmartHome/NSPanel_Flur/tele/STATE = {"Time":"2023-11-27T11:21:05","Uptime":"0T14:00:09","UptimeSec":50409,"Heap":122,"SleepMode":"Dynamic","Sleep":0,"LoadAvg":999,"MqttCount":2,"Berry":{"HeapUsed":35,"Objects":475},"POWER1":"OFF","POWER2":"OFF","Wifi":{"AP":1,"SSId":"Virus4free","BSSId":"38:10:D5:04:65:36","Channel":7,"Mode":"11n","RSSI":100,"Signal":-45,"LinkCount":2,"Downtime":"0T00:00:07"}} 11:21:05.970 MQT: SmartHome/NSPanel_Flur/tele/SENSOR = {"Time":"2023-11-27T11:21:05","ANALOG":{"Temperature1":22.6},"ESP32":{"Temperature":53.9},"TempUnit":"C"} 11:21:26.802 MQT: SmartHome/NSPanel_Flur/stat/STATUS0 = {"Status":{"Module":0,"DeviceName":"Tasmota","FriendlyName":["Tasmota",""],"Topic":"NSPanel_Flur","ButtonTopic":"0","Power":0,"PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0,"InfoRetain":0,"StateRetain":0,"StatusRetain":0},"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota32/release/tasmota32-nspanel.bin","RestartReason":"Software reset CPU","Uptime":"0T14:00:30","StartupUTC":"2023-11-26T19:20:56","Sleep":0,"CfgHolder":4617,"BootCount":59,"BCResetTime":"2023-04-12T07:44:20","SaveCount":1218},"StatusFWR":{"Version":"13.2.0(nspanel)","BuildDateTime":"2023-10-19T09:05:12","Core":"2_0_14","SDK":"4.4.6.231011","CpuFrequency":160,"Hardware":"ESP32-D0WD-V3 v3.0","CR":"519/699"},"StatusLOG":{"SerialLog":2,"WebLog":2,"MqttLog":2,"SysLog":0,"LogHost":"192.168.0.88","LogPort":514,"SSId":["Virus4free","Telemeasurement"],"TelePeriod":300,"Resolution":"558180C0","SetOption":["00008009","2805C80001000600003C5A0A192800000000","00000080","20006000","00004000","00000001"]},"StatusMEM":{"ProgramSize":1872,"Free":1007,"Heap":114,"StackLowMark":3,"PsrMax":0,"PsrFree":0,"ProgramFlashSize":4096,"FlashSize":4096,"FlashChipId":"16405E","FlashFrequency":40,"FlashMode":"DIO","Features":["00000809","9F9AD7DF","0015A001","B7F7BFCF","05DA9BC4","E0360DC7","480840D2","20200000","D4BC482D","010A80B1"],"Drivers":"1,2,3,4,5,7,8,9,10,11,12,14,16,17,20,21,24,26,27,29,34,35,38,50,52,59,60,62,63,66,67,68,82,86,87,88","Sensors":"1,2,3,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,26,31,34,37,39,40,42,43,45,51,52,55,56,58,59,64,66,67,74,85,92,95,98,103,105,109,127","I2CDriver":"7,8,9,10,11,12,13,14,15,17,18,20,24,29,31,36,41,42,44,46,48,58,62,65,69,76,77,82"},"StatusNET":{"Hostname":"NSPanel-Flur-0792","IPAddress":"192.168.0.126","Gateway":"192.168.0.1","Subnetmask":"255.255.255.0","DNSServer1":"192.168.0.1","DNSServer2":"2003:c9:1f1f:3d00:7642:7fff:fe22:1eae","Mac":"80:64:6F:C3:A3:18","IP6Global":"2003:c9:1f1f:3d00:8264:6fff:fec3:a318","IP6Local":"fe80::8264:6fff:fec3:a318","Ethernet":{"Hostname":"","IPAddress":"0.0.0.0","Gateway":"0.0.0.0","Subnetmask":"0.0.0.0","DNSServer1":"192.168.0.1","DNSServer2":"2003:c9:1f1f:3d00:7642:7fff:fe22:1eae","Mac":"00:00:00:00:00:00","IP6Global":"","IP6Local":""},"Webserver":2,"HTTP_API":1,"WifiConfig":4,"WifiPower":17.0},"StatusMQT":{"MqttHost":"192.168.0.88","MqttPort":1883,"MqttClientMask":"DVES_%06X","MqttClient":"DVES_C3A318","MqttUser":"tasmota","MqttCount":2,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30,"SOCKET_TIMEOUT":4},"StatusTIM":{"UTC":"2023-11-27T09:21:26","Local":"2023-11-27T11:21:26","StartDST":"2023-03-26T02:00:00","EndDST":"2023-10-29T03:00:00","Timezone":"+02:00","Sunrise":"09:16","Sunset":"17:58"},"StatusSNS":{"Time":"2023-11-27T11:21:26","ANALOG":{"Temperature1":22.6},"ESP32":{"Temperature":53.9},"TempUnit":"C"},"StatusSTS":{"Time":"2023-11-27T11:21:26","Uptime":"0T14:00:30","UptimeSec":50430,"Heap":112,"SleepMode":"Dynamic","Sleep":0,"LoadAvg":999,"MqttCount":2,"Berry":{"HeapUsed":35,"Objects":475},"POWER1":"OFF","POWER2":"OFF","Wifi":{"AP":1,"SSId":"Virus4free","BSSId":"38:10:D5:04:65:36","Channel":7,"Mode":"11n","RSSI":100,"Signal":-45,"LinkCount":2,"Downtime":"0T00:00:07"}}}
PS: Ich hab mal die Timezone korrigiert...
-
Mal so als allgemeine Frage - ich bin nicht ganz so firm in JS: Wäre es nicht möglich, dass man für die eigenen Konfigurationen irgendwo (vielleicht unter global) eine Datei anlegt, so dass man nicht jedes Mal bei einem Update vom Skript mühsam die Sachen hin und her kopieren muss? Dass dann auch dort in der eigenen (ich nenne sie mal) Config-Datei ggf. Anpassungen notwendig sein könnten, ist logisch. Aber das würde die Sache denke ich stark vereinfachen.
-
Möglich ist fast alles, nur der Aufwand ist da sehr groß und steht nicht in Relation zum Nutzen. Der Support würde auch steigen, der zu leisten wäre. Was dieser Thread auch zeigt. Wir haben den Bereich auch schon zusammengefasst und optimiert, damit ein Update nicht so kompliziert ist. Und so oft muss ja nicht mit gezogen werden, nur weil wir etwas anpassen. Erst wenn es deine Konstellation betrifft oder wir ein Breaking Change machen müssen.
Ps sind deine Daten jetzt eigentlich da oder bekommst du immer noch Fehlermeldungen?
-
@cluni sagte in SONOFF NSPanel mit Lovelace UI:
ich bin nicht ganz so firm in JS:
Muss auch nicht... Die paar Variablen im Config-Bereich kann man sicher mit Hilfe der Wiki erstellen. Den Rest muss eigentlich niemand anfassen und das steht ja auch explizit drin
Updates bedeutet eigentlich nur Copy/Paste des unteren Teils und dauert je Panel ca. 1-2 Minuten...
Wäre es nicht möglich, dass man für die eigenen Konfigurationen irgendwo (vielleicht unter global) eine Datei anlegt
Nein - da die TypeScript - Typenprüfung dann nicht mehr stattfinden kann und das wird massive Probleme im Support erzeugen, da jede fehlerhafte Variablendefinition zur Stecknadel im Heuhaufen wird...
-
-
also auspacken tut das Panel die Info
"StatusFWR":{"Version":"13.2.0(nspanel)"
wie sieht den dein Zweig von Tasmota aus??
-
@tt-tom said in SONOFF NSPanel mit Lovelace UI:
wie sieht den dein Zweig von Tasmota aus??
Ja, da sehen die Infos dürftig aus:
-
@tt-tom gibt es denn einen bestimmten Grund, warum du die "normale", deutsche Version von Tasmota benutzt und nicht die Version extra fürs NSPanel?
Dein OTA-Link: http://ota.tasmota.com/tasmota32/release/tasmota32-DE.bin
Mein OTA-Link: http://ota.tasmota.com/tasmota32/release/tasmota32-nspanel.binWo genau liegt denn der Unterschied in den Versionen?
-
Ist bei dir in der Java Instanz die SetObject Option aktiviert???
-
@tt-tom jops
-
Warum es damals für das Panel eine Extra Version gab, kann ich dir nicht hundertprozentig sagen. Aber aktuell ist es egal welche Variante du einsetzt. Ich habe auf meinen Panels auch unterschiedliche Varianten. Stell aber keine Unterschiede fest.