NEWS
Betatest NSPanel-lovelace-ui v0.2.x
-
@teletapi
Meinst Du mit Basisscript dieses:
https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/blob/main/script/example_sendTo_script_iobroker.ts
Hier noch: -
@hm_krause Den fehler hatte ich bisher noch nicht der ist mir neu. Aber ja das ist das script was durch den Adsapter erstellt werden soll natürlich unter dem passenden Ordner. hast du mal geschaut ob deine Topics passen
-
@teletapi
..und was hattest Du als Basisscript? -
@hm_krause Das gleiche wie du
-
@teletapi
und..
und...
-
@hm_krause
Oben steht woran es liegt. Irgendwas wurde umbenannt nach dem initialisieren. -
@ticaki
? -
@hm_krause
Lösche das Panel und das Skript. Dann initialisiere das Panel und führe das erstellte Skript ausBin ebenfalls unterwegs daher eher kurz anbebunden
-
@hm_krause
Der Fehler liegt im Tasmota TopicDer Adapter legt die Daten in Tasmota an, du brauchst in Tasmota nichts anpassen.
Lösche das Panel auf dem 2.Tab (NSpanel Einstellungen) und das Script im Javascript Adapter.
Dann Instanz neu starten und von vorne anlegen, mqtt einstellungen kannst du lassen.Schritt für schritt laut wiki
-
@ticaki
@teletapi
Das ändern des Panelnamens war die Lösung welche nun zum Start des Adapters führte.
Unter dem vorherigen Namen war das Script von dem Projekt
https://forum.iobroker.net/topic/58170/sonoff-nspanel-mit-lovelace-ui
angelegt.
Danke für Eure Hilfe.
Das Panel ist noch offline, dachte aber das hier minimal den Sreensaver angezeigt wird.
Leider nur "waiting for content...
Was muss ich hier noch tun? -
dein Topic stimmt laut Bildern nicht
in tasmota steht übersetzt nspanel_1/nspanel_1/%prefix%
im Adapter steht nspanel_1/%prefix%
lösche in Tasmota -> /%topic%
prüfe aber auch den Topic im Script
-
0,1 und 0,01 ergeben beide nur eine Nachkommastelle.
ja, kann den Fehler nachstellen, muss ich mir in Ruhe ansehen.
-
@hm_krause
Skript ausführen und Adapter neustarten.Das andere Projekt hat nichts mit diesem hier zu tun. ( außer den selben Betreuern)
Bin in ca 1h zuhause
-
-
prüfe im script, was hier hinter panelTopic steht, da muss
nspanel_1
stehenconst config: ScriptConfig.Config = { panelTopic: 'SmartHome/NSPanel_1', weatherEntity: 'openweathermap.0.', defaultOffColor: Off, defaultOnColor: On, defaultBackgroundColor: HMIDark, weatherAddDefaultItems: false,
der Name vom Script, muss gleich dem Namen vom Panel sein.
Script starten, danach adapter neu starten.
bitte auch mal das Log zeigen vom Scriptstart und Adapterstart.
-
@tt-tom
...vom Scriptjavascript.0 19:50:26.202 info Compiling TypeScript source script.js.nspanel-lovelace-ui_0.Panel_1 javascript.0 19:50:26.309 info source code did not change, using cached compilation result... javascript.0 19:50:26.321 info registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 19:50:26.522 info [ 'Panel for Topic: nspanel_1 Script version 0.9.1 is correct!', 'No navigation items found! This needs to be fixed!', 'done' ] javascript.0 19:50:26.588 info Stopping script script.js.nspanel-lovelace-ui_0.Panel_1
...Adapter
nspanel-lovelace-ui.0 2025-08-14 19:52:02.321 info [Panel_1] Panel startup finished! nspanel-lovelace-ui.0 2025-08-14 19:52:02.320 debug [Panel_1] Set screeensaver timeout to 2s. nspanel-lovelace-ui.0 2025-08-14 19:52:02.220 debug [Panel_1] Set screeensaver timeout to 15s. nspanel-lovelace-ui.0 2025-08-14 19:52:01.867 debug [///Adapter-Info] Switch page to visible! nspanel-lovelace-ui.0 2025-08-14 19:52:00.070 debug [controller] Panel E4_65_B8_48_80_70 created nspanel-lovelace-ui.0 2025-08-14 19:51:59.867 warn [Panel_1-navigation] Dont find navigation main page for main nspanel-lovelace-ui.0 2025-08-14 19:51:59.867 warn [Panel_1-navigation] Dont find a navigation node with name main nspanel-lovelace-ui.0 2025-08-14 19:51:59.866 warn [Panel_1-navigation] Dont find a navigation node with name main nspanel-lovelace-ui.0 2025-08-14 19:51:57.927 warn [Panel_1] is offline! nspanel-lovelace-ui.0 2025-08-14 19:51:57.919 info [Panel_1] is online! nspanel-lovelace-ui.0 2025-08-14 19:51:57.754 debug [system-notifications] Received notifications from "system.host.iob-huawei": {"system":{"categories":{},"description":{"en":"These notifications are collected by the ioBroker system and point to issues you should check and fix.","de":"Diese Benachrichtigungen werden vom ioBroker-System erfasst und weisen auf Probleme hin, die überprüft und behoben werden sollten.","ru":"Эти уведомления собираются системой ioBroker и указывают на проблемы, которые вы должны проверить и исправить.","pt":"Essas notificações são coletadas pelo sistema ioBroker e apontam para problemas que você deve verificar e corrigir.","nl":"Deze meldingen worden verzameld door het ioBroker-systeem en wijzen op problemen die u moet controleren en oplossen.","fr":"Ces notifications sont collectées par le système ioBroker et indiquent des problèmes que vous devez vérifier et résoudre.","it":"Queste notifiche vengono raccolte dal sistema ioBroker e indicano problemi che dovresti controllare e correggere.","es":"Estas notificaciones son recopiladas por el sistema ioBroker y señalan problemas que debe verificar y solucionar.","pl":"Te powiadomienia są zbierane przez system ioBroker i wskazują problemy, które należy sprawdzić i naprawić.","uk":"Ці сповіщення збираються системою ioBroker і вказують на проблеми, які ви повинні перевірити та виправити.","zh-cn":"这些通知由ioBroker系统收集,并指出您应检查并修复的问题"},"name":{"en":"System Notifications","de":"System-Benachrichtigungen","ru":"Системные уведомления","pt":"Notificações do sistema","nl":"Systeemmeldingen","fr":"Notifications système","it":"Notifiche di sistema","es":"Notificaciones del sistema","pl":"Powiadomienia systemowe","uk":"Системні сповіщення","zh-cn":"系统通知"}}} nspanel-lovelace-ui.0 2025-08-14 19:51:57.748 debug [system-notifications] Request notifications from "system.host.iob-huawei" nspanel-lovelace-ui.0 2025-08-14 19:51:57.748 debug [system-notifications] Received notifications from "system.host.Iobroker": {} nspanel-lovelace-ui.0 2025-08-14 19:51:57.725 debug [system-notifications] Request notifications from "system.host.Iobroker" nspanel-lovelace-ui.0 2025-08-14 19:51:57.713 debug [mqttClient] subscripe to: nspanel_1/stat/# nspanel-lovelace-ui.0 2025-08-14 19:51:57.711 debug [mqttClient] subscripe to: nspanel_1/tele/# nspanel-lovelace-ui.0 2025-08-14 19:51:57.711 debug [Panel_1] Panel E4_65_B8_48_80_70 is initialised! nspanel-lovelace-ui.0 2025-08-14 19:51:57.671 debug [controller] Set current Date with time: Thu Aug 14 2025 19:51:57 GMT+0200 (Central European Summer Time) nspanel-lovelace-ui.0 2025-08-14 19:51:57.606 debug [mqttClient] subscripe to: nspanel_1/stat/RESULT nspanel-lovelace-ui.0 2025-08-14 19:51:57.559 debug [controller] controller created nspanel-lovelace-ui.0 2025-08-14 19:51:57.557 debug 42818.65625k nspanel-lovelace-ui.0 2025-08-14 19:51:57.556 info [mqttClient] Connection is active. nspanel-lovelace-ui.0 2025-08-14 19:51:57.502 debug Check configuration! nspanel-lovelace-ui.0 2025-08-14 19:51:55.469 info Force an MQTT reconnect from the Nspanel with the ip 192.168.178.56 in 10 seconds! nspanel-lovelace-ui.0 2025-08-14 19:51:55.391 debug [library] Load language de nspanel-lovelace-ui.0 2025-08-14 19:51:55.390 info Raw script config found for nspanel_1 nspanel-lovelace-ui.0 2025-08-14 19:51:55.388 error [config-manager] No navigation items found! This needs to be fixed! nspanel-lovelace-ui.0 2025-08-14 19:51:55.387 debug [config-manager] Screensaver pageItems count: 17 nspanel-lovelace-ui.0 2025-08-14 19:51:55.384 warn Invalid color value: "0_userdata.0.Abfallkalender.1.color" nspanel-lovelace-ui.0 2025-08-14 19:51:55.291 info [config-manager] Start converting configuration for nspanel_1 nspanel-lovelace-ui.0 2025-08-14 19:51:55.238 info starting. Version 0.2.4 (non-npm: ticaki/ioBroker.nspanel-lovelace-ui#955fb48e830b9ffc2f648d9d50adbbde0e5318ba) in /opt/iobroker/node_modules/iobroker.nspanel-lovelace-ui, node: v20.19.4, js-controller: 7.0.6 nspanel-lovelace-ui.0 2025-08-14 19:51:50.324 info terminating nspanel-lovelace-ui.0 2025-08-14 19:51:49.837 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason nspanel-lovelace-ui.0 2025-08-14 19:51:49.836 info terminating nspanel-lovelace-ui.0 2025-08-14 19:51:49.835 info [mqttClient] Connection is closed. nspanel-lovelace-ui.0 2025-08-14 19:51:49.833 debug [///Adapter-Info] Switch page to invisible! nspanel-lovelace-ui.0 2025-08-14 19:51:49.822 info Got terminate signal TERMINATE_YOURSELF
-
Zeig mal den kompletten oberen Teil vom Skript.
-
Hab in der aktuellen Github version mal etwas mehr Log eingebaut damit das mit Topics besser zu sehen ist einmal beim startup:
... Configured panels: name#topic -> [ns_panel4#nspanel/ns_panel4], [nspanel6#nspanel/ns_panel6] ... Found 2 script configs for topics: nspanel/ns_panel4, nspanel/ns_panel6
Beim übertragen des Skripts gibts noch zusätzlich:
Im log steht dann:
2025-08-14 21:06:18.038 - error: nspanel-lovelace-ui.0 (99753) [config-manager] Panel for Topic: nspanel/ns_panel67 not found in adapter config!
-
@ticaki
hier bitteasync function configuration(): Promise<void> { const overrideConfig: Partial<ScriptConfig.Config> = { // hier kann man die Werte von unten überschreiben bzw nicht ewig im Skript suchen wo nochmal die Farbe steht :) // pages und subpages geht hier nicht, weil die Seiten ja erst später angelegt werden. Bei const gehts nach Reihenfolge. // panelTopic: 'nspanel/ns_panel4', weatherEntity: 'pirate-weather.0.', defaultOffColor: Off, defaultOnColor: On, weatherAddDefaultItems: false, } /************************************************************************************** ** ** ** https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki/Adapter-Installation ** ** ** *************************************************************************************/ /*********************************************************************** ** ** ** Page Configuration ** ** ** ***********************************************************************/ // Diese Konfiguration für den Fahrplan ist ein Beispiel was die interne Adapterkonfiguration benutzt, diese // ist recht komplex und wird nicht weiter erläutert. Da gibts später fertige Templates die man hier verwenden kann. // wie am Fahrplan Beispiel zu sehen ist. /* const fahrplan: any = { heading: 'Fahrplan Script', native: { card: 'cardEntities', dpInit: 'fahrplan.0.0', uniqueID: 'fahrplanrouten', template: 'entities.fahrplan.routes', } }; */ // Konfiguration findet im Admin statt, uniqueName muß gleich dem namen in der Adminkonfiguration sein. /* const qrCode: ScriptConfig.PageQR = { type: 'cardQR', uniqueName: 'qrCode' }; */ // Konfiguration findet im Admin statt, uniqueName muß gleich dem namen in der Adminkonfiguration sein. /* const chartHeizung: ScriptConfig.PageChart = { type: 'cardChart', uniqueName: 'temperatur' }; */ // Ein Beispiel für eine Gridseite mit verschiedenen Farbskalen /* const irgendeinName: ScriptConfig.PageGrid = { type: 'cardGrid', uniqueName: 'main', heading: 'Wohnzimmer', useColor: true, items: [ {id: 'alias.0.Temperatur', name: 'standard', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40}}, {id: 'alias.0.Temperatur', name: 'hue', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'hue'}}, {id: 'alias.0.Temperatur', name: 'cie', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'cie'}}, {id: 'alias.0.Temperatur', name: 'standard log min', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, log10: 'min'}}, {id: 'alias.0.Temperatur', name: 'hue log min', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'hue', log10: 'min'}}, {id: 'alias.0.Temperatur', name: 'cie log min', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'cie', log10: 'min'}}, {id: 'alias.0.Temperatur', name: 'standard', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40}}, {id: 'alias.0.Temperatur', name: 'hue', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'hue'}}, {id: 'alias.0.Temperatur', name: 'cie', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'cie'}}, {id: 'alias.0.Temperatur', name: 'standard log max', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, log10: 'max'}}, {id: 'alias.0.Temperatur', name: 'hue log max', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'hue', log10: 'max'}}, {id: 'alias.0.Temperatur', name: 'cie log max', onColor: Red, offColor: Blue, colorScale: {'val_min': 0, 'val_max': 40, mode: 'cie', log10: 'max'}}, ] }; */ /* const grid1: ScriptConfig.PageGrid = { uniqueName: 'grid1', // keine Navigation, am besten uniqueName von config.ts übernehmen heading: 'Grid 1', items: [ {id: 'alias.0.Licht.lights.Gerät_1'}, {id: 'alias.0.Licht.lights.Gerät_2'}, {id: '0_userdata.0.Einzelne_Geräte.dimmer'}, {id: 'alias.0.NSPanel.allgemein.hue', }, {navigate: true, targetPage: 'fahrplanrouten'}, {id: 'alias.0.NSPanel.allgemein.shutter'} ], type: 'cardGrid', useColor: true } */ const config: ScriptConfig.Config = { panelTopic: 'nspanel_1', weatherEntity: 'pirate-weather.0', defaultOffColor: Off, defaultOnColor: On, defaultBackgroundColor: HMIDark, weatherAddDefaultItems: false, // Als Gedankenstütze, die Hauptseite muß main heißen! //panelName: 'NSPanel', //unique name for the panel // Seiteneinteilung / Page division // Hauptseiten / Mainpages pages: [ //irgendeinName, //grid1, //qrCode, //chartHeizung, ], // Unterseiten / Subpages subPages: [ //fahrplan ], /*********************************************************************** ** ** ** Screensaver Configuration ** ** ** ***********************************************************************/ favoritScreensaverEntity: [ { type: 'template', template: 'text.openweathermap.favorit', dpInit: `/^openweathermap\\.0.+/`, modeScr: 'favorit', } ], alternateScreensaverEntity: [ // only used with alternate Screensaver ], indicatorScreensaverEntity: [ // indicatorScreensaverEntity 1 (only Advanced Screensaver) { type: 'script', ScreensaverEntity: 'alias.0.NSPanel.allgemein.Status_offene_Fenster.ACTUAL', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 0, ScreensaverEntityIconOn: 'window-open-variant', ScreensaverEntityIconOff: 'window-closed-variant', ScreensaverEntityText: 'Fenster', ScreensaverEntityUnitText: '%', ScreensaverEntityIconColor: {val_min: 0, val_max: 1}, }, // indicatorScreensaverEntity 2 (only Advanced Screensaver) { type: 'script', ScreensaverEntity: 'alias.0.NSPanel.allgemein.Status_offene_Tuer.ACTUAL', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 0, ScreensaverEntityIconOn: 'door-open', ScreensaverEntityIconOff: 'door-closed', ScreensaverEntityText: 'Tür', ScreensaverEntityUnitText: '', ScreensaverEntityIconColor: {val_min: 0, val_max: 1}, }, // indicatorScreensaverEntity 3 (only Advanced Screensaver) { type: 'script', ScreensaverEntity: 'alias.0.NSPanel.allgemein.Status_Licht_An.ACTUAL', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 0, ScreensaverEntityIconOn: 'lightbulb', ScreensaverEntityIconOff: null, ScreensaverEntityText: 'Licht', ScreensaverEntityUnitText: '', ScreensaverEntityIconColor: {val_min: 0, val_max: 1}, }, // indicatorScreensaverEntity 4 (only Advanced Screensaver) { type: 'script', ScreensaverEntity: 'alias.0.Türschloss.ACTUAL', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 0, ScreensaverEntityIconOn: 'lock', ScreensaverEntityIconOff: 'lock-open', ScreensaverEntityText: 'Türschloss', ScreensaverEntityUnitText: '', ScreensaverEntityIconColor: {val_min: 0, val_max: 1, val_best: 1}, }, // indicatorScreensaverEntity 5 (only Advanced Screensaver) { type: 'script', ScreensaverEntity: 'alias.0.NSPanel.allgemein.Auto.Safety.ACTUAL', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 0, ScreensaverEntityIconOn: 'car-key', ScreensaverEntityIconOff: null, ScreensaverEntityText: 'Auto', ScreensaverEntityUnitText: '', ScreensaverEntityIconColor: {val_min: 0, val_max: 1, val_best: 1}, }, ], bottomScreensaverEntity: [ // bottomScreensaverEntity 1 { type: 'template', template: 'text.openweathermap.sunriseset', dpInit: `/^openweathermap\\.0\\.forecast\\.current.+/`, modeScr: 'bottom', }, // bottomScreensaverEntity 2 /*{ type: 'template', template: 'text.hmip.windcombo', dpInit: 'hmip.0.devices.3014F711A000185F2999676C', modeScr: 'bottom', //readOptions: {directionOfPanel: 81} },*/ { type: 'script', ScreensaverEntity: 'openweathermap.0.forecast.current.windSpeed', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 1, ScreensaverEntityIconOn: 'weather-windy', ScreensaverEntityIconOff: null, ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: 'm/s', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120} }, // bottomScreensaverEntity 3 { type: 'script', ScreensaverEntity: 'openweathermap.0.forecast.current.windGust', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 1, ScreensaverEntityIconOn: 'weather-tornado', ScreensaverEntityIconOff: null, ScreensaverEntityText: 'Böen', ScreensaverEntityUnitText: 'm/s', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120} }, // bottomScreensaverEntity 4 { type: 'template', template: 'text.openweathermap.winddirection', dpInit: `/^openweathermap\\.0./`, modeScr: 'bottom', }, // bottomScreensaverEntity 5 (Advanced Screensaver) { type: 'script', ScreensaverEntity: 'openweathermap.0.forecast.current.humidity', ScreensaverEntityFactor: 1, ScreensaverEntityDecimalPlaces: 0, ScreensaverEntityIconOn: 'water-percent', ScreensaverEntityIconOff: null, ScreensaverEntityText: 'Feuchte', ScreensaverEntityUnitText: '%', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 60} }, // bottomScreensaverEntity 6 (for Advanced Screensaver) // the 6th day from dasWetter { type: 'native', native: dasWetterBottomScreensaverEntity6 }, // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 // Some templates for the screensaver uncomment the lines to use them // If u use an other instance for the weather data, change the instance in the following lines // If you want to have them all, set weatherAddDefaultItems=true in the config and leave the following lines as they are!
-
und
javascript.0 21:19:50.614 info Compiling TypeScript source script.js.nspanel-lovelace-ui_0.Panel_1 javascript.0 21:19:50.697 info source code did not change, using cached compilation result... javascript.0 21:19:50.709 info registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 21:19:50.767 info [ 'Panel for Topic: nspanel_1 Script version 0.9.1 is correct!', 'No navigation items found! This needs to be fixed!', 'done' ] javascript.0 21:19:50.992 info Stopping script script.js.nspanel-lovelace-ui_0.Panel_1