Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. SONOFF NSPanel mit Lovelace UI

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    SONOFF NSPanel mit Lovelace UI

    This topic has been deleted. Only users with topic management privileges can see it.
    • draexler
      draexler @TT-Tom last edited by draexler

      @tt-tom

      Das ist der Wert:

      08:01
      

      Hier die Config:

      {
        "common": {
          "name": "Aktuelle Arbeitszeit",
          "desc": "Manuell erzeugt",
          "role": "state",
          "type": "string",
          "read": true,
          "write": true,
          "def": ""
        },
        "type": "state",
        "native": {},
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1699963188362,
        "_id": "0_userdata.0.Arbeit.Zeitbuchung.Aktuelle_Arbeitszeit",
        "acl": {
          "object": 1636,
          "state": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator"
        }
      }
      

      Und hier die Config aus dem Skript:
      Eventuell kann jemand drüberschauen was zu viel und zu wenig ist.

                  // bottomScreensaverEntity 6
                  {
                      ScreensaverEntity: '0_userdata.0.Arbeit.Zeitbuchung.Aktuelle_Arbeitszeit',
                      ScreensaverEntityFactor: 1,
                      ScreensaverEntityDateFormat: { hour: '2-digit', minute: '2-digit' },
                      ScreensaverEntityIconOn: 'account-clock',
                      ScreensaverEntityIconOff: 'account-clock',
                      ScreensaverEntityText: 'A. Zeit',
                      ScreensaverEntityUnitText: '',
                      ScreensaverEntityIconColor: '',
                  },
      

      Habe mal:

      { hour: '2-digit', minute: '2-digit' },
      

      hinzugefügt/angepasst und da wäre mir beinahe der ioBroker abgestürzt. Habe das ganze Skript jetzt mal aktiviert damit der ioBroker auch funktioniert

      Wenn ich das Skript jetzt update:
      Was muss den im Javascript Adapter genau bei Zusätzliche NPM-Module eingetragen werden?

      Armilar T 2 Replies Last reply Reply Quote 0
      • Armilar
        Armilar Most Active Forum Testing @draexler last edited by

        @draexler

        Ist genau der Grund, weshalb wir moment eingeführt haben

        1 Reply Last reply Reply Quote 0
        • T
          TT-Tom @draexler last edited by

          @draexler

          das steht hier

          funktioniert aber nur mit der aktuellen Version

          draexler 1 Reply Last reply Reply Quote 0
          • draexler
            draexler @TT-Tom last edited by

            @tt-tom sagte in SONOFF NSPanel mit Lovelace UI:

            hier

            javascript.0
            2023-11-15 15:55:04.030	error	WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
            
            javascript.0
            2023-11-15 15:55:04.029	error	npm
            
            javascript.0
            2023-11-15 15:55:03.935	error	WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
            
            javascript.0
            2023-11-15 15:55:03.935	error	npm
            
            javascript.0
            2023-11-15 15:55:03.872	error	WARN deprecated node-inspect@2.0.0: This module is part of Node.js core and does not need to be installed separately. It is now unmaintained.
            
            javascript.0
            2023-11-15 15:55:03.872	error	npm
            
            javascript.0
            2023-11-15 15:55:03.741	error	WARN deprecated har-validator@5.1.5: this library is no longer supported
            
            javascript.0
            2023-11-15 15:55:03.740	error	npm
            

            Hinzugefügt:
            Das war im Log. System ist komplett aktuell. Ignorieren??

            mikeal created this issue in request/request

            open Request’s Past, Present and Future #3142

            Armilar 1 Reply Last reply Reply Quote 0
            • Armilar
              Armilar Most Active Forum Testing @draexler last edited by

              @draexler

              Ja ignorieren - du möchtest gar nicht wissen, was bei mir alles beim Start der Instanz auf error WARN deprecated geht 😁

              draexler 1 Reply Last reply Reply Quote 0
              • draexler
                draexler @Armilar last edited by

                @armilar Ok dann schaue ich mal weg 🙂

                Was ist denn eigentlich die beste Vorgehensweise das Skript zu aktualisieren? Gibts da eine Art Best Practise?

                Armilar 1 Reply Last reply Reply Quote 0
                • Armilar
                  Armilar Most Active Forum Testing @draexler last edited by

                  @draexler

                  ja, hatte ich beim letzten Update bereits geschrieben 😊

                  https://forum.iobroker.net/post/1079701

                  draexler 1 Reply Last reply Reply Quote 1
                  • draexler
                    draexler @Armilar last edited by

                    @armilar Ah super. Danke dir.
                    Wahrscheinlich nichts neues... Aber der Thread hier ist so groß das man einfach nicht mehr weiter oben schaut. Sorry.

                    Armilar 1 Reply Last reply Reply Quote 0
                    • Armilar
                      Armilar Most Active Forum Testing @draexler last edited by

                      @draexler

                      Das Update vom 30.10. behandelt moments

                      https://forum.iobroker.net/post/1070661

                      Du kannst auch auf https://github.com/joBr99/nspanel-lovelace-ui/wiki/Changelog sehen, welche Änderungen es gibt und @TT-Tom macht immer den Link zum Forum 👍

                      1 Reply Last reply Reply Quote 1
                      • K
                        Kunibert last edited by Kunibert

                        Hi zusammen,
                        ich habe wenig Ahnung von Skripten und finde, ihr habt mit der Anleitung und dem ganzen Wiki zur Inbetriebnahme einen Mega-Job gemacht. Danke an euch!!
                        Allerdings bekomme ich mein Skript (nur die Standard-Seiten, ohne Cumstomizing) einfach nicht fehlerfrei zum Laufen.
                        Mit Version 4.3.2.1 funktionierte die Darstellung auf dem NSPanel trotz Fehlern allerdings, mit Version 4.3.3.4 habe ich auf dem Panel nur die Meldung "Wating for content...".
                        03b2df53-6e6b-434a-a3dd-2cd2f66289d2-image.png

                        Ich habe im Skript folgende Anpassungen gemacht:

                        // Setzen der bevorzugten Tasmota32-Version
                        const tasmotaOtaVersion: string = %(#b30909)['tasmota32-nspanel.bin]';
                        // Es können ebenfalls andere Versionen verwendet werden wie zum Beispiel:
                        // 'tasmota32-nspanel.bin' oder 'tasmota32.bin' oder 'tasmota32-DE.bin' oder etc.
                        
                        const NSPanel_Path = %(#b30909)['0_userdata.0.Panels.PanelKIZ.]';       // Anpassen an das jewilige NSPanel
                        const NSPanel_Alarm_Path = '%(#b30909)[0_userdata.0.Panels.]';     // Pfad für gemeinsame Nutzung durch mehrere Panels (bei Nutzung der cardAlarm)
                        

                        Habt ihr einen Hinweis oder eine Idee, wie ich des zum Laufen bekommen kann?

                        Armilar 1 Reply Last reply Reply Quote 0
                        • Armilar
                          Armilar Most Active Forum Testing @Kunibert last edited by Armilar

                          @kunibert

                          Ich nehme mal an, du hast versucht diese Dinge zu formatieren?
                          edc632a8-5c8c-44d9-8000-aa4f2e0702bb-image.png

                          Sollte das alles sein, was angepasst wurde, dann fehlt sicherlich noch der wichtigste Teil:

                          https://github.com/joBr99/nspanel-lovelace-ui/wiki/iobroker---Basisinstallation#10--nspaneltsts-anlegen

                          Gehe bitte noch mal die komplette Wiki-Seite durch...

                          Zunächst einmal sind diese beiden Zeilen für die Kommunikation am wichtigsten

                          6d9dc586-234f-4543-a86d-53859d0a4bee-image.png

                          EDIT: Mit anderen Worten: Es gibt noch ein Kommunikationsproblem zwischen der MQTT-Instanz und den Parametern im Bereich der config-Parameter.

                          Sendet das Panel schon Daten an die MQTT-Instanz?

                          Falls ja, zeige mal die Datenpunkte in der MQTT-Instanz und die beiden Vebindungs-Zeilen aus der NSPanel-Config.

                          K 1 Reply Last reply Reply Quote 0
                          • K
                            Kunibert @Armilar last edited by

                            @armilar
                            Ja, die Formatierung war nur hier im Post. Wollte den Code an den angepassten Stellen rot färben.
                            Im Original sieht es so aus:

                            // Setzen der bevorzugten Tasmota32-Version
                            const tasmotaOtaVersion: string = 'tasmota32-nspanel.bin';
                            // Es können ebenfalls andere Versionen verwendet werden wie zum Beispiel:
                            // 'tasmota32-nspanel.bin' oder 'tasmota32.bin' oder 'tasmota32-DE.bin' oder etc.
                            
                            const NSPanel_Path = '0_userdata.0.Panels.PanelKIZ.';       // Anpassen an das jewilige NSPanel
                            const NSPanel_Alarm_Path = '0_userdata.0.Panels.';     // Pfad für gemeinsame Nutzung durch mehrere Panels (bei Nutzung der cardAlarm)
                            
                            

                            Entschuldige bitte, ja, die beiden MQTT-Punkte hatte ich auch angepasst:

                            export const config = <Config> {
                                panelRecvTopic: 'mqtt.0.Panels.PANELKIZ.tele.RESULT',       // Bitte anpassen
                                panelSendTopic: 'mqtt.0.Panels.PANELKIZ.cmnd.CustomSend',   // Bitte anpassen
                            

                            In den MQTT-Datenpunkten sehe ich, dass die Kommunikation funktioniert:
                            f1cbc268-544d-4e0b-ad97-c91e3411214f-image.png

                            Nur sendet das JavaScript scheinbar nichts an den Datenpunkt "CustomSend".

                            Armilar K 2 Replies Last reply Reply Quote 0
                            • Armilar
                              Armilar Most Active Forum Testing @Kunibert last edited by

                              @kunibert sagte in SONOFF NSPanel mit Lovelace UI:

                              Nur sendet das JavaScript scheinbar nichts an den Datenpunkt "CustomSend".

                              Kann es auch nicht, da der Pfad falsch ist...

                              0e29e2c1-f4a7-4c13-95cc-9a9ecfca3b5f-image.png

                              ist klein geschrieben, also besser:

                              export const config = <Config> {
                                  panelRecvTopic: 'mqtt.0.Panels.PanelKIZ.tele.RESULT',       // Bitte anpassen
                                  panelSendTopic: 'mqtt.0.Panels.PanelKIZ.cmnd.CustomSend',   // Bitte anpassen
                              
                              1 Reply Last reply Reply Quote 0
                              • K
                                Kunibert @Kunibert last edited by

                                @Armilar
                                Ich habe mir jetzt meine alte Skriptversion 4.3.2.1 genommen und aus der neuen Version 4.3.3.3 nur den Hinweisteil oben bis zum */ und dann den Teil ab "Ab hier keine Konfiguration mehr" ausgetauscht. Dann funktioniert die Kommunikation sofort und das Panel zeigt Content an. Es muss also am Skript und dem Konfigurationsteil liegen. Wo genau bekomme ich aber nicht eingegrenzt.

                                Mit diesen eingestellten Parametern funktioniert es dann:

                                // Setzen der bevorzugten Tasmota32-Version
                                const tasmotaOtaVersion: string = 'tasmota32-nspanel.bin';
                                // Es können ebenfalls andere Versionen verwendet werden wie zum Beispiel:
                                // 'tasmota32-nspanel.bin' oder 'tasmota32.bin' oder 'tasmota32-DE.bin' oder etc.
                                
                                const NSPanel_Path = '0_userdata.0.Panels.PanelKIZ.';       // Anpassen an das jewilige NSPanel
                                const NSPanel_Alarm_Path = '0_userdata.0.Panels.';     // Pfad für gemeinsame Nutzung durch mehrere Panels (bei Nutzung der cardAlarm)
                                

                                Und:

                                    panelRecvTopic: 'mqtt.0.Panels.PanelKIZ.tele.RESULT',       // Bitte anpassen
                                    panelSendTopic: 'mqtt.0.Panels.PanelKIZ.cmnd.CustomSend',   // Bitte anpassen
                                

                                Das ist das gleiche, was ich auch in der Version 4.3.3.3 hinterlegt habe. Vielleicht ist doch im Config-Teil des Skriptes irgendwo ein Fehler in der neuen Version?

                                Armilar 2 Replies Last reply Reply Quote 0
                                • Armilar
                                  Armilar Most Active Forum Testing @Kunibert last edited by

                                  @kunibert

                                  Die v4.3.3.3 läuft fehlerfrei in der Config. Habe drei Panel damit am laufen...

                                  K 1 Reply Last reply Reply Quote 0
                                  • Armilar
                                    Armilar Most Active Forum Testing @Kunibert last edited by Armilar

                                    @kunibert sagte in SONOFF NSPanel mit Lovelace UI:

                                    Mit diesen eingestellten Parametern funktioniert es dann:

                                    Wenn es in der 4.3.2.1 läuft, warum tauscht du dann nicht nur den unteren Teil aus?

                                    Die 4.3.2.1 hat ja bereits die Änderungen für moments im Bauch. siehe Changelog:

                                    https://github.com/joBr99/nspanel-lovelace-ui/wiki/Changelog

                                    K 1 Reply Last reply Reply Quote 1
                                    • K
                                      Kunibert @Armilar last edited by

                                      @armilar
                                      Glaube ich dir sofort aber ich verstehe es nicht. Nehme ich also die 4.3.3.3 1:1 und passe die vier Zeilen (NSPanel_Path, NSPanel_Alarm_Path, panelRecvTopic, panelSendTopic) wie in der Version 4.3.2.1 an, funktioniert es nicht. Kopiere ich den kompletten Config-Block aus der Version 4.3.2.1 in das Skript 4.3.3.3, in dem ich ebenfalls die vier Werte angepasst habe, funktioniert es.
                                      Sehr merkwürdig...
                                      Aber das Wichtigste ist ja, dass es jetzt geht 🙂

                                      1 Reply Last reply Reply Quote 0
                                      • K
                                        Kunibert @Armilar last edited by

                                        @armilar Das mache ich jetzt auch, das funktioniert ja super jetzt. Danke für deine Hilfe!

                                        Armilar 1 Reply Last reply Reply Quote 1
                                        • Armilar
                                          Armilar Most Active Forum Testing @Kunibert last edited by

                                          @kunibert

                                          Mit dem beschriebenen Service-Menü-Tausch kannst du noch 1-2 Tage warten.

                                          Die 4.3.3.5 steht in den Startlöchern und hat neben einem 39-sprachigen Service-Menü auch noch eine weitere Seite bekommen.

                                          Denke morgen - spätestens übermorgen...

                                          Armilar 1 Reply Last reply Reply Quote 2
                                          • Armilar
                                            Armilar Most Active Forum Testing @Armilar last edited by Armilar

                                            v4.3.3.5 - Update NSPanelTs.ts

                                            So - da ist das neue Update mit dem multilingualen Service-Menü.

                                            0fe40ec2-e9e4-4505-855f-6684703d9885-image.png

                                            Änderungen:

                                            • Zusätzlicher Menüpunkt "ioBroker-Infos" im Service Menü (Hat @TT-Tom bereits mit der v4.3.3.4 am 15.11.2023 bereitgestellt):
                                              b23db71d-0b51-4e3f-bb16-80f65d0242da-image.png
                                              mit entsprechenden Infos zur aktuellen Version des NSPanelTS.ts Scriptes, der aktuell installierten NodeJS-Version und der aktuell installierten Version der JS-Adapterinstanz
                                              7283604b-0009-4af4-b2d7-14bbb86c4489-image.png

                                            • Das komplette Service-Menü ist jetzt in 39 Sprachen übersetzt und wird mit der "bereits gewählten Language-Code" für Datum/Uhrzeit, etc. geladen.
                                              484fa229-b50f-4a1c-83f4-326a5f10acbe-image.png
                                              Nach der Umstellung muss das TS-Script allerdings einmal durchgestartet werden, damit die Änderungen im Menü wirksam werden:
                                              2222d797-154d-4568-b879-442416afcfa2-image.png
                                              c27b6afa-1a15-4325-8e51-9ed11e1a5495-image.png

                                            • Weitere Cards, wie cardUnlock, cardQR, popupFan, popupTimer sind ebenfalls umgestellt worden (cardAlarm und cardMedia folgen in einer der nächsten Versionen)

                                            Durchführung des Updates:

                                            https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts

                                            • Unteren Teil: des Scriptes ab:
                                              // _________________ Ab hier keine Konfiguration mehr ___________________
                                              
                                              ersetzten.
                                            • Das Service Menü (siehe Spoiler) komplett austauschen:

                                            /***********************************************************************************************
                                             **  Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt) **
                                             **  https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Service-Men%C3%BC             **
                                             ***********************************************************************************************/
                                            
                                            /* Wenn das Service Menü abgesichert werden soll, kann eine cardUnlock vorgeschaltet werden. 
                                               Für diesen Fall ist folgende Vorgehensweise erforderlich:
                                               - cardUnlock Seite "Unlock_Service" in der Config unter pages auskommentieren ("//" entfernen)
                                               - Servicemenü aus pages "NSPanel_Service" unter pages kommentieren ("//" hinzufügen)
                                            */ 
                                            
                                            //Level 0 (if service pages are used with cardUnlock)
                                            let Unlock_Service = <PageUnlock>
                                            {
                                                'type': 'cardUnlock',
                                                'heading': findLocaleServMenu('service_pages'),
                                                'useColor': true,
                                                'items': [<PageItem>{ id: 'alias.0.NSPanel.Unlock',
                                                                      targetPage: 'NSPanel_Service_SubPage',
                                                                      autoCreateALias: true }
                                                ]
                                            };
                                            
                                            //Level_0 (if service pages are used without cardUnlock)
                                            let NSPanel_Service = <PageEntities>
                                            {
                                                'type': 'cardEntities',
                                                'heading': findLocaleServMenu('service_menu'),
                                                'useColor': true,
                                                'items': [
                                                    <PageItem>{ navigate: true, id: 'NSPanel_Infos', icon: 'information-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('infos'), buttonText: findLocaleServMenu('more')},
                                                    <PageItem>{ navigate: true, id: 'NSPanel_Einstellungen', icon: 'monitor-edit', offColor: Menu, onColor: Menu, name: findLocaleServMenu('settings'), buttonText: findLocaleServMenu('more')},
                                                    <PageItem>{ navigate: true, id: 'NSPanel_Firmware', icon: 'update', offColor: Menu, onColor: Menu, name: findLocaleServMenu('firmware'), buttonText: findLocaleServMenu('more')},
                                                    <PageItem>{ id: AliasPath + 'Config.rebootNSPanel', name: findLocaleServMenu('reboot') ,icon: 'refresh', offColor: MSRed, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                                                ]
                                            };
                                            
                                            //Level_0 (if service pages are used with cardUnlock)
                                            let NSPanel_Service_SubPage = <PageEntities>
                                            {
                                                'type': 'cardEntities',
                                                'heading': findLocaleServMenu('service_menu'),
                                                'useColor': true,
                                                'subPage': true,
                                                'parent': Unlock_Service,
                                                'home': 'Unlock_Service', 
                                                'items': [
                                                    <PageItem>{ navigate: true, id: 'NSPanel_Infos', icon: 'information-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('infos'), buttonText: findLocaleServMenu('more')},
                                                    <PageItem>{ navigate: true, id: 'NSPanel_Einstellungen', icon: 'monitor-edit', offColor: Menu, onColor: Menu, name: findLocaleServMenu('settings'), buttonText: findLocaleServMenu('more')},
                                                    <PageItem>{ navigate: true, id: 'NSPanel_Firmware', icon: 'update', offColor: Menu, onColor: Menu, name: findLocaleServMenu('firmware'), buttonText: findLocaleServMenu('more')},
                                                    <PageItem>{ id: AliasPath + 'Config.rebootNSPanel', name: findLocaleServMenu('reboot') ,icon: 'refresh', offColor: MSRed, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                                                ]
                                            };
                                            
                                                    //Level_1
                                                    let NSPanel_Infos = <PageEntities>
                                                    {
                                                        'type': 'cardEntities',
                                                        'heading': findLocaleServMenu('nspanel_infos'),
                                                        'useColor': true,
                                                        'subPage': true,
                                                        'parent': NSPanel_Service,
                                                        'home': 'NSPanel_Service',        
                                                        'items': [
                                                            <PageItem>{ navigate: true, id: 'NSPanel_Wifi_Info_1', icon: 'wifi', offColor: Menu, onColor: Menu, name: findLocaleServMenu('wifi'), buttonText: findLocaleServMenu('more')},
                                                            <PageItem>{ navigate: true, id: 'NSPanel_Sensoren', icon: 'memory', offColor: Menu, onColor: Menu, name: findLocaleServMenu('sensors_hardware'), buttonText: findLocaleServMenu('more')},
                                                            <PageItem>{ navigate: true, id: 'NSPanel_IoBroker', icon: 'information-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('info_iobroker'), buttonText: findLocaleServMenu('more')}
                                                        ]
                                                    };
                                                            //Level_2
                                                            let NSPanel_Wifi_Info_1 = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('nspanel_wifi1'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Infos,
                                                                'next': 'NSPanel_Wifi_Info_2',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'ipAddress', name: findLocaleServMenu('ip_address'), icon: 'ip-network-outline', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.BSSId', name: findLocaleServMenu('mac_address'), icon: 'check-network', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.RSSI', name: findLocaleServMenu('rssi'), icon: 'signal', unit: '%', colorScale: {'val_min': 100, 'val_max': 0} },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.Signal', name: findLocaleServMenu('wifi_signal'), icon: 'signal-distance-variant', unit: 'dBm', colorScale: {'val_min': 0, 'val_max': -100} },
                                                                ]
                                                            };
                                            
                                                            let NSPanel_Wifi_Info_2 = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('nspanel_wifi2'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'prev': 'NSPanel_Wifi_Info_1',
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.SSId', name: findLocaleServMenu('ssid'), icon: 'signal-distance-variant', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.Mode', name: findLocaleServMenu('mode'), icon: 'signal-distance-variant', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.Channel', name: findLocaleServMenu('channel'), icon: 'timeline-clock-outline', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.AP', name: findLocaleServMenu('accesspoint'), icon: 'router-wireless-settings', offColor: Menu, onColor: Menu },
                                                                ]
                                                            };
                                            
                                                            let NSPanel_Sensoren = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('sensors1'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Infos,
                                                                'next': 'NSPanel_Hardware',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Sensor.ANALOG.Temperature', name: findLocaleServMenu('room_temperature'), icon: 'home-thermometer-outline', unit: '°C', colorScale: {'val_min': 0, 'val_max': 40, 'val_best': 22 } },
                                                                    <PageItem>{ id: AliasPath + 'Sensor.ESP32.Temperature', name: findLocaleServMenu('esp_temperature'), icon: 'thermometer', unit: '°C', colorScale: {'val_min': 0, 'val_max': 100, 'val_best': 50 } },
                                                                    <PageItem>{ id: AliasPath + 'Sensor.TempUnit', name: findLocaleServMenu('temperature_unit'), icon: 'temperature-celsius', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Sensor.Time', name: findLocaleServMenu('refresh'), icon: 'clock-check-outline', offColor: Menu, onColor: Menu },
                                                                ]
                                                            };
                                            
                                                            let NSPanel_Hardware = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('hardware2'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'prev': 'NSPanel_Sensoren',
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Product', name: findLocaleServMenu('product'), icon: 'devices', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Hardware', name: findLocaleServMenu('esp32_hardware'), icon: 'memory', offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Display.Model', name: findLocaleServMenu('nspanel_version'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Uptime', name: findLocaleServMenu('operating_time'), icon: 'timeline-clock-outline', offColor: Menu, onColor: Menu },
                                                                ]
                                                            };
                                            
                                                            let NSPanel_IoBroker = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('info_iobroker'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Infos,
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'IoBroker.ScriptVersion', name: findLocaleServMenu('script_version_nspanelts'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'IoBroker.NodeJSVersion', name: findLocaleServMenu('nodejs_version'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'IoBroker.JavaScriptVersion', name: findLocaleServMenu('instance_javascript'), offColor: Menu, onColor: Menu },
                                                                ]
                                                            };
                                            
                                                    //Level_1
                                                    let NSPanel_Einstellungen = <PageGrid>
                                                        {
                                                            'type': 'cardGrid',
                                                            'heading': findLocaleServMenu('settings'),
                                                            'useColor': true,
                                                            'subPage': true,
                                                            'parent': NSPanel_Service,
                                                            'home': 'NSPanel_Service',
                                                            'items': [
                                                                <PageItem>{ navigate: true, id: 'NSPanel_Screensaver', icon: 'monitor-dashboard',offColor: Menu, onColor: Menu, name: findLocaleServMenu('screensaver'), buttonText: findLocaleServMenu('more')},
                                                                <PageItem>{ navigate: true, id: 'NSPanel_Relays', icon: 'electric-switch', offColor: Menu, onColor: Menu, name: findLocaleServMenu('relays'), buttonText: findLocaleServMenu('more')},
                                                                <PageItem>{ id:AliasPath + 'Config.temperatureUnitNumber', icon: 'gesture-double-tap', name: findLocaleServMenu('temp_unit'), offColor: Menu, onColor: Menu, 
                                                                modeList: ['°C', '°F', 'K']},
                                                                <PageItem>{ id: AliasPath + 'Config.localeNumber', icon: 'select-place', name: findLocaleServMenu('language'), offColor: Menu, onColor: Menu, 
                                                                modeList: ['en-US', 'de-DE', 'nl-NL', 'da-DK', 'es-ES', 'fr-FR', 'it-IT', 'ru-RU', 'nb-NO', 'nn-NO', 'pl-PL', 'pt-PT', 'af-ZA', 'ar-SY', 
                                                                           'bg-BG', 'ca-ES', 'cs-CZ', 'el-GR', 'et-EE', 'fa-IR', 'fi-FI', 'he-IL', 'hr-xx', 'hu-HU', 'hy-AM', 'id-ID', 'is-IS', 'lb-xx', 
                                                                           'lt-LT', 'ro-RO', 'sk-SK', 'sl-SI', 'sv-SE', 'th-TH', 'tr-TR', 'uk-UA', 'vi-VN', 'zh-CN', 'zh-TW']},
                                                               <PageItem>{ navigate: true, id: 'NSPanel_Script', icon: 'code-json',offColor: Menu, onColor: Menu, name: findLocaleServMenu('script'), buttonText: findLocaleServMenu('more')},            
                                                            ]
                                                        };
                                            
                                                            //Level_2
                                                            let NSPanel_Screensaver = <PageGrid>
                                                            {
                                                                'type': 'cardGrid',
                                                                'heading': findLocaleServMenu('screensaver'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Einstellungen,
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverDimmode', icon: 'sun-clock', offColor: Menu, onColor: Menu, name: findLocaleServMenu('dimmode')},
                                                                    <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverBrightness', icon: 'brightness-5', offColor: Menu, onColor: Menu, name: findLocaleServMenu('brightness')},
                                                                    <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverLayout', icon: 'page-next-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('layout')},
                                                                    <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverWeather', icon: 'weather-partly-rainy', offColor: Menu, onColor: Menu, name: findLocaleServMenu('weather')},
                                                                    <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverDateformat', icon: 'calendar-expand-horizontal', offColor: Menu, onColor: Menu, name: findLocaleServMenu('date_format')},
                                                                    <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverIndicators', icon: 'monitor-edit', offColor: Menu, onColor: Menu, name: findLocaleServMenu('indicators')}
                                                                ]
                                                            };
                                                                        
                                                                    //Level_3
                                                                    let NSPanel_ScreensaverDimmode = <PageEntities>
                                                                    {
                                                                        'type': 'cardEntities',
                                                                        'heading': findLocaleServMenu('dimmode'),
                                                                        'useColor': true,
                                                                        'subPage': true,
                                                                        'parent': NSPanel_Screensaver,
                                                                        'home': 'NSPanel_Service',
                                                                        'items': [
                                                                            <PageItem>{ id: AliasPath + 'Dimmode.brightnessDay', name: findLocaleServMenu('brightness_day'), icon: 'brightness-5', offColor: Menu, onColor: Menu, minValue: 5, maxValue: 10},
                                                                            <PageItem>{ id: AliasPath + 'Dimmode.brightnessNight', name: findLocaleServMenu('brightness_night'), icon: 'brightness-4', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 4},
                                                                            <PageItem>{ id: AliasPath + 'Dimmode.hourDay', name: findLocaleServMenu('hour_day'), icon: 'sun-clock', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 23},
                                                                            <PageItem>{ id: AliasPath + 'Dimmode.hourNight', name: findLocaleServMenu('hour_night'), icon: 'sun-clock-outline', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 23}
                                                                        ]
                                                                    };
                                            
                                                                    //Level_3
                                                                    let NSPanel_ScreensaverBrightness = <PageEntities>
                                                                    {
                                                                        'type': 'cardEntities',
                                                                        'heading': findLocaleServMenu('brightness'),
                                                                        'useColor': true,
                                                                        'subPage': true,
                                                                        'parent': NSPanel_Screensaver,
                                                                        'home': 'NSPanel_Service',
                                                                        'items': [
                                                                            <PageItem>{ id: AliasPath + 'ScreensaverInfo.activeBrightness', name: findLocaleServMenu('brightness_activ'), icon: 'brightness-5', offColor: Menu, onColor: Menu, minValue: 20, maxValue: 100},
                                                                            <PageItem>{ id: AliasPath + 'Config.Screensaver.timeoutScreensaver', name: findLocaleServMenu('screensaver_timeout'), icon: 'clock-end', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 60},
                                                                            <PageItem>{ id: AliasPath + 'Config.Screensaver.screenSaverDoubleClick', name: findLocaleServMenu('wakeup_doublecklick') ,icon: 'gesture-two-double-tap', offColor: HMIOff, onColor: HMIOn}
                                                                        ]
                                                                    };
                                            
                                                                    //Level_3
                                                                    let NSPanel_ScreensaverLayout = <PageEntities>
                                                                    {
                                                                        'type': 'cardEntities',
                                                                        'heading': findLocaleServMenu('layout'),
                                                                        'useColor': true,
                                                                        'subPage': true,
                                                                        'parent': NSPanel_Screensaver,
                                                                        'home': 'NSPanel_Service',
                                                                        'items': [
                                                                            <PageItem>{ id: AliasPath + 'Config.Screensaver.alternativeScreensaverLayout', name: findLocaleServMenu('alternative_layout') ,icon: 'page-previous-outline', offColor: HMIOff, onColor: HMIOn},
                                                                            <PageItem>{ id: AliasPath + 'Config.Screensaver.ScreensaverAdvanced', name: findLocaleServMenu('advanced_layout') ,icon: 'page-next-outline', offColor: HMIOff, onColor: HMIOn},
                                                                        ]
                                                                    };
                                            
                                                                    //Level_3
                                                                    let NSPanel_ScreensaverWeather = <PageEntities>
                                                                    {
                                                                        'type': 'cardEntities',
                                                                        'heading': findLocaleServMenu('weather_parameters'),
                                                                        'useColor': true,
                                                                        'subPage': true,
                                                                        'parent': NSPanel_Screensaver,
                                                                        'home': 'NSPanel_Service',
                                                                        'items': [
                                                                            <PageItem>{ id: AliasPath + 'ScreensaverInfo.weatherForecast', name: findLocaleServMenu('weather_forecast_offon') ,icon: 'weather-sunny-off', offColor: HMIOff, onColor: HMIOn},
                                                                            <PageItem>{ id: AliasPath + 'ScreensaverInfo.weatherForecastTimer', name: findLocaleServMenu('weather_forecast_change_switch') ,icon: 'devices', offColor: HMIOff, onColor: HMIOn},
                                                                            <PageItem>{ id: AliasPath + 'ScreensaverInfo.entityChangeTime', name: findLocaleServMenu('weather_forecast_change_time'), icon: 'cog-sync', offColor: Menu, onColor: Menu, minValue: 15, maxValue: 60},
                                                                            <PageItem>{ id: AliasPath + 'Config.Screensaver.autoWeatherColorScreensaverLayout', name: findLocaleServMenu('weather_forecast_icon_colors') ,icon: 'format-color-fill', offColor: HMIOff, onColor: HMIOn},
                                                                        ]
                                                                    };
                                            
                                                                    //Level_3
                                                                    let NSPanel_ScreensaverDateformat = <PageEntities>
                                                                    {
                                                                        'type': 'cardEntities',
                                                                        'heading': findLocaleServMenu('date_format'),
                                                                        'useColor': true,
                                                                        'subPage': true,
                                                                        'parent': NSPanel_Screensaver,
                                                                        'home': 'NSPanel_Service',
                                                                        'items': [
                                                                            <PageItem>{ id: AliasPath + 'Config.Dateformat.Switch.weekday', name: findLocaleServMenu('weekday_large') ,icon: 'calendar-expand-horizontal', offColor: HMIOff, onColor: HMIOn},
                                                                            <PageItem>{ id: AliasPath + 'Config.Dateformat.Switch.month', name: findLocaleServMenu('month_large') ,icon: 'calendar-expand-horizontal', offColor: HMIOff, onColor: HMIOn},
                                                                        ]
                                                                    };
                                            
                                                                    //Level_3
                                                                    let NSPanel_ScreensaverIndicators = <PageEntities>
                                                                    {
                                                                        'type': 'cardEntities',
                                                                        'heading': findLocaleServMenu('indicators'),
                                                                        'useColor': true,
                                                                        'subPage': true,
                                                                        'parent': NSPanel_Screensaver,
                                                                        'home': 'NSPanel_Service',
                                                                        'items': [
                                                                            <PageItem>{ id: AliasPath + 'Config.MRIcons.alternateMRIconSize.1', name: findLocaleServMenu('mr_icon1_size') ,icon: 'format-size', offColor: HMIOff, onColor: HMIOn},
                                                                            <PageItem>{ id: AliasPath + 'Config.MRIcons.alternateMRIconSize.2', name: findLocaleServMenu('mr_icon2_size') ,icon: 'format-size', offColor: HMIOff, onColor: HMIOn},
                                                                        ]
                                                                    };
                                            
                                                            //Level_2
                                                            let NSPanel_Relays = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('relays'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Einstellungen,
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Relay.1', name: findLocaleServMenu('relay1_onoff'), icon: 'power', offColor: HMIOff, onColor: HMIOn},
                                                                    <PageItem>{ id: AliasPath + 'Relay.2', name: findLocaleServMenu('relay2_onoff'), icon: 'power', offColor: HMIOff, onColor: HMIOn},
                                                                ]
                                                            };
                                            
                                                            //Level_2
                                                            let NSPanel_Script = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('script'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Einstellungen,
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Config.ScripgtDebugStatus', name: findLocaleServMenu('debugmode_offon') ,icon: 'code-tags-check', offColor: HMIOff, onColor: HMIOn},
                                                                    <PageItem>{ id: AliasPath + 'Config.MQTT.portCheck', name: findLocaleServMenu('port_check_offon') ,icon: 'check-network', offColor: HMIOff, onColor: HMIOn},
                                                                ]
                                                            };
                                            
                                                    //Level_1
                                                    let NSPanel_Firmware = <PageEntities>
                                                        {
                                                            'type': 'cardEntities',
                                                            'heading': findLocaleServMenu('firmware'),
                                                            'useColor': true,
                                                            'subPage': true,
                                                            'parent': NSPanel_Service,
                                                            'home': 'NSPanel_Service',
                                                            'items': [
                                                                <PageItem>{ id: AliasPath + 'autoUpdate', name: findLocaleServMenu('automatically_updates') ,icon: 'power', offColor: HMIOff, onColor: HMIOn},
                                                                <PageItem>{ navigate: true, id: 'NSPanel_FirmwareTasmota', icon: 'usb-flash-drive', offColor: Menu, onColor: Menu, name: findLocaleServMenu('tasmota_firmware'), buttonText: findLocaleServMenu('more')},
                                                                <PageItem>{ navigate: true, id: 'NSPanel_FirmwareBerry', icon: 'usb-flash-drive', offColor: Menu, onColor: Menu, name: findLocaleServMenu('berry_driver'), buttonText: findLocaleServMenu('more')},
                                                                <PageItem>{ navigate: true, id: 'NSPanel_FirmwareNextion', icon: 'cellphone-cog', offColor: Menu, onColor: Menu, name: findLocaleServMenu('nextion_tft_firmware'), buttonText: findLocaleServMenu('more')}
                                                            ]
                                                        };
                                            
                                                            let NSPanel_FirmwareTasmota = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('tasmota'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Firmware,
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Tasmota.Version', name: findLocaleServMenu('installed_release'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Tasmota_Firmware.onlineVersion', name: findLocaleServMenu('available_release'), offColor: Menu, onColor: Menu },                        
                                                                    <PageItem>{ id: 'Divider' },
                                                                    <PageItem>{ id: AliasPath + 'Config.Update.UpdateTasmota', name: findLocaleServMenu('update_tasmota') ,icon: 'refresh', offColor: HMIOff, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                                                                ]
                                                            };
                                            
                                                            let NSPanel_FirmwareBerry = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('berry_driver'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Firmware,
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Display.BerryDriver', name: findLocaleServMenu('installed_release'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Berry_Driver.onlineVersion', name: findLocaleServMenu('available_release'), offColor: Menu, onColor: Menu},                        
                                                                    <PageItem>{ id: 'Divider' },
                                                                    <PageItem>{ id: AliasPath + 'Config.Update.UpdateBerry', name: findLocaleServMenu('update_berry_driver') ,icon: 'refresh', offColor: HMIOff, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                                                                ]
                                                            };
                                            
                                                            let NSPanel_FirmwareNextion = <PageEntities>
                                                            {
                                                                'type': 'cardEntities',
                                                                'heading': findLocaleServMenu('nextion_tft'),
                                                                'useColor': true,
                                                                'subPage': true,
                                                                'parent': NSPanel_Firmware,
                                                                'home': 'NSPanel_Service',
                                                                'items': [
                                                                    <PageItem>{ id: AliasPath + 'Display_Firmware.TFT.currentVersion', name: findLocaleServMenu('installed_release'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Display_Firmware.TFT.desiredVersion', name: findLocaleServMenu('desired_release'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Display.Model', name: findLocaleServMenu('nspanel_model'), offColor: Menu, onColor: Menu },
                                                                    <PageItem>{ id: AliasPath + 'Config.Update.UpdateNextion', name: 'Nextion TFT Update' ,icon: 'refresh', offColor: HMIOff, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                                                                ]
                                                            };
                                            
                                            // Ende der Service Pages
                                            

                                            • zusätzliche Seite unter subPages eintragen:
                                              a4faea2c-9a97-4bac-b2d7-60d96646c804-image.png
                                            • fertig 😉

                                            Ihr habt Fehler in der Übersetzung gefunden oder Verbesserungswünsche:
                                            Uns ist bewusst, dass die Translater einige Übersetzungen wahrscheinlich nicht ganz korrekt oder ggfs. zu lang übersetzt haben... Für diesen Fall bitte einen kurzen Hinweis geben. Wir ändern die Übersetzung dann direkt im JSON-File auf Github ab, so dass es allen Usern sofort zur Verfügung steht (Updates werden automatisch gezogen).

                                            So und nun viel Spaß mit den multilingualen Änderungen:
                                            @TT-Tom und Armilar 😊

                                            EDIT:
                                            Ihr habt das vorherige Menü bereits übersetzt?
                                            Dann sendet hier einfach das komplette Menü mit den Übersetzungen... 😉

                                            Armilar 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            601
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            lovelace ui nspanel sonoff
                                            266
                                            7325
                                            5080850
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo