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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    SONOFF NSPanel mit Lovelace UI

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      niiccooo1 @Armilar last edited by

      @armilar
      Hier der Alias

      let SpotifyPremium = <PageMedia> 
      {
          'type': 'cardMedia',
          'heading': 'Spotify-Premium',
          'useColor': true,
          'subPage': false,
          'parent': undefined,
          'items': [<PageItem>{ 
                      id: AliasPath + 'Media.PlayerSpotifyPremium', 
                      adapterPlayerInstance: 'spotify-premium.0.',
                      speakerList: ['HM4P'],
                      //Favoriten Playlists aus Spotify in Liste eintragen 
                      playList: ['Remixes 2023 🔥 Best Popular Songs Remixed 🔥 Best Remixes & EDM Hits 2022 / 2023','This Is VIZE','Rock Party','Dance Covers','Dein Mixtape 1'],
                      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,
                      autoCreateALias : true
                   }]
          };
      
      Armilar 1 Reply Last reply Reply Quote 0
      • Armilar
        Armilar Most Active Forum Testing @muuulle last edited by

        @muuulle

        Ich warteee immer noch auf die Config aus dem Script 😊

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

          @armilar

          Sorry, hier nachgereicht. Vollkommen Standard 😀

          Kann das Skript Auswirkungen auf die Kommunikation haben?

          
          /***********************************************************************
           **                                                                   **
           **                           Configuration                           **
           **                                                                   **
           ***********************************************************************/
          
          export const config: Config = {
              panelRecvTopic: 'mqtt.0.SmartHome.NSPanel_1.tele.RESULT',       // Bitte anpassen
              panelSendTopic: 'mqtt.0.SmartHome.NSPanel_1.cmnd.CustomSend',   // Bitte anpassen
          
              // 4 kleine Icons im Screensaver
              // Mit 3.9.0 neue Parameter - Bitte anpassen - siehe auch Wiki
              firstScreensaverEntity:   { ScreensaverEntity: 'accuweather.0.Hourly.h0.PrecipitationProbability',
                                          ScreensaverEntityFactor: 1,                                 //New
                                          ScreensaverEntityDecimalPlaces: 0,                          //New 
                                          ScreensaverEntityIcon: 'weather-pouring', 
                                          ScreensaverEntityText: 'Regen', 
                                          ScreensaverEntityUnitText: '%', 
                                          ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100} 
                                        },
              secondScreensaverEntity:  { ScreensaverEntity: 'accuweather.0.Current.WindSpeed', 
                                          ScreensaverEntityFactor: (1000/3600),                       //New
                                          ScreensaverEntityDecimalPlaces: 1,                          //New 
                                          ScreensaverEntityIcon: 'weather-windy', 
                                          ScreensaverEntityText: "Wind", 
                                          ScreensaverEntityUnitText: 'm/s', 
                                          ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 35} 
                                        },
              thirdScreensaverEntity:   { ScreensaverEntity: 'accuweather.0.Current.UVIndex',
                                          ScreensaverEntityFactor: 1,                                 //New
                                          ScreensaverEntityDecimalPlaces: 0,                          //New  
                                          ScreensaverEntityIcon: 'solar-power', 
                                          ScreensaverEntityText: 'UV', 
                                          ScreensaverEntityUnitText: '', 
                                          ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 9} 
                                        },
              fourthScreensaverEntity:  { ScreensaverEntity: 'accuweather.0.Current.RelativeHumidity', 
                                          ScreensaverEntityFactor: 1,                                 //New
                                          ScreensaverEntityDecimalPlaces: 0,                          //New 
                                          ScreensaverEntityIcon: 'water-percent', 
                                          ScreensaverEntityText: 'Luft', 
                                          ScreensaverEntityUnitText: '%', 
                                          ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65} 
                                        },
          
              // Indikator Icons im oberen Teil des Screensavers
              // Mit 3.9.0 neue Parameter - Bitte anpassen - siehe auch Wiki
              mrIcon1ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.SmartHome.NSPanel_1.stat.POWER1', 
                                          ScreensaverEntityIconOn: 'lightbulb',                           //Rename
                                          ScreensaverEntityIconOff: null, 
                                          ScreensaverEntityValue: null,                                   //New
                                          ScreensaverEntityValueDecimalPlace : 0,                         //New
                                          ScreensaverEntityValueUnit: null,                               //New
                                          ScreensaverEntityOnColor: On, 
                                          ScreensaverEntityOffColor: HMIOff },
              mrIcon2ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.SmartHome.NSPanel_1.stat.POWER2', 
                                          ScreensaverEntityIconOn: 'heat-wave',
                                          ScreensaverEntityIconOff: null, 
                                          ScreensaverEntityValue: NSPanel_Path + 'Sensor.ANALOG.Temperature',
                                          ScreensaverEntityValueDecimalPlace : 1,
                                          ScreensaverEntityValueUnit: '°', 
                                          ScreensaverEntityOnColor: MSRed, 
                                          ScreensaverEntityOffColor: Yellow },
          
              weatherEntity: 'alias.0.Wetter',    // Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden
              defaultOffColor: Off,               // Default-Farbe für Off-Zustände
              defaultOnColor: On,                 // Default-Farbe für On-Zustände
              defaultColor: Off,
              defaultBackgroundColor: HMIDark,    // Default-Hintergrundfarbe HMIDark oder Black
          
              // Mit 3.9.0 in Datenpunkte verschoben. Auch über Service Pages konfigurierbar
                  //alternativeScreensaverLayout: false,
                  //autoWeatherColorScreensaverLayout: true,
                  //timeoutScreensaver: 10,
                  //screenSaverDoubleClick: true,
                  //temperatureUnit: '°C',
                  //locale: 'de-DE',                    
          
              pages: [
          	    Buero_Seite_1,          //Beispiel-Seite
                      WLED,                   //Beispiel-Seite
                      Radiosender,            //Beispiel-Seite
                      SensorGrid,             //Beispiel-Seite
                      //CardLChartExample,      //Beispiel-Seite
                      //CardChartExample,       //Beispiel-Seite
                      //CardPowerExample,       //Beispiel-Seite
                      //SqueezeboxRPC,          //Beispiel-Seite
                      //Sonos,                  //Beispiel-Seite
                      //SpotifyPremium,         //Beispiel-Seite
                      //Alexa,                  //Beispiel-Seite
                      Buero_Seite_2,          //Beispiel-Seite
                      Buero_Klimaanlage,      //Beispiel-Seite 
                      Button_1,               //Beispiel-Seite
                      Test_Licht1,            //Beispiel-Seite
                      Test_Licht2,            //Beispiel-Seite
                      Test_Funktionen,        //Beispiel-Seite    
                      Fenster_1,              //Beispiel-Seite
                      Subpages_1,             //Beispiel-Seite
                      Buero_Themostat,        //Beispiel-Seite
                      Buero_Alarm,            //Beispiel-Seite
          	    
                      NSPanel_Service         //Auto-Alias Service Page
              ],
              subPages: [
          	        Abfall,                                 //Beispiel-Unterseite
                          WLAN,                                   //Beispiel-Unterseite
          	    
                          NSPanel_Infos,                          //Auto-Alias Service Page
                              NSPanel_Wifi_Info_1,                //Auto-Alias Service Page
                              NSPanel_Wifi_Info_2,                //Auto-Alias Service Page
                              NSPanel_Sensoren,                   //Auto-Alias Service Page
                              NSPanel_Hardware,                   //Auto-Alias Service Page
                          NSPanel_Einstellungen,                  //Auto-Alias Service Page
                              NSPanel_Screensaver,                //Auto-Alias Service Page
                                  NSPanel_ScreensaverDimmode,     //Auto-Alias Service Page
                                  NSPanel_ScreensaverOther,       //Auto-Alias Service Page
                                  NSPanel_Weather,                //Auto-Alias Service Page
                                  NSPanel_Dateformat,             //Auto-Alias Service Page
                                  NSPanel_Indicators,             //Auto-Alias Service Page
                                  NSPanel_Relays,                 //Auto-Alias Service Page
                          NSPanel_Firmware,                       //Auto-Alias Service Page
                              NSPanel_FirmwareTasmota,            //Auto-Alias Service Page
                              NSPanel_FirmwareBerry,              //Auto-Alias Service Page
                              NSPanel_FirmwareNextion,            //Auto-Alias Service Page
              ],
              button1Page: button1Page,   //Beispiel-Seite auf Button 1, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null, 
              button2Page: button2Page    //Beispiel-Seite auf Button 2, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null,
          };
          
          // _________________________________ Ab hier keine Konfiguration mehr _____________________________________
          
          
          Armilar 1 Reply Last reply Reply Quote 0
          • Armilar
            Armilar Most Active Forum Testing @muuulle last edited by

            @muuulle

            Eigentlich hat die Config einen ebenso großen Anteil daran 😉

            Sieht aber soweit ganz okay aus...

            Da das Script bereits in den Custom Send schreibt, gehe ich davon aus, dass der Rest beim abbonieren der Topics von Tasmota dann ebenfalls funktionieren wird.

            Also aktuelles Problem besteht noch in der Kommunikation zwischen Tasmota und dem MQTT-Adapter.

            Wie aktuell ist dein System?
            Frage mal nodeJS ab...

            M 2 Replies Last reply Reply Quote 0
            • M
              muuulle @Armilar last edited by

              @armilar

              pi@pi-broker:~ $ node -v
              v16.19.0
              
              1 Reply Last reply Reply Quote 0
              • M
                muuulle @Armilar last edited by muuulle

                @armilar
                Auf der Suche nach der Ursache bin ich hier drüber gestolpert.

                Ist das richtig?
                FAEDBF3B-87D9-4E99-BCE7-D7C938396AE2.jpeg

                631892F4-A9D7-4D87-9B16-F6FFD4D798E9.jpeg

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

                  @niiccooo1
                  0b49a0d2-03e1-4ac0-9f37-8df3bd325628-image.png

                  Der Funktioniert. Mache mir immer noch Gedanken darüber, warum du nicht alle Datenpunkte im Alias hast. Das alte Script zum Anlegen benutzt du hoffentlich nicht mehr?

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

                    @muuulle

                    f8853af1-d904-4a3d-8241-8f078e3fa23b-image.png

                    Ist bei mir so, wobei Syslog-Host die IP vom ioBroker ist

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

                      @armilar

                      Dein DNS ist wirklich abweichend vom Gateway?

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

                        Doppelpost

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

                          @armilar
                          Ja, hier läuft ein lokaler DNS (mit PiHole). Das dürfte MQTT nicht tangieren. Der Port wird dort nicht verwendet und geblockt wird laut Log nichts.

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

                            @armilar Ist deaktiviert

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

                              @muuulle

                              Also bis auf den DNS, User (klar) und Port (bei mir 1886) ist es bei mir identisch.

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

                                @niiccooo1

                                Das sind die Datenpunkte, die für den Media-Alias angelegt werden. Also das hat unten noch Repeat und Shuffle. Versuche die mal im Media selbst zu verdrahten. Eigentlich kann das nicht, dass die nicht mit angelegt wurden, da im gleichen Block...

                                if (adapterPlayerInstance == 'spotify-premium.0.') {
                                            if (existsObject(id) == false){
                                                console.log('Spotify Alias ' + id + ' does not exist - will be created now');
                                
                                                let dpPath: string = adapterPlayerInstance;
                                                try {
                                                    setObject(id, {_id: id + 'player', type: 'channel', common: {role: 'media', name:'media'}, native: {}});
                                                    await createAliasAsync(id + '.ACTUAL', dpPath + 'player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'value.volume', name: 'ACTUAL' });
                                                    await createAliasAsync(id + '.ALBUM', dpPath + 'player.album', true, <iobJS.StateCommon>{ type: 'string', role: 'media.album', name: 'ALBUM' });
                                                    await createAliasAsync(id + '.ARTIST', dpPath + 'player.artistName', true, <iobJS.StateCommon>{ type: 'string', role: 'media.artist', name: 'ARTIST' });
                                                    await createAliasAsync(id + '.TITLE', dpPath + 'player.trackName', true, <iobJS.StateCommon>{ type: 'string', role: 'media.title', name: 'TITLE' });
                                                    await createAliasAsync(id + '.CONTEXT_DESCRIPTION', dpPath + 'player.contextDescription', true, <iobJS.StateCommon>{ type: 'string', role: 'media.station', name: 'CONTEXT_DESCRIPTION' });
                                                    await createAliasAsync(id + '.NEXT', dpPath + 'player.skipPlus', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.next', name: 'NEXT' });
                                                    await createAliasAsync(id + '.PREV', dpPath + 'player.skipMinus', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.prev', name: 'PREV' });
                                                    await createAliasAsync(id + '.PLAY', dpPath + 'player.play', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.play', name: 'PLAY' });
                                                    await createAliasAsync(id + '.PAUSE', dpPath + 'player.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.pause', name: 'PAUSE' });
                                                    await createAliasAsync(id + '.STOP', dpPath + 'player.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.stop', name: 'STOP' });
                                                    await createAliasAsync(id + '.STATE', dpPath + 'player.isPlaying', true, <iobJS.StateCommon>{ type: 'boolean', role: 'media.state', name: 'STATE' });
                                                    await createAliasAsync(id + '.VOLUME', dpPath + 'player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'level.volume', name: 'VOLUME' });
                                                    await createAliasAsync(id + '.REPEAT', dpPath + 'player.repeat', true, <iobJS.StateCommon>{ type: 'string', role: 'value', name: 'REPEAT' });
                                                    await createAliasAsync(id + '.SHUFFLE', dpPath + 'player.shuffle', true, <iobJS.StateCommon>{ type: 'string', role: 'value', name: 'SHUFFLE' });
                                                
                                                } catch (err) {
                                                    console.warn('function createAutoMediaAlias: ' + err.message);
                                                }
                                            }
                                        }
                                
                                N 1 Reply Last reply Reply Quote 0
                                • M
                                  muuulle @Armilar last edited by

                                  @armilar
                                  Danke für deine Mühen.

                                  Sollte dir noch etwas einfallen, gerne mitteilen. Ich werde morgen Abend den kleinen nochmal neu mit Tasmota bespielen - vielleicht hilft das ja.

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

                                    @muuulle

                                    Ja, einmal das komplette Programm. Der Berry-Driver ist okay? Sonst den auch mal wegwerfen und erneuern. Sollte aber mit dem MQTT eigentlich nichts zu tun haben... Male eine andere Instanz vom MQTT-Adapter versucht?

                                    M 2 Replies Last reply Reply Quote 0
                                    • M
                                      muuulle @Armilar last edited by muuulle

                                      @armilar
                                      Eine zweite Instanz probierte ich noch nicht. Das werde ich zunächst noch ausprobieren.

                                      Ein Hardware Thema vom NSPanel kann aber ausgeschlossen werden. MQTT kommuniziert über WLAN. Oder?

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

                                        @muuulle

                                        Ja, ganz normal über WLAN. Da du das Panel ja erreichen kannst, sollte das passen. Gibt aber auch Parameter im Tasmota, mit denen man die Kommunikation von MQTT unterbrechen kann.

                                        c6644606-0e89-4def-b936-eef18e95d34f-image.png

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

                                          @armilar
                                          Ich lege den Alias mal selber an. Was für ein Geräte-Typ soll ich dafür verwenden?

                                          1 Reply Last reply Reply Quote 0
                                          • B
                                            BumBum last edited by

                                            Hallo zusammen, ich verwende das NSPanel mit ioBroker und hab auch die Aktuelle Version des TFT Treibers und auch die aktuelle Verson des Skripts (TypeScript v3.9.0.1).
                                            Ich habe das Problem, dass bei mir einige Datenpunkte nicht angezeigt werden. Beispielsweise ist die Seite "Dimmode (1)" (NSPanel_ScreensaverDimmode), komplett leer. Die Aliase und die Datenpunkte sind aber da. Auch fehlt die Anzeige der SSID auf der Seite NSPanel_Wifi_Info_2. Wie kann das sein? Hab ich was übersehen? Alle anderen Seiten funktionieren soweit.

                                            Schon mal danke für die Hilfe.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            923
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            lovelace ui nspanel sonoff
                                            260
                                            7128
                                            4413774
                                            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