Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Sonoff NSPanel

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    12
    1
    126

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

Sonoff NSPanel

Scheduled Pinned Locked Moved Hardware
1.5k Posts 78 Posters 679.8k Views 80 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ArmilarA Armilar

    @dapeace
    Habe mir den Trashschedule mal angesehen - den kannte ich noch gar nicht. Aber das ist genau die richtige Datenaufbereitung für jede Tonnenfarbe. Die kannst du dann einfach mit entsprechenden 4 Info-Aliasen visualisieren. Sollte klappen

    D Offline
    D Offline
    DaPeace
    wrote on last edited by
    #1066

    @armilar Jetzt siehts mal echt gut aus. Bis auf die Jalousien geht mal alles inkl. dem Müll. Danke für die Hilfe.

    Ich meinte jetzt nicht das man über das Skript die Alias erzeugt aber das man z.B. im Skript die statischen Datenpunkte auswertet die das Skript selbst erstellt und wo es ja eigentlich weiß wohin die verlinkt sind. Dann hätte man direkt beim Start schonmal so Sachen wie Tasmota Firmware und die Panel-Updates dabei. Wenn man als Laie das Skript so installiert dann sieht das von Anfang an irgendwie Fehlerhaft aus weil absolut alles fehlt. Hat zwar den Vorteil das man sich damit beschäftigen muß wie das Konstrukt funktioniert aber den Nachteil das der ein oder andere sicher sofort wegläuft wenn er das sieht.. :-)

    1 Reply Last reply
    0
    • ArmilarA Armilar

      @frank-marschel sagte in Sonoff NSPanel:

      Hallo Leute!
      Erst mal ein GROßES LOB an die Entwickler und all die Helfer hier.

      Lese seit Samstag mit, und hänge immer noch an folgendem Problem:
      Bei mir werden keine Wetterdaten angezeigt und auch keine Symbole...

      Accu Weather läuft. Kann das an der Datei IconsSelector liegen?

      Das Skript läuft, ich denke dann liegt es nicht an der IconsSelector. Falls Du Fehlermeldungen hast, gerne Posten. Die Zeit wird angezeigt?

      F Offline
      F Offline
      Frank Marschel
      wrote on last edited by
      #1067

      @armilar ja, die Zeit wird angezeigt, Datum wird angezeigt.

      Fehlermeldungen bekomme ich nicht im iobroker ( Log)
      auch nicht in der Konsole des Panels...

      Bin echt ratlos ???

      ArmilarA 1 Reply Last reply
      0
      • F Frank Marschel

        @armilar ja, die Zeit wird angezeigt, Datum wird angezeigt.

        Fehlermeldungen bekomme ich nicht im iobroker ( Log)
        auch nicht in der Konsole des Panels...

        Bin echt ratlos ???

        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        wrote on last edited by
        #1068

        @frank-marschel sagte in Sonoff NSPanel:

        @armilar ja, die Zeit wird angezeigt, Datum wird angezeigt.

        Fehlermeldungen bekomme ich nicht im iobroker ( Log)
        auch nicht in der Konsole des Panels...

        Bin echt ratlos ???

        Für die kleinen Icons werden kein Aliase benötigt und das sollte eigentlich zügig losrennen. IoBroker evtl. mal durchstarten? Sende mal deinen Config Code (oberer Teil).

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        F 1 Reply Last reply
        0
        • ArmilarA Armilar

          @frank-marschel sagte in Sonoff NSPanel:

          @armilar ja, die Zeit wird angezeigt, Datum wird angezeigt.

          Fehlermeldungen bekomme ich nicht im iobroker ( Log)
          auch nicht in der Konsole des Panels...

          Bin echt ratlos ???

          Für die kleinen Icons werden kein Aliase benötigt und das sollte eigentlich zügig losrennen. IoBroker evtl. mal durchstarten? Sende mal deinen Config Code (oberer Teil).

          F Offline
          F Offline
          Frank Marschel
          wrote on last edited by
          #1069

          @armilar ```
          var Icons = new IconsSelector();
          var timeoutSlider: any;
          const NSPanel_Path = "0_userdata.0.NSPanel.1."
          const Debug = false;
          var manually_Update = true;

          //const Off: RGB = { red: 68, green: 115, blue: 158 }; //Blau-Off
          const Off: RGB = { red: 253, green: 128, blue: 0 }; //Orange-Off - schönere Farbübergänge
          const On: RGB = { red: 253, green: 216, blue: 53 };
          const MSRed: RGB = { red: 251, green: 105, blue: 98 };
          const MSYellow: RGB = { red: 255, green: 235, blue: 156 };
          const MSGreen: RGB = { red: 121, green: 222, blue: 121 };
          const Red: RGB = { red: 255, green: 0, blue: 0 };
          const White: RGB = { red: 255, green: 255, blue: 255 };
          const Yellow: RGB = { red: 255, green: 255, blue: 0 };
          const Green: RGB = { red: 0, green: 255, blue: 0 };
          const Blue: RGB = { red: 0, green: 0, blue: 255 };
          const Gray: RGB = { red: 136, green: 136, blue: 136 };
          const Black: RGB = { red: 0, green: 0, blue: 0 };
          const colorSpotify: RGB = { red: 30, green: 215, blue: 96 };
          const colorAlexa: RGB = { red: 49, green: 196, blue: 243 };
          const colorRadio: RGB = { red: 255, green: 127, blue: 0 };
          const BatteryFull: RGB = { red: 96, green: 176, blue: 62 };
          const BatteryEmpty: RGB = { red: 179, green: 45, blue: 25 };

          //----------------------Begin Dimmode
          //Screensaver nachts auf dunkel ("brightnessNight: z.B. 2") oder aus ("brightnessNight:0")
          if (existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourNight") == false) {
          createState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8)});
          createState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7)});
          createState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1)});
          createState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22)});
          }
          var vBrightnessDay = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay").val;
          var vBrightnessNight = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight").val;
          var vTimeDay = getState(NSPanel_Path + "NSPanel_Dimmode_hourDay").val;
          if (vTimeDay < 10) {
          var TimeDay = "0" + vTimeDay.toString() + ":00";
          } else {
          var TimeDay = vTimeDay.toString() + ":00";
          }
          var vTimeNight = getState(NSPanel_Path + "NSPanel_Dimmode_hourNight").val;
          if (vTimeNight < 10) {
          var TimeNight = "0" + vTimeNight.toString() + ":00";
          } else {
          var TimeNight = vTimeNight.toString() + ":00";
          }
          var timeDimMode = <DimMode>{dimmodeOn: true, brightnessDay: vBrightnessDay, brightnessNight: vBrightnessNight, timeDay: TimeDay, timeNight: TimeNight};
          //--------------------End Dimmode

          //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
          var weatherForecast = true; //true = WheatherForecast 5 Days --- false = Config --> firstScreensaverEntity - fourthScreensaverEntity ...

          //Alexa-Instanz
          var alexaInstanz = "alexa2.0"
          var alexaDevice = "G0XXXXXXXXXXXXXX"; //Primär zu steuerndes Device oder Gruppe aus alexa2-Adapter (Seriennummer)

          // Wenn alexaSpeakerList definiert, dann werden Einträge verwendet, sonst alle relevanten Devices aus Alexa-Instanz
          // Speakerwechsel funktioniert nicht bei Radio/TuneIn sonden bei Playlists
          //const alexaSpeakerList = []; //Beispiel ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino"];
          const alexaSpeakerList = ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino","Echo Dot Küche"];

          //Datenpunkte für Nachricht an Screensaver
          var screensaverNotifyHeading = NSPanel_Path + "ScreensaverInfo.popupNotifyHeading";
          var screensaverNotifyText = NSPanel_Path + "ScreensaverInfo.popupNotifyText";
          createState(screensaverNotifyHeading, {type: 'string'});
          createState(screensaverNotifyText, {type: 'string'});

          //Datenpunkte für Nachricht popupNotify Page
          var popupNotifyHeading = NSPanel_Path + "popupNotify.popupNotifyHeading";
          var popupNotifyText = NSPanel_Path + "popupNotify.popupNotifyText";
          var popupNotifyInternalName = NSPanel_Path + "popupNotify.popupNotifyInternalName"; // Wird mit Button-Action zurückgeschrieben
          var popupNotifyButton1Text = NSPanel_Path + "popupNotify.popupNotifyButton1Text";
          var popupNotifyButton2Text = NSPanel_Path + "popupNotify.popupNotifyButton2Text";
          var popupNotifySleepTimeout = NSPanel_Path + "popupNotify.popupNotifySleepTimeout"; // in sek. / wenn 0, dann bleibt die Nachricht stehen
          var popupNotifyAction = NSPanel_Path + "popupNotify.popupNotifyAction"; // Antwort aus dem Panel true/false
          createState(popupNotifyHeading, {type: 'string'});
          createState(popupNotifyText, {type: 'string'});
          createState(popupNotifyInternalName, {type: 'string'});
          createState(popupNotifyButton1Text, {type: 'string'});
          createState(popupNotifyButton2Text, {type: 'string'});
          createState(popupNotifySleepTimeout, {type: 'number'});
          createState(popupNotifyAction, {type: 'boolean'});

          var Test_Licht: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Color Aliase",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLichteinzeln", name: "RGB-Licht Hex-Color", interpolateColor: true},
          //<PageItem>{ id: "alias.0.NSPanel_1.TestFarbtemperatur", name: "Farbtemperatur", interpolateColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLicht", name: "RGB-Licht", minValueBrightness: 0, maxValueBrightness: 100, interpolateColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.TestCTmitHUE", name: "HUE-Licht-CT", minValueBrightness: 0, maxValueBrightness: 70, minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.TestHUELicht", name: "HUE-Licht-Color", minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true}
          ]
          };

          var Test_Funktionen: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Sonstige Aliase",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.TestLautstärke", offColor: MSRed /if mute=true/, onColor: MSGreen ,name: "Echo Spot Büro", minValue: 0, maxValue: 100},
          <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur",name: "Temperatur außen", icon: "thermometer", onColor: White},
          <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte außen", icon: "water-percent", unit: "%H", onColor: White},
          <PageItem>{ id: "alias.0.NSPanel_1.TestInfo", name: "Windstärke", icon: "wind-power-outline", offColor: MSRed, onColor: MSGreen, unit: "bft", minValue: 0, maxValue: 12, interpolateColor: true, useColor: true}
          ]
          };

          var Buero_Seite_1: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Büro",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", interpolateColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", interpolateColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.Testlampe2", name: "Filamentlampe", minValueBrightness: 0, maxValueBrightness: 70, interpolateColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", icon2: "",offColor: MSRed, onColor: MSGreen}
          //<PageItem>{ id: "alias.0.NSPanel_1.TestVentil1", icon: "valve-open", icon2: "valve-closed",offColor: MSRed, onColor: MSGreen, name: "Test-Ventil 1"}
          ]
          };

          var Fenster_1: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Fenster und Türen",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
          <PageItem>{ id: "alias.0.NSPanel_1.Haustuer", offColor: MSRed, onColor: MSGreen, name: "Haustür"},
          <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", onColor: White, name: "IKEA Fyrtur"},
          <PageItem>{ id: "alias.0.NSPanel_1.TestDoorlock", offColor: MSRed, onColor: MSGreen, name: "Türschloss"},
          ]
          };

          var Button_1: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Button Aliase",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.TestTastensensor", name: "Tastensensor (FFN)"},
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "Taste (NDR2)", onColor: colorRadio},
          ]
          };

          var Subpages_1: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Test Subpages",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ navigate: true, id: "Abfall", onColor: White, name: "Abfallkalender"},
          <PageItem>{ navigate: true, id: "WLAN", onColor: White, name: "Gäste WLAN"},
          ]
          };

          //Subpage 1 von Subpages_1
          var Abfall: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Abfallkalender",
          "useColor": true,
          "subPage": true,
          "parent": Subpages_1,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event1",icon: "trash-can"},
          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event2",icon: "trash-can"},
          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event3",icon: "trash-can"},
          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event4",icon: "trash-can"}
          ]
          };

          var Buero_Seite_2: PageGrid =
          {
          "type": "cardGrid",
          "heading": "Büro 2",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", name: "Schreibtisch"},
          <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", name: "Deckenlampe"},
          <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
          <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", offColor: MSRed, onColor: MSGreen},
          <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "projector-screen", onColor: White, name: "Beamer"},
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "play", onColor: White, name: "TuneIn"}
          ]
          };

          var Alexa: PageMedia =
          {
          "type": "cardMedia",
          "heading": "Alexa",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alexa.PlayerBuero" }]
          };

          var Buero_Themostat: PageThermo =
          {
          "type": "cardThermo",
          "heading": "Test Thermostat",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [<PageItem>{ id: "alias.0.NSPanel_1.Thermostat_Büro", minValue: 50, maxValue: 300 }]
          };

          var Buero_Klimaanlage: PageThermo =
          {
          "type": "cardThermo",
          "heading": "Test Klimaanlage",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [<PageItem>{ id: "alias.0.NSPanel_1.TestKlimaanlage", minValue: 170, maxValue: 250}]
          };

          //Subpage 2 von Subpages_1
          var WLAN: PageQR =
          {
          "type": "cardQR",
          "heading": "Gäste WLAN",
          "useColor": true,
          "subPage": true,
          "parent": Subpages_1,
          "items": [<PageItem>{ id: "alias.0.NSPanel_1.Guest_Wifi" }]
          };

          var Buero_Alarm: PageAlarm =
          {
          "type": "cardAlarm",
          "heading": "Alarm",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alarm" }]
          };

          var button1Page: PageGrid =
          {
          "type": "cardGrid",
          "heading": "Radio",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.FFN", icon: "radio", name: "FFN", onColor: colorRadio},
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.Antenne" , icon: "radio", name: "Antenne Nds.", onColor: colorRadio},
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "NDR2", onColor: colorRadio},
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "radio", name: "Radio BOB", onColor: colorRadio},
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.Spotify", icon: "spotify", name: "Party Playlist", onColor: colorSpotify},
          <PageItem>{ id: "alias.0.NSPanel_1.Radio.Alexa", icon: "playlist-music", name: "Playlist 2021", onColor: colorAlexa}
          ]
          };

          var button2Page: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Büro",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe"},
          <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung"}
          ]
          };

          //Subpages 2 (+ Info)
          var Service: PageEntities =
          {
          "type": "cardEntities",
          "heading": "NSPanel Service",
          "useColor": true,
          "subPage": false,
          "parent": undefined,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_AutoUpdate", name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
          <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
          <PageItem>{ navigate: true, id: "NSPanel_Firmware_Updates", icon: "update", onColor: White, name: "Manuelle-Updates"},
          <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Einstellungen"}
          ]
          };

          //Subpage 1 von Subpages_2
          var NSPanel_Infos: PageEntities =
          {
          "type": "cardEntities",
          "heading": "NSPanel Infos",
          "useColor": true,
          "subPage": true,
          "parent": Service,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_Hardware", name: "Hardware", icon: "memory", offColor: MSYellow, onColor: MSYellow, useColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_ESP_Temp", name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_UpTime", name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_RSSI", name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
          ]
          };

          //Subpage 2 von Subpages_2
          var NSPanel_Einstellungen: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Screensaver",
          "useColor": true,
          "subPage": true,
          "parent": Service,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessDay", name: "Brightness Tag", icon: "brightness-5", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
          <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessNight", name: "Brightness Nacht", icon: "brightness-4", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
          <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourDay", name: "Stunde Tag", icon: "sun-clock", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
          <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourNight", name: "Stunde Nacht", icon: "sun-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
          ]
          };

          //Subpage 3 von Subpages_2
          var NSPanel_Firmware_Updates: PageEntities =
          {
          "type": "cardEntities",
          "heading": "Firmware-Updates",
          "useColor": true,
          "subPage": true,
          "parent": Service,
          "items": [
          <PageItem>{ id: "alias.0.NSPanel_1.Tasmota_Version", name: "Tasmota Firmware", useColor: true},
          <PageItem>{ id: "alias.0.NSPanel_1.TFT_Firmware", name: "TFT-Firmware", useColor: true},
          ]
          };

          export const config: Config = {
          panelRecvTopic: "mqtt.0.oben.nspaneltest.tele.RESULT", //anpassen
          panelSendTopic: "mqtt.0.oben.nspaneltest.cmnd.CustomSend", //anpassen
          firstScreensaverEntity: { ScreensaverEntity: "hmip.0.devices.3014F711A000185BE9922BCF.channels.1.humidity", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "Luft", ScreensaverEntityUnitText: "%" },
          secondScreensaverEntity: { ScreensaverEntity: "accuweather.0.Daily.Day1.Day.PrecipitationProbability", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "Regen", ScreensaverEntityUnitText: "%" },
          thirdScreensaverEntity: { ScreensaverEntity: "0_userdata.0.Wetter.Windstaerke_homaticIP", ScreensaverEntityIcon: "weather-windy", ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: "bft" },
          fourthScreensaverEntity: { ScreensaverEntity: "accuweather.0.Current.UVIndex", ScreensaverEntityIcon: "solar-power", ScreensaverEntityText: "UV", ScreensaverEntityUnitText: "" },
          timeoutScreensaver: 15,
          dimmode: 8,
          active: 100, //Standard-Brightness TFT
          screenSaverDoubleClick: false,
          locale: "de-DE", //en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
          timeFormat: "%H:%M", //currently not used
          dateFormat: "%A, %d. %B %Y", //currently not used
          weatherEntity: "alias.0.Wetter",
          defaultOffColor: Off,
          defaultOnColor: On,
          defaultColor: Off,
          temperatureUnit: "°C",
          pages: [
          Buero_Seite_2,
          Buero_Seite_1,
          Buero_Klimaanlage,
          Button_1,
          Test_Licht,
          Test_Funktionen,
          Fenster_1,
          Subpages_1,
          Alexa,
          Buero_Themostat,
          Buero_Alarm,
          Service
          ],
          subPages: [
          Abfall,
          WLAN,
          NSPanel_Infos,
          NSPanel_Einstellungen,
          NSPanel_Firmware_Updates
          ],
          button1Page: button1Page,
          button2Page: button2Page
          };
          t

          ArmilarA 1 Reply Last reply
          0
          • F Frank Marschel

            @armilar ```
            var Icons = new IconsSelector();
            var timeoutSlider: any;
            const NSPanel_Path = "0_userdata.0.NSPanel.1."
            const Debug = false;
            var manually_Update = true;

            //const Off: RGB = { red: 68, green: 115, blue: 158 }; //Blau-Off
            const Off: RGB = { red: 253, green: 128, blue: 0 }; //Orange-Off - schönere Farbübergänge
            const On: RGB = { red: 253, green: 216, blue: 53 };
            const MSRed: RGB = { red: 251, green: 105, blue: 98 };
            const MSYellow: RGB = { red: 255, green: 235, blue: 156 };
            const MSGreen: RGB = { red: 121, green: 222, blue: 121 };
            const Red: RGB = { red: 255, green: 0, blue: 0 };
            const White: RGB = { red: 255, green: 255, blue: 255 };
            const Yellow: RGB = { red: 255, green: 255, blue: 0 };
            const Green: RGB = { red: 0, green: 255, blue: 0 };
            const Blue: RGB = { red: 0, green: 0, blue: 255 };
            const Gray: RGB = { red: 136, green: 136, blue: 136 };
            const Black: RGB = { red: 0, green: 0, blue: 0 };
            const colorSpotify: RGB = { red: 30, green: 215, blue: 96 };
            const colorAlexa: RGB = { red: 49, green: 196, blue: 243 };
            const colorRadio: RGB = { red: 255, green: 127, blue: 0 };
            const BatteryFull: RGB = { red: 96, green: 176, blue: 62 };
            const BatteryEmpty: RGB = { red: 179, green: 45, blue: 25 };

            //----------------------Begin Dimmode
            //Screensaver nachts auf dunkel ("brightnessNight: z.B. 2") oder aus ("brightnessNight:0")
            if (existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourNight") == false) {
            createState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8)});
            createState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7)});
            createState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1)});
            createState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22)});
            }
            var vBrightnessDay = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay").val;
            var vBrightnessNight = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight").val;
            var vTimeDay = getState(NSPanel_Path + "NSPanel_Dimmode_hourDay").val;
            if (vTimeDay < 10) {
            var TimeDay = "0" + vTimeDay.toString() + ":00";
            } else {
            var TimeDay = vTimeDay.toString() + ":00";
            }
            var vTimeNight = getState(NSPanel_Path + "NSPanel_Dimmode_hourNight").val;
            if (vTimeNight < 10) {
            var TimeNight = "0" + vTimeNight.toString() + ":00";
            } else {
            var TimeNight = vTimeNight.toString() + ":00";
            }
            var timeDimMode = <DimMode>{dimmodeOn: true, brightnessDay: vBrightnessDay, brightnessNight: vBrightnessNight, timeDay: TimeDay, timeNight: TimeNight};
            //--------------------End Dimmode

            //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
            var weatherForecast = true; //true = WheatherForecast 5 Days --- false = Config --> firstScreensaverEntity - fourthScreensaverEntity ...

            //Alexa-Instanz
            var alexaInstanz = "alexa2.0"
            var alexaDevice = "G0XXXXXXXXXXXXXX"; //Primär zu steuerndes Device oder Gruppe aus alexa2-Adapter (Seriennummer)

            // Wenn alexaSpeakerList definiert, dann werden Einträge verwendet, sonst alle relevanten Devices aus Alexa-Instanz
            // Speakerwechsel funktioniert nicht bei Radio/TuneIn sonden bei Playlists
            //const alexaSpeakerList = []; //Beispiel ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino"];
            const alexaSpeakerList = ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino","Echo Dot Küche"];

            //Datenpunkte für Nachricht an Screensaver
            var screensaverNotifyHeading = NSPanel_Path + "ScreensaverInfo.popupNotifyHeading";
            var screensaverNotifyText = NSPanel_Path + "ScreensaverInfo.popupNotifyText";
            createState(screensaverNotifyHeading, {type: 'string'});
            createState(screensaverNotifyText, {type: 'string'});

            //Datenpunkte für Nachricht popupNotify Page
            var popupNotifyHeading = NSPanel_Path + "popupNotify.popupNotifyHeading";
            var popupNotifyText = NSPanel_Path + "popupNotify.popupNotifyText";
            var popupNotifyInternalName = NSPanel_Path + "popupNotify.popupNotifyInternalName"; // Wird mit Button-Action zurückgeschrieben
            var popupNotifyButton1Text = NSPanel_Path + "popupNotify.popupNotifyButton1Text";
            var popupNotifyButton2Text = NSPanel_Path + "popupNotify.popupNotifyButton2Text";
            var popupNotifySleepTimeout = NSPanel_Path + "popupNotify.popupNotifySleepTimeout"; // in sek. / wenn 0, dann bleibt die Nachricht stehen
            var popupNotifyAction = NSPanel_Path + "popupNotify.popupNotifyAction"; // Antwort aus dem Panel true/false
            createState(popupNotifyHeading, {type: 'string'});
            createState(popupNotifyText, {type: 'string'});
            createState(popupNotifyInternalName, {type: 'string'});
            createState(popupNotifyButton1Text, {type: 'string'});
            createState(popupNotifyButton2Text, {type: 'string'});
            createState(popupNotifySleepTimeout, {type: 'number'});
            createState(popupNotifyAction, {type: 'boolean'});

            var Test_Licht: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Color Aliase",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLichteinzeln", name: "RGB-Licht Hex-Color", interpolateColor: true},
            //<PageItem>{ id: "alias.0.NSPanel_1.TestFarbtemperatur", name: "Farbtemperatur", interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLicht", name: "RGB-Licht", minValueBrightness: 0, maxValueBrightness: 100, interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TestCTmitHUE", name: "HUE-Licht-CT", minValueBrightness: 0, maxValueBrightness: 70, minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TestHUELicht", name: "HUE-Licht-Color", minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true}
            ]
            };

            var Test_Funktionen: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Sonstige Aliase",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestLautstärke", offColor: MSRed /if mute=true/, onColor: MSGreen ,name: "Echo Spot Büro", minValue: 0, maxValue: 100},
            <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur",name: "Temperatur außen", icon: "thermometer", onColor: White},
            <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte außen", icon: "water-percent", unit: "%H", onColor: White},
            <PageItem>{ id: "alias.0.NSPanel_1.TestInfo", name: "Windstärke", icon: "wind-power-outline", offColor: MSRed, onColor: MSGreen, unit: "bft", minValue: 0, maxValue: 12, interpolateColor: true, useColor: true}
            ]
            };

            var Buero_Seite_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Büro",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.Testlampe2", name: "Filamentlampe", minValueBrightness: 0, maxValueBrightness: 70, interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", icon2: "",offColor: MSRed, onColor: MSGreen}
            //<PageItem>{ id: "alias.0.NSPanel_1.TestVentil1", icon: "valve-open", icon2: "valve-closed",offColor: MSRed, onColor: MSGreen, name: "Test-Ventil 1"}
            ]
            };

            var Fenster_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Fenster und Türen",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
            <PageItem>{ id: "alias.0.NSPanel_1.Haustuer", offColor: MSRed, onColor: MSGreen, name: "Haustür"},
            <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", onColor: White, name: "IKEA Fyrtur"},
            <PageItem>{ id: "alias.0.NSPanel_1.TestDoorlock", offColor: MSRed, onColor: MSGreen, name: "Türschloss"},
            ]
            };

            var Button_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Button Aliase",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestTastensensor", name: "Tastensensor (FFN)"},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "Taste (NDR2)", onColor: colorRadio},
            ]
            };

            var Subpages_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Test Subpages",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ navigate: true, id: "Abfall", onColor: White, name: "Abfallkalender"},
            <PageItem>{ navigate: true, id: "WLAN", onColor: White, name: "Gäste WLAN"},
            ]
            };

            //Subpage 1 von Subpages_1
            var Abfall: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Abfallkalender",
            "useColor": true,
            "subPage": true,
            "parent": Subpages_1,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event1",icon: "trash-can"},
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event2",icon: "trash-can"},
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event3",icon: "trash-can"},
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event4",icon: "trash-can"}
            ]
            };

            var Buero_Seite_2: PageGrid =
            {
            "type": "cardGrid",
            "heading": "Büro 2",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", name: "Schreibtisch"},
            <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", name: "Deckenlampe"},
            <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
            <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", offColor: MSRed, onColor: MSGreen},
            <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "projector-screen", onColor: White, name: "Beamer"},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "play", onColor: White, name: "TuneIn"}
            ]
            };

            var Alexa: PageMedia =
            {
            "type": "cardMedia",
            "heading": "Alexa",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alexa.PlayerBuero" }]
            };

            var Buero_Themostat: PageThermo =
            {
            "type": "cardThermo",
            "heading": "Test Thermostat",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Thermostat_Büro", minValue: 50, maxValue: 300 }]
            };

            var Buero_Klimaanlage: PageThermo =
            {
            "type": "cardThermo",
            "heading": "Test Klimaanlage",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.TestKlimaanlage", minValue: 170, maxValue: 250}]
            };

            //Subpage 2 von Subpages_1
            var WLAN: PageQR =
            {
            "type": "cardQR",
            "heading": "Gäste WLAN",
            "useColor": true,
            "subPage": true,
            "parent": Subpages_1,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Guest_Wifi" }]
            };

            var Buero_Alarm: PageAlarm =
            {
            "type": "cardAlarm",
            "heading": "Alarm",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alarm" }]
            };

            var button1Page: PageGrid =
            {
            "type": "cardGrid",
            "heading": "Radio",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.FFN", icon: "radio", name: "FFN", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Antenne" , icon: "radio", name: "Antenne Nds.", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "NDR2", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "radio", name: "Radio BOB", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Spotify", icon: "spotify", name: "Party Playlist", onColor: colorSpotify},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Alexa", icon: "playlist-music", name: "Playlist 2021", onColor: colorAlexa}
            ]
            };

            var button2Page: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Büro",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe"},
            <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung"}
            ]
            };

            //Subpages 2 (+ Info)
            var Service: PageEntities =
            {
            "type": "cardEntities",
            "heading": "NSPanel Service",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_AutoUpdate", name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
            <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
            <PageItem>{ navigate: true, id: "NSPanel_Firmware_Updates", icon: "update", onColor: White, name: "Manuelle-Updates"},
            <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Einstellungen"}
            ]
            };

            //Subpage 1 von Subpages_2
            var NSPanel_Infos: PageEntities =
            {
            "type": "cardEntities",
            "heading": "NSPanel Infos",
            "useColor": true,
            "subPage": true,
            "parent": Service,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_Hardware", name: "Hardware", icon: "memory", offColor: MSYellow, onColor: MSYellow, useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_ESP_Temp", name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_UpTime", name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_RSSI", name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
            ]
            };

            //Subpage 2 von Subpages_2
            var NSPanel_Einstellungen: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Screensaver",
            "useColor": true,
            "subPage": true,
            "parent": Service,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessDay", name: "Brightness Tag", icon: "brightness-5", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessNight", name: "Brightness Nacht", icon: "brightness-4", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourDay", name: "Stunde Tag", icon: "sun-clock", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourNight", name: "Stunde Nacht", icon: "sun-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
            ]
            };

            //Subpage 3 von Subpages_2
            var NSPanel_Firmware_Updates: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Firmware-Updates",
            "useColor": true,
            "subPage": true,
            "parent": Service,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Tasmota_Version", name: "Tasmota Firmware", useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TFT_Firmware", name: "TFT-Firmware", useColor: true},
            ]
            };

            export const config: Config = {
            panelRecvTopic: "mqtt.0.oben.nspaneltest.tele.RESULT", //anpassen
            panelSendTopic: "mqtt.0.oben.nspaneltest.cmnd.CustomSend", //anpassen
            firstScreensaverEntity: { ScreensaverEntity: "hmip.0.devices.3014F711A000185BE9922BCF.channels.1.humidity", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "Luft", ScreensaverEntityUnitText: "%" },
            secondScreensaverEntity: { ScreensaverEntity: "accuweather.0.Daily.Day1.Day.PrecipitationProbability", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "Regen", ScreensaverEntityUnitText: "%" },
            thirdScreensaverEntity: { ScreensaverEntity: "0_userdata.0.Wetter.Windstaerke_homaticIP", ScreensaverEntityIcon: "weather-windy", ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: "bft" },
            fourthScreensaverEntity: { ScreensaverEntity: "accuweather.0.Current.UVIndex", ScreensaverEntityIcon: "solar-power", ScreensaverEntityText: "UV", ScreensaverEntityUnitText: "" },
            timeoutScreensaver: 15,
            dimmode: 8,
            active: 100, //Standard-Brightness TFT
            screenSaverDoubleClick: false,
            locale: "de-DE", //en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
            timeFormat: "%H:%M", //currently not used
            dateFormat: "%A, %d. %B %Y", //currently not used
            weatherEntity: "alias.0.Wetter",
            defaultOffColor: Off,
            defaultOnColor: On,
            defaultColor: Off,
            temperatureUnit: "°C",
            pages: [
            Buero_Seite_2,
            Buero_Seite_1,
            Buero_Klimaanlage,
            Button_1,
            Test_Licht,
            Test_Funktionen,
            Fenster_1,
            Subpages_1,
            Alexa,
            Buero_Themostat,
            Buero_Alarm,
            Service
            ],
            subPages: [
            Abfall,
            WLAN,
            NSPanel_Infos,
            NSPanel_Einstellungen,
            NSPanel_Firmware_Updates
            ],
            button1Page: button1Page,
            button2Page: button2Page
            };
            t

            ArmilarA Offline
            ArmilarA Offline
            Armilar
            Most Active Forum Testing
            wrote on last edited by
            #1070

            @frank-marschel sagte in Sonoff NSPanel:

            @armilar ```
            var Icons = new IconsSelector();
            var timeoutSlider: any;
            const NSPanel_Path = "0_userdata.0.NSPanel.1."
            const Debug = false;
            var manually_Update = true;

            //const Off: RGB = { red: 68, green: 115, blue: 158 }; //Blau-Off
            const Off: RGB = { red: 253, green: 128, blue: 0 }; //Orange-Off - schönere Farbübergänge
            const On: RGB = { red: 253, green: 216, blue: 53 };
            const MSRed: RGB = { red: 251, green: 105, blue: 98 };
            const MSYellow: RGB = { red: 255, green: 235, blue: 156 };
            const MSGreen: RGB = { red: 121, green: 222, blue: 121 };
            const Red: RGB = { red: 255, green: 0, blue: 0 };
            const White: RGB = { red: 255, green: 255, blue: 255 };
            const Yellow: RGB = { red: 255, green: 255, blue: 0 };
            const Green: RGB = { red: 0, green: 255, blue: 0 };
            const Blue: RGB = { red: 0, green: 0, blue: 255 };
            const Gray: RGB = { red: 136, green: 136, blue: 136 };
            const Black: RGB = { red: 0, green: 0, blue: 0 };
            const colorSpotify: RGB = { red: 30, green: 215, blue: 96 };
            const colorAlexa: RGB = { red: 49, green: 196, blue: 243 };
            const colorRadio: RGB = { red: 255, green: 127, blue: 0 };
            const BatteryFull: RGB = { red: 96, green: 176, blue: 62 };
            const BatteryEmpty: RGB = { red: 179, green: 45, blue: 25 };

            //----------------------Begin Dimmode
            //Screensaver nachts auf dunkel ("brightnessNight: z.B. 2") oder aus ("brightnessNight:0")
            if (existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourNight") == false) {
            createState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8)});
            createState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7)});
            createState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1)});
            createState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22)});
            }
            var vBrightnessDay = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay").val;
            var vBrightnessNight = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight").val;
            var vTimeDay = getState(NSPanel_Path + "NSPanel_Dimmode_hourDay").val;
            if (vTimeDay < 10) {
            var TimeDay = "0" + vTimeDay.toString() + ":00";
            } else {
            var TimeDay = vTimeDay.toString() + ":00";
            }
            var vTimeNight = getState(NSPanel_Path + "NSPanel_Dimmode_hourNight").val;
            if (vTimeNight < 10) {
            var TimeNight = "0" + vTimeNight.toString() + ":00";
            } else {
            var TimeNight = vTimeNight.toString() + ":00";
            }
            var timeDimMode = <DimMode>{dimmodeOn: true, brightnessDay: vBrightnessDay, brightnessNight: vBrightnessNight, timeDay: TimeDay, timeNight: TimeNight};
            //--------------------End Dimmode

            //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
            var weatherForecast = true; //true = WheatherForecast 5 Days --- false = Config --> firstScreensaverEntity - fourthScreensaverEntity ...

            //Alexa-Instanz
            var alexaInstanz = "alexa2.0"
            var alexaDevice = "G0XXXXXXXXXXXXXX"; //Primär zu steuerndes Device oder Gruppe aus alexa2-Adapter (Seriennummer)

            // Wenn alexaSpeakerList definiert, dann werden Einträge verwendet, sonst alle relevanten Devices aus Alexa-Instanz
            // Speakerwechsel funktioniert nicht bei Radio/TuneIn sonden bei Playlists
            //const alexaSpeakerList = []; //Beispiel ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino"];
            const alexaSpeakerList = ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino","Echo Dot Küche"];

            //Datenpunkte für Nachricht an Screensaver
            var screensaverNotifyHeading = NSPanel_Path + "ScreensaverInfo.popupNotifyHeading";
            var screensaverNotifyText = NSPanel_Path + "ScreensaverInfo.popupNotifyText";
            createState(screensaverNotifyHeading, {type: 'string'});
            createState(screensaverNotifyText, {type: 'string'});

            //Datenpunkte für Nachricht popupNotify Page
            var popupNotifyHeading = NSPanel_Path + "popupNotify.popupNotifyHeading";
            var popupNotifyText = NSPanel_Path + "popupNotify.popupNotifyText";
            var popupNotifyInternalName = NSPanel_Path + "popupNotify.popupNotifyInternalName"; // Wird mit Button-Action zurückgeschrieben
            var popupNotifyButton1Text = NSPanel_Path + "popupNotify.popupNotifyButton1Text";
            var popupNotifyButton2Text = NSPanel_Path + "popupNotify.popupNotifyButton2Text";
            var popupNotifySleepTimeout = NSPanel_Path + "popupNotify.popupNotifySleepTimeout"; // in sek. / wenn 0, dann bleibt die Nachricht stehen
            var popupNotifyAction = NSPanel_Path + "popupNotify.popupNotifyAction"; // Antwort aus dem Panel true/false
            createState(popupNotifyHeading, {type: 'string'});
            createState(popupNotifyText, {type: 'string'});
            createState(popupNotifyInternalName, {type: 'string'});
            createState(popupNotifyButton1Text, {type: 'string'});
            createState(popupNotifyButton2Text, {type: 'string'});
            createState(popupNotifySleepTimeout, {type: 'number'});
            createState(popupNotifyAction, {type: 'boolean'});

            var Test_Licht: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Color Aliase",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLichteinzeln", name: "RGB-Licht Hex-Color", interpolateColor: true},
            //<PageItem>{ id: "alias.0.NSPanel_1.TestFarbtemperatur", name: "Farbtemperatur", interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLicht", name: "RGB-Licht", minValueBrightness: 0, maxValueBrightness: 100, interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TestCTmitHUE", name: "HUE-Licht-CT", minValueBrightness: 0, maxValueBrightness: 70, minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TestHUELicht", name: "HUE-Licht-Color", minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true}
            ]
            };

            var Test_Funktionen: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Sonstige Aliase",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestLautstärke", offColor: MSRed /if mute=true/, onColor: MSGreen ,name: "Echo Spot Büro", minValue: 0, maxValue: 100},
            <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur",name: "Temperatur außen", icon: "thermometer", onColor: White},
            <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte außen", icon: "water-percent", unit: "%H", onColor: White},
            <PageItem>{ id: "alias.0.NSPanel_1.TestInfo", name: "Windstärke", icon: "wind-power-outline", offColor: MSRed, onColor: MSGreen, unit: "bft", minValue: 0, maxValue: 12, interpolateColor: true, useColor: true}
            ]
            };

            var Buero_Seite_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Büro",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.Testlampe2", name: "Filamentlampe", minValueBrightness: 0, maxValueBrightness: 70, interpolateColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", icon2: "",offColor: MSRed, onColor: MSGreen}
            //<PageItem>{ id: "alias.0.NSPanel_1.TestVentil1", icon: "valve-open", icon2: "valve-closed",offColor: MSRed, onColor: MSGreen, name: "Test-Ventil 1"}
            ]
            };

            var Fenster_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Fenster und Türen",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
            <PageItem>{ id: "alias.0.NSPanel_1.Haustuer", offColor: MSRed, onColor: MSGreen, name: "Haustür"},
            <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", onColor: White, name: "IKEA Fyrtur"},
            <PageItem>{ id: "alias.0.NSPanel_1.TestDoorlock", offColor: MSRed, onColor: MSGreen, name: "Türschloss"},
            ]
            };

            var Button_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Button Aliase",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.TestTastensensor", name: "Tastensensor (FFN)"},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "Taste (NDR2)", onColor: colorRadio},
            ]
            };

            var Subpages_1: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Test Subpages",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ navigate: true, id: "Abfall", onColor: White, name: "Abfallkalender"},
            <PageItem>{ navigate: true, id: "WLAN", onColor: White, name: "Gäste WLAN"},
            ]
            };

            //Subpage 1 von Subpages_1
            var Abfall: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Abfallkalender",
            "useColor": true,
            "subPage": true,
            "parent": Subpages_1,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event1",icon: "trash-can"},
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event2",icon: "trash-can"},
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event3",icon: "trash-can"},
            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event4",icon: "trash-can"}
            ]
            };

            var Buero_Seite_2: PageGrid =
            {
            "type": "cardGrid",
            "heading": "Büro 2",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", name: "Schreibtisch"},
            <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", name: "Deckenlampe"},
            <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
            <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", offColor: MSRed, onColor: MSGreen},
            <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "projector-screen", onColor: White, name: "Beamer"},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "play", onColor: White, name: "TuneIn"}
            ]
            };

            var Alexa: PageMedia =
            {
            "type": "cardMedia",
            "heading": "Alexa",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alexa.PlayerBuero" }]
            };

            var Buero_Themostat: PageThermo =
            {
            "type": "cardThermo",
            "heading": "Test Thermostat",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Thermostat_Büro", minValue: 50, maxValue: 300 }]
            };

            var Buero_Klimaanlage: PageThermo =
            {
            "type": "cardThermo",
            "heading": "Test Klimaanlage",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.TestKlimaanlage", minValue: 170, maxValue: 250}]
            };

            //Subpage 2 von Subpages_1
            var WLAN: PageQR =
            {
            "type": "cardQR",
            "heading": "Gäste WLAN",
            "useColor": true,
            "subPage": true,
            "parent": Subpages_1,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Guest_Wifi" }]
            };

            var Buero_Alarm: PageAlarm =
            {
            "type": "cardAlarm",
            "heading": "Alarm",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alarm" }]
            };

            var button1Page: PageGrid =
            {
            "type": "cardGrid",
            "heading": "Radio",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.FFN", icon: "radio", name: "FFN", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Antenne" , icon: "radio", name: "Antenne Nds.", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "NDR2", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "radio", name: "Radio BOB", onColor: colorRadio},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Spotify", icon: "spotify", name: "Party Playlist", onColor: colorSpotify},
            <PageItem>{ id: "alias.0.NSPanel_1.Radio.Alexa", icon: "playlist-music", name: "Playlist 2021", onColor: colorAlexa}
            ]
            };

            var button2Page: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Büro",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe"},
            <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung"}
            ]
            };

            //Subpages 2 (+ Info)
            var Service: PageEntities =
            {
            "type": "cardEntities",
            "heading": "NSPanel Service",
            "useColor": true,
            "subPage": false,
            "parent": undefined,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_AutoUpdate", name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
            <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
            <PageItem>{ navigate: true, id: "NSPanel_Firmware_Updates", icon: "update", onColor: White, name: "Manuelle-Updates"},
            <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Einstellungen"}
            ]
            };

            //Subpage 1 von Subpages_2
            var NSPanel_Infos: PageEntities =
            {
            "type": "cardEntities",
            "heading": "NSPanel Infos",
            "useColor": true,
            "subPage": true,
            "parent": Service,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_Hardware", name: "Hardware", icon: "memory", offColor: MSYellow, onColor: MSYellow, useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_ESP_Temp", name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_UpTime", name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_RSSI", name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
            ]
            };

            //Subpage 2 von Subpages_2
            var NSPanel_Einstellungen: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Screensaver",
            "useColor": true,
            "subPage": true,
            "parent": Service,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessDay", name: "Brightness Tag", icon: "brightness-5", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessNight", name: "Brightness Nacht", icon: "brightness-4", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourDay", name: "Stunde Tag", icon: "sun-clock", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
            <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourNight", name: "Stunde Nacht", icon: "sun-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
            ]
            };

            //Subpage 3 von Subpages_2
            var NSPanel_Firmware_Updates: PageEntities =
            {
            "type": "cardEntities",
            "heading": "Firmware-Updates",
            "useColor": true,
            "subPage": true,
            "parent": Service,
            "items": [
            <PageItem>{ id: "alias.0.NSPanel_1.Tasmota_Version", name: "Tasmota Firmware", useColor: true},
            <PageItem>{ id: "alias.0.NSPanel_1.TFT_Firmware", name: "TFT-Firmware", useColor: true},
            ]
            };

            export const config: Config = {
            panelRecvTopic: "mqtt.0.oben.nspaneltest.tele.RESULT", //anpassen
            panelSendTopic: "mqtt.0.oben.nspaneltest.cmnd.CustomSend", //anpassen
            firstScreensaverEntity: { ScreensaverEntity: "hmip.0.devices.3014F711A000185BE9922BCF.channels.1.humidity", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "Luft", ScreensaverEntityUnitText: "%" },
            secondScreensaverEntity: { ScreensaverEntity: "accuweather.0.Daily.Day1.Day.PrecipitationProbability", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "Regen", ScreensaverEntityUnitText: "%" },
            thirdScreensaverEntity: { ScreensaverEntity: "0_userdata.0.Wetter.Windstaerke_homaticIP", ScreensaverEntityIcon: "weather-windy", ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: "bft" },
            fourthScreensaverEntity: { ScreensaverEntity: "accuweather.0.Current.UVIndex", ScreensaverEntityIcon: "solar-power", ScreensaverEntityText: "UV", ScreensaverEntityUnitText: "" },
            timeoutScreensaver: 15,
            dimmode: 8,
            active: 100, //Standard-Brightness TFT
            screenSaverDoubleClick: false,
            locale: "de-DE", //en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
            timeFormat: "%H:%M", //currently not used
            dateFormat: "%A, %d. %B %Y", //currently not used
            weatherEntity: "alias.0.Wetter",
            defaultOffColor: Off,
            defaultOnColor: On,
            defaultColor: Off,
            temperatureUnit: "°C",
            pages: [
            Buero_Seite_2,
            Buero_Seite_1,
            Buero_Klimaanlage,
            Button_1,
            Test_Licht,
            Test_Funktionen,
            Fenster_1,
            Subpages_1,
            Alexa,
            Buero_Themostat,
            Buero_Alarm,
            Service
            ],
            subPages: [
            Abfall,
            WLAN,
            NSPanel_Infos,
            NSPanel_Einstellungen,
            NSPanel_Firmware_Updates
            ],
            button1Page: button1Page,
            button2Page: button2Page
            };
            t

            Sieht eigentlich gut aus. Bin zwar unterwegs, daher grad etwas eingeschränkt.

            Hast du einen alias.0.Wetter erstellt? Der ist für das große Icon. Mir fällt soeben ein, dass es ohne den keine kleinen Icons gibt. Kannst du mit dem Gerätemanager erstellen, falls noch nich geschehen. Falls bereits erstellt, diesen (Screenshot Alias Objekte) auch kurz senden. Ist der Alias Typ Wettervorhersage

            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            F 2 Replies Last reply
            0
            • ArmilarA Armilar

              @frank-marschel sagte in Sonoff NSPanel:

              @armilar ```
              var Icons = new IconsSelector();
              var timeoutSlider: any;
              const NSPanel_Path = "0_userdata.0.NSPanel.1."
              const Debug = false;
              var manually_Update = true;

              //const Off: RGB = { red: 68, green: 115, blue: 158 }; //Blau-Off
              const Off: RGB = { red: 253, green: 128, blue: 0 }; //Orange-Off - schönere Farbübergänge
              const On: RGB = { red: 253, green: 216, blue: 53 };
              const MSRed: RGB = { red: 251, green: 105, blue: 98 };
              const MSYellow: RGB = { red: 255, green: 235, blue: 156 };
              const MSGreen: RGB = { red: 121, green: 222, blue: 121 };
              const Red: RGB = { red: 255, green: 0, blue: 0 };
              const White: RGB = { red: 255, green: 255, blue: 255 };
              const Yellow: RGB = { red: 255, green: 255, blue: 0 };
              const Green: RGB = { red: 0, green: 255, blue: 0 };
              const Blue: RGB = { red: 0, green: 0, blue: 255 };
              const Gray: RGB = { red: 136, green: 136, blue: 136 };
              const Black: RGB = { red: 0, green: 0, blue: 0 };
              const colorSpotify: RGB = { red: 30, green: 215, blue: 96 };
              const colorAlexa: RGB = { red: 49, green: 196, blue: 243 };
              const colorRadio: RGB = { red: 255, green: 127, blue: 0 };
              const BatteryFull: RGB = { red: 96, green: 176, blue: 62 };
              const BatteryEmpty: RGB = { red: 179, green: 45, blue: 25 };

              //----------------------Begin Dimmode
              //Screensaver nachts auf dunkel ("brightnessNight: z.B. 2") oder aus ("brightnessNight:0")
              if (existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourNight") == false) {
              createState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8)});
              createState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7)});
              createState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1)});
              createState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22)});
              }
              var vBrightnessDay = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay").val;
              var vBrightnessNight = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight").val;
              var vTimeDay = getState(NSPanel_Path + "NSPanel_Dimmode_hourDay").val;
              if (vTimeDay < 10) {
              var TimeDay = "0" + vTimeDay.toString() + ":00";
              } else {
              var TimeDay = vTimeDay.toString() + ":00";
              }
              var vTimeNight = getState(NSPanel_Path + "NSPanel_Dimmode_hourNight").val;
              if (vTimeNight < 10) {
              var TimeNight = "0" + vTimeNight.toString() + ":00";
              } else {
              var TimeNight = vTimeNight.toString() + ":00";
              }
              var timeDimMode = <DimMode>{dimmodeOn: true, brightnessDay: vBrightnessDay, brightnessNight: vBrightnessNight, timeDay: TimeDay, timeNight: TimeNight};
              //--------------------End Dimmode

              //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
              var weatherForecast = true; //true = WheatherForecast 5 Days --- false = Config --> firstScreensaverEntity - fourthScreensaverEntity ...

              //Alexa-Instanz
              var alexaInstanz = "alexa2.0"
              var alexaDevice = "G0XXXXXXXXXXXXXX"; //Primär zu steuerndes Device oder Gruppe aus alexa2-Adapter (Seriennummer)

              // Wenn alexaSpeakerList definiert, dann werden Einträge verwendet, sonst alle relevanten Devices aus Alexa-Instanz
              // Speakerwechsel funktioniert nicht bei Radio/TuneIn sonden bei Playlists
              //const alexaSpeakerList = []; //Beispiel ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino"];
              const alexaSpeakerList = ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino","Echo Dot Küche"];

              //Datenpunkte für Nachricht an Screensaver
              var screensaverNotifyHeading = NSPanel_Path + "ScreensaverInfo.popupNotifyHeading";
              var screensaverNotifyText = NSPanel_Path + "ScreensaverInfo.popupNotifyText";
              createState(screensaverNotifyHeading, {type: 'string'});
              createState(screensaverNotifyText, {type: 'string'});

              //Datenpunkte für Nachricht popupNotify Page
              var popupNotifyHeading = NSPanel_Path + "popupNotify.popupNotifyHeading";
              var popupNotifyText = NSPanel_Path + "popupNotify.popupNotifyText";
              var popupNotifyInternalName = NSPanel_Path + "popupNotify.popupNotifyInternalName"; // Wird mit Button-Action zurückgeschrieben
              var popupNotifyButton1Text = NSPanel_Path + "popupNotify.popupNotifyButton1Text";
              var popupNotifyButton2Text = NSPanel_Path + "popupNotify.popupNotifyButton2Text";
              var popupNotifySleepTimeout = NSPanel_Path + "popupNotify.popupNotifySleepTimeout"; // in sek. / wenn 0, dann bleibt die Nachricht stehen
              var popupNotifyAction = NSPanel_Path + "popupNotify.popupNotifyAction"; // Antwort aus dem Panel true/false
              createState(popupNotifyHeading, {type: 'string'});
              createState(popupNotifyText, {type: 'string'});
              createState(popupNotifyInternalName, {type: 'string'});
              createState(popupNotifyButton1Text, {type: 'string'});
              createState(popupNotifyButton2Text, {type: 'string'});
              createState(popupNotifySleepTimeout, {type: 'number'});
              createState(popupNotifyAction, {type: 'boolean'});

              var Test_Licht: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Color Aliase",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLichteinzeln", name: "RGB-Licht Hex-Color", interpolateColor: true},
              //<PageItem>{ id: "alias.0.NSPanel_1.TestFarbtemperatur", name: "Farbtemperatur", interpolateColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLicht", name: "RGB-Licht", minValueBrightness: 0, maxValueBrightness: 100, interpolateColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.TestCTmitHUE", name: "HUE-Licht-CT", minValueBrightness: 0, maxValueBrightness: 70, minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.TestHUELicht", name: "HUE-Licht-Color", minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true}
              ]
              };

              var Test_Funktionen: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Sonstige Aliase",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.TestLautstärke", offColor: MSRed /if mute=true/, onColor: MSGreen ,name: "Echo Spot Büro", minValue: 0, maxValue: 100},
              <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur",name: "Temperatur außen", icon: "thermometer", onColor: White},
              <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte außen", icon: "water-percent", unit: "%H", onColor: White},
              <PageItem>{ id: "alias.0.NSPanel_1.TestInfo", name: "Windstärke", icon: "wind-power-outline", offColor: MSRed, onColor: MSGreen, unit: "bft", minValue: 0, maxValue: 12, interpolateColor: true, useColor: true}
              ]
              };

              var Buero_Seite_1: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Büro",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", interpolateColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", interpolateColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.Testlampe2", name: "Filamentlampe", minValueBrightness: 0, maxValueBrightness: 70, interpolateColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", icon2: "",offColor: MSRed, onColor: MSGreen}
              //<PageItem>{ id: "alias.0.NSPanel_1.TestVentil1", icon: "valve-open", icon2: "valve-closed",offColor: MSRed, onColor: MSGreen, name: "Test-Ventil 1"}
              ]
              };

              var Fenster_1: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Fenster und Türen",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
              <PageItem>{ id: "alias.0.NSPanel_1.Haustuer", offColor: MSRed, onColor: MSGreen, name: "Haustür"},
              <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", onColor: White, name: "IKEA Fyrtur"},
              <PageItem>{ id: "alias.0.NSPanel_1.TestDoorlock", offColor: MSRed, onColor: MSGreen, name: "Türschloss"},
              ]
              };

              var Button_1: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Button Aliase",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.TestTastensensor", name: "Tastensensor (FFN)"},
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "Taste (NDR2)", onColor: colorRadio},
              ]
              };

              var Subpages_1: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Test Subpages",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ navigate: true, id: "Abfall", onColor: White, name: "Abfallkalender"},
              <PageItem>{ navigate: true, id: "WLAN", onColor: White, name: "Gäste WLAN"},
              ]
              };

              //Subpage 1 von Subpages_1
              var Abfall: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Abfallkalender",
              "useColor": true,
              "subPage": true,
              "parent": Subpages_1,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event1",icon: "trash-can"},
              <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event2",icon: "trash-can"},
              <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event3",icon: "trash-can"},
              <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event4",icon: "trash-can"}
              ]
              };

              var Buero_Seite_2: PageGrid =
              {
              "type": "cardGrid",
              "heading": "Büro 2",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", name: "Schreibtisch"},
              <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", name: "Deckenlampe"},
              <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
              <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", offColor: MSRed, onColor: MSGreen},
              <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "projector-screen", onColor: White, name: "Beamer"},
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "play", onColor: White, name: "TuneIn"}
              ]
              };

              var Alexa: PageMedia =
              {
              "type": "cardMedia",
              "heading": "Alexa",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alexa.PlayerBuero" }]
              };

              var Buero_Themostat: PageThermo =
              {
              "type": "cardThermo",
              "heading": "Test Thermostat",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [<PageItem>{ id: "alias.0.NSPanel_1.Thermostat_Büro", minValue: 50, maxValue: 300 }]
              };

              var Buero_Klimaanlage: PageThermo =
              {
              "type": "cardThermo",
              "heading": "Test Klimaanlage",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [<PageItem>{ id: "alias.0.NSPanel_1.TestKlimaanlage", minValue: 170, maxValue: 250}]
              };

              //Subpage 2 von Subpages_1
              var WLAN: PageQR =
              {
              "type": "cardQR",
              "heading": "Gäste WLAN",
              "useColor": true,
              "subPage": true,
              "parent": Subpages_1,
              "items": [<PageItem>{ id: "alias.0.NSPanel_1.Guest_Wifi" }]
              };

              var Buero_Alarm: PageAlarm =
              {
              "type": "cardAlarm",
              "heading": "Alarm",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alarm" }]
              };

              var button1Page: PageGrid =
              {
              "type": "cardGrid",
              "heading": "Radio",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.FFN", icon: "radio", name: "FFN", onColor: colorRadio},
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.Antenne" , icon: "radio", name: "Antenne Nds.", onColor: colorRadio},
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "NDR2", onColor: colorRadio},
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "radio", name: "Radio BOB", onColor: colorRadio},
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.Spotify", icon: "spotify", name: "Party Playlist", onColor: colorSpotify},
              <PageItem>{ id: "alias.0.NSPanel_1.Radio.Alexa", icon: "playlist-music", name: "Playlist 2021", onColor: colorAlexa}
              ]
              };

              var button2Page: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Büro",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe"},
              <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung"}
              ]
              };

              //Subpages 2 (+ Info)
              var Service: PageEntities =
              {
              "type": "cardEntities",
              "heading": "NSPanel Service",
              "useColor": true,
              "subPage": false,
              "parent": undefined,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_AutoUpdate", name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
              <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
              <PageItem>{ navigate: true, id: "NSPanel_Firmware_Updates", icon: "update", onColor: White, name: "Manuelle-Updates"},
              <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Einstellungen"}
              ]
              };

              //Subpage 1 von Subpages_2
              var NSPanel_Infos: PageEntities =
              {
              "type": "cardEntities",
              "heading": "NSPanel Infos",
              "useColor": true,
              "subPage": true,
              "parent": Service,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_Hardware", name: "Hardware", icon: "memory", offColor: MSYellow, onColor: MSYellow, useColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_ESP_Temp", name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_UpTime", name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_RSSI", name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
              ]
              };

              //Subpage 2 von Subpages_2
              var NSPanel_Einstellungen: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Screensaver",
              "useColor": true,
              "subPage": true,
              "parent": Service,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessDay", name: "Brightness Tag", icon: "brightness-5", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
              <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessNight", name: "Brightness Nacht", icon: "brightness-4", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
              <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourDay", name: "Stunde Tag", icon: "sun-clock", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
              <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourNight", name: "Stunde Nacht", icon: "sun-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
              ]
              };

              //Subpage 3 von Subpages_2
              var NSPanel_Firmware_Updates: PageEntities =
              {
              "type": "cardEntities",
              "heading": "Firmware-Updates",
              "useColor": true,
              "subPage": true,
              "parent": Service,
              "items": [
              <PageItem>{ id: "alias.0.NSPanel_1.Tasmota_Version", name: "Tasmota Firmware", useColor: true},
              <PageItem>{ id: "alias.0.NSPanel_1.TFT_Firmware", name: "TFT-Firmware", useColor: true},
              ]
              };

              export const config: Config = {
              panelRecvTopic: "mqtt.0.oben.nspaneltest.tele.RESULT", //anpassen
              panelSendTopic: "mqtt.0.oben.nspaneltest.cmnd.CustomSend", //anpassen
              firstScreensaverEntity: { ScreensaverEntity: "hmip.0.devices.3014F711A000185BE9922BCF.channels.1.humidity", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "Luft", ScreensaverEntityUnitText: "%" },
              secondScreensaverEntity: { ScreensaverEntity: "accuweather.0.Daily.Day1.Day.PrecipitationProbability", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "Regen", ScreensaverEntityUnitText: "%" },
              thirdScreensaverEntity: { ScreensaverEntity: "0_userdata.0.Wetter.Windstaerke_homaticIP", ScreensaverEntityIcon: "weather-windy", ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: "bft" },
              fourthScreensaverEntity: { ScreensaverEntity: "accuweather.0.Current.UVIndex", ScreensaverEntityIcon: "solar-power", ScreensaverEntityText: "UV", ScreensaverEntityUnitText: "" },
              timeoutScreensaver: 15,
              dimmode: 8,
              active: 100, //Standard-Brightness TFT
              screenSaverDoubleClick: false,
              locale: "de-DE", //en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
              timeFormat: "%H:%M", //currently not used
              dateFormat: "%A, %d. %B %Y", //currently not used
              weatherEntity: "alias.0.Wetter",
              defaultOffColor: Off,
              defaultOnColor: On,
              defaultColor: Off,
              temperatureUnit: "°C",
              pages: [
              Buero_Seite_2,
              Buero_Seite_1,
              Buero_Klimaanlage,
              Button_1,
              Test_Licht,
              Test_Funktionen,
              Fenster_1,
              Subpages_1,
              Alexa,
              Buero_Themostat,
              Buero_Alarm,
              Service
              ],
              subPages: [
              Abfall,
              WLAN,
              NSPanel_Infos,
              NSPanel_Einstellungen,
              NSPanel_Firmware_Updates
              ],
              button1Page: button1Page,
              button2Page: button2Page
              };
              t

              Sieht eigentlich gut aus. Bin zwar unterwegs, daher grad etwas eingeschränkt.

              Hast du einen alias.0.Wetter erstellt? Der ist für das große Icon. Mir fällt soeben ein, dass es ohne den keine kleinen Icons gibt. Kannst du mit dem Gerätemanager erstellen, falls noch nich geschehen. Falls bereits erstellt, diesen (Screenshot Alias Objekte) auch kurz senden. Ist der Alias Typ Wettervorhersage

              F Offline
              F Offline
              Frank Marschel
              wrote on last edited by
              #1071

              @armilar Das habe ich nicht gemacht. Setzeich mich gleich mal ran.
              melde mich dann.

              DANKE !!

              1 Reply Last reply
              0
              • ArmilarA Armilar

                @frank-marschel sagte in Sonoff NSPanel:

                @armilar ```
                var Icons = new IconsSelector();
                var timeoutSlider: any;
                const NSPanel_Path = "0_userdata.0.NSPanel.1."
                const Debug = false;
                var manually_Update = true;

                //const Off: RGB = { red: 68, green: 115, blue: 158 }; //Blau-Off
                const Off: RGB = { red: 253, green: 128, blue: 0 }; //Orange-Off - schönere Farbübergänge
                const On: RGB = { red: 253, green: 216, blue: 53 };
                const MSRed: RGB = { red: 251, green: 105, blue: 98 };
                const MSYellow: RGB = { red: 255, green: 235, blue: 156 };
                const MSGreen: RGB = { red: 121, green: 222, blue: 121 };
                const Red: RGB = { red: 255, green: 0, blue: 0 };
                const White: RGB = { red: 255, green: 255, blue: 255 };
                const Yellow: RGB = { red: 255, green: 255, blue: 0 };
                const Green: RGB = { red: 0, green: 255, blue: 0 };
                const Blue: RGB = { red: 0, green: 0, blue: 255 };
                const Gray: RGB = { red: 136, green: 136, blue: 136 };
                const Black: RGB = { red: 0, green: 0, blue: 0 };
                const colorSpotify: RGB = { red: 30, green: 215, blue: 96 };
                const colorAlexa: RGB = { red: 49, green: 196, blue: 243 };
                const colorRadio: RGB = { red: 255, green: 127, blue: 0 };
                const BatteryFull: RGB = { red: 96, green: 176, blue: 62 };
                const BatteryEmpty: RGB = { red: 179, green: 45, blue: 25 };

                //----------------------Begin Dimmode
                //Screensaver nachts auf dunkel ("brightnessNight: z.B. 2") oder aus ("brightnessNight:0")
                if (existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourDay") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight") == false || existsState(NSPanel_Path + "NSPanel_Dimmode_hourNight") == false) {
                createState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay", 8)});
                createState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourDay", 7)});
                createState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight", 1)});
                createState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22, {type: 'number'}, function() {setState(NSPanel_Path + "NSPanel_Dimmode_hourNight", 22)});
                }
                var vBrightnessDay = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessDay").val;
                var vBrightnessNight = getState(NSPanel_Path + "NSPanel_Dimmode_brightnessNight").val;
                var vTimeDay = getState(NSPanel_Path + "NSPanel_Dimmode_hourDay").val;
                if (vTimeDay < 10) {
                var TimeDay = "0" + vTimeDay.toString() + ":00";
                } else {
                var TimeDay = vTimeDay.toString() + ":00";
                }
                var vTimeNight = getState(NSPanel_Path + "NSPanel_Dimmode_hourNight").val;
                if (vTimeNight < 10) {
                var TimeNight = "0" + vTimeNight.toString() + ":00";
                } else {
                var TimeNight = vTimeNight.toString() + ":00";
                }
                var timeDimMode = <DimMode>{dimmodeOn: true, brightnessDay: vBrightnessDay, brightnessNight: vBrightnessNight, timeDay: TimeDay, timeNight: TimeNight};
                //--------------------End Dimmode

                //----Möglichkeit, im Screensaver zwischen Accu-Weather Forecast oder selbstdefinierten Werten zu wählen---------------------------------
                var weatherForecast = true; //true = WheatherForecast 5 Days --- false = Config --> firstScreensaverEntity - fourthScreensaverEntity ...

                //Alexa-Instanz
                var alexaInstanz = "alexa2.0"
                var alexaDevice = "G0XXXXXXXXXXXXXX"; //Primär zu steuerndes Device oder Gruppe aus alexa2-Adapter (Seriennummer)

                // Wenn alexaSpeakerList definiert, dann werden Einträge verwendet, sonst alle relevanten Devices aus Alexa-Instanz
                // Speakerwechsel funktioniert nicht bei Radio/TuneIn sonden bei Playlists
                //const alexaSpeakerList = []; //Beispiel ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino"];
                const alexaSpeakerList = ["Echo Spot Buero","Überall","Gartenhaus","Esszimmer","Heimkino","Echo Dot Küche"];

                //Datenpunkte für Nachricht an Screensaver
                var screensaverNotifyHeading = NSPanel_Path + "ScreensaverInfo.popupNotifyHeading";
                var screensaverNotifyText = NSPanel_Path + "ScreensaverInfo.popupNotifyText";
                createState(screensaverNotifyHeading, {type: 'string'});
                createState(screensaverNotifyText, {type: 'string'});

                //Datenpunkte für Nachricht popupNotify Page
                var popupNotifyHeading = NSPanel_Path + "popupNotify.popupNotifyHeading";
                var popupNotifyText = NSPanel_Path + "popupNotify.popupNotifyText";
                var popupNotifyInternalName = NSPanel_Path + "popupNotify.popupNotifyInternalName"; // Wird mit Button-Action zurückgeschrieben
                var popupNotifyButton1Text = NSPanel_Path + "popupNotify.popupNotifyButton1Text";
                var popupNotifyButton2Text = NSPanel_Path + "popupNotify.popupNotifyButton2Text";
                var popupNotifySleepTimeout = NSPanel_Path + "popupNotify.popupNotifySleepTimeout"; // in sek. / wenn 0, dann bleibt die Nachricht stehen
                var popupNotifyAction = NSPanel_Path + "popupNotify.popupNotifyAction"; // Antwort aus dem Panel true/false
                createState(popupNotifyHeading, {type: 'string'});
                createState(popupNotifyText, {type: 'string'});
                createState(popupNotifyInternalName, {type: 'string'});
                createState(popupNotifyButton1Text, {type: 'string'});
                createState(popupNotifyButton2Text, {type: 'string'});
                createState(popupNotifySleepTimeout, {type: 'number'});
                createState(popupNotifyAction, {type: 'boolean'});

                var Test_Licht: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Color Aliase",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLichteinzeln", name: "RGB-Licht Hex-Color", interpolateColor: true},
                //<PageItem>{ id: "alias.0.NSPanel_1.TestFarbtemperatur", name: "Farbtemperatur", interpolateColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.TestRGBLicht", name: "RGB-Licht", minValueBrightness: 0, maxValueBrightness: 100, interpolateColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.TestCTmitHUE", name: "HUE-Licht-CT", minValueBrightness: 0, maxValueBrightness: 70, minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.TestHUELicht", name: "HUE-Licht-Color", minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true}
                ]
                };

                var Test_Funktionen: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Sonstige Aliase",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.TestLautstärke", offColor: MSRed /if mute=true/, onColor: MSGreen ,name: "Echo Spot Büro", minValue: 0, maxValue: 100},
                <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur",name: "Temperatur außen", icon: "thermometer", onColor: White},
                <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte außen", icon: "water-percent", unit: "%H", onColor: White},
                <PageItem>{ id: "alias.0.NSPanel_1.TestInfo", name: "Windstärke", icon: "wind-power-outline", offColor: MSRed, onColor: MSGreen, unit: "bft", minValue: 0, maxValue: 12, interpolateColor: true, useColor: true}
                ]
                };

                var Buero_Seite_1: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Büro",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", interpolateColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", interpolateColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.Testlampe2", name: "Filamentlampe", minValueBrightness: 0, maxValueBrightness: 70, interpolateColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", icon2: "",offColor: MSRed, onColor: MSGreen}
                //<PageItem>{ id: "alias.0.NSPanel_1.TestVentil1", icon: "valve-open", icon2: "valve-closed",offColor: MSRed, onColor: MSGreen, name: "Test-Ventil 1"}
                ]
                };

                var Fenster_1: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Fenster und Türen",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
                <PageItem>{ id: "alias.0.NSPanel_1.Haustuer", offColor: MSRed, onColor: MSGreen, name: "Haustür"},
                <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", onColor: White, name: "IKEA Fyrtur"},
                <PageItem>{ id: "alias.0.NSPanel_1.TestDoorlock", offColor: MSRed, onColor: MSGreen, name: "Türschloss"},
                ]
                };

                var Button_1: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Button Aliase",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.TestTastensensor", name: "Tastensensor (FFN)"},
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "Taste (NDR2)", onColor: colorRadio},
                ]
                };

                var Subpages_1: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Test Subpages",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ navigate: true, id: "Abfall", onColor: White, name: "Abfallkalender"},
                <PageItem>{ navigate: true, id: "WLAN", onColor: White, name: "Gäste WLAN"},
                ]
                };

                //Subpage 1 von Subpages_1
                var Abfall: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Abfallkalender",
                "useColor": true,
                "subPage": true,
                "parent": Subpages_1,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event1",icon: "trash-can"},
                <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event2",icon: "trash-can"},
                <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event3",icon: "trash-can"},
                <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event4",icon: "trash-can"}
                ]
                };

                var Buero_Seite_2: PageGrid =
                {
                "type": "cardGrid",
                "heading": "Büro 2",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", name: "Schreibtisch"},
                <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", name: "Deckenlampe"},
                <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
                <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", offColor: MSRed, onColor: MSGreen},
                <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "projector-screen", onColor: White, name: "Beamer"},
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "play", onColor: White, name: "TuneIn"}
                ]
                };

                var Alexa: PageMedia =
                {
                "type": "cardMedia",
                "heading": "Alexa",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alexa.PlayerBuero" }]
                };

                var Buero_Themostat: PageThermo =
                {
                "type": "cardThermo",
                "heading": "Test Thermostat",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [<PageItem>{ id: "alias.0.NSPanel_1.Thermostat_Büro", minValue: 50, maxValue: 300 }]
                };

                var Buero_Klimaanlage: PageThermo =
                {
                "type": "cardThermo",
                "heading": "Test Klimaanlage",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [<PageItem>{ id: "alias.0.NSPanel_1.TestKlimaanlage", minValue: 170, maxValue: 250}]
                };

                //Subpage 2 von Subpages_1
                var WLAN: PageQR =
                {
                "type": "cardQR",
                "heading": "Gäste WLAN",
                "useColor": true,
                "subPage": true,
                "parent": Subpages_1,
                "items": [<PageItem>{ id: "alias.0.NSPanel_1.Guest_Wifi" }]
                };

                var Buero_Alarm: PageAlarm =
                {
                "type": "cardAlarm",
                "heading": "Alarm",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alarm" }]
                };

                var button1Page: PageGrid =
                {
                "type": "cardGrid",
                "heading": "Radio",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.FFN", icon: "radio", name: "FFN", onColor: colorRadio},
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.Antenne" , icon: "radio", name: "Antenne Nds.", onColor: colorRadio},
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "NDR2", onColor: colorRadio},
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "radio", name: "Radio BOB", onColor: colorRadio},
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.Spotify", icon: "spotify", name: "Party Playlist", onColor: colorSpotify},
                <PageItem>{ id: "alias.0.NSPanel_1.Radio.Alexa", icon: "playlist-music", name: "Playlist 2021", onColor: colorAlexa}
                ]
                };

                var button2Page: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Büro",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe"},
                <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung"}
                ]
                };

                //Subpages 2 (+ Info)
                var Service: PageEntities =
                {
                "type": "cardEntities",
                "heading": "NSPanel Service",
                "useColor": true,
                "subPage": false,
                "parent": undefined,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_AutoUpdate", name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
                <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
                <PageItem>{ navigate: true, id: "NSPanel_Firmware_Updates", icon: "update", onColor: White, name: "Manuelle-Updates"},
                <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Einstellungen"}
                ]
                };

                //Subpage 1 von Subpages_2
                var NSPanel_Infos: PageEntities =
                {
                "type": "cardEntities",
                "heading": "NSPanel Infos",
                "useColor": true,
                "subPage": true,
                "parent": Service,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_Hardware", name: "Hardware", icon: "memory", offColor: MSYellow, onColor: MSYellow, useColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_ESP_Temp", name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_UpTime", name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.NSPanel_RSSI", name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
                ]
                };

                //Subpage 2 von Subpages_2
                var NSPanel_Einstellungen: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Screensaver",
                "useColor": true,
                "subPage": true,
                "parent": Service,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessDay", name: "Brightness Tag", icon: "brightness-5", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
                <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_BrightnessNight", name: "Brightness Nacht", icon: "brightness-4", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
                <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourDay", name: "Stunde Tag", icon: "sun-clock", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
                <PageItem>{ id: "alias.0.NSPanel_1.Dimmode_HourNight", name: "Stunde Nacht", icon: "sun-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
                ]
                };

                //Subpage 3 von Subpages_2
                var NSPanel_Firmware_Updates: PageEntities =
                {
                "type": "cardEntities",
                "heading": "Firmware-Updates",
                "useColor": true,
                "subPage": true,
                "parent": Service,
                "items": [
                <PageItem>{ id: "alias.0.NSPanel_1.Tasmota_Version", name: "Tasmota Firmware", useColor: true},
                <PageItem>{ id: "alias.0.NSPanel_1.TFT_Firmware", name: "TFT-Firmware", useColor: true},
                ]
                };

                export const config: Config = {
                panelRecvTopic: "mqtt.0.oben.nspaneltest.tele.RESULT", //anpassen
                panelSendTopic: "mqtt.0.oben.nspaneltest.cmnd.CustomSend", //anpassen
                firstScreensaverEntity: { ScreensaverEntity: "hmip.0.devices.3014F711A000185BE9922BCF.channels.1.humidity", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "Luft", ScreensaverEntityUnitText: "%" },
                secondScreensaverEntity: { ScreensaverEntity: "accuweather.0.Daily.Day1.Day.PrecipitationProbability", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "Regen", ScreensaverEntityUnitText: "%" },
                thirdScreensaverEntity: { ScreensaverEntity: "0_userdata.0.Wetter.Windstaerke_homaticIP", ScreensaverEntityIcon: "weather-windy", ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: "bft" },
                fourthScreensaverEntity: { ScreensaverEntity: "accuweather.0.Current.UVIndex", ScreensaverEntityIcon: "solar-power", ScreensaverEntityText: "UV", ScreensaverEntityUnitText: "" },
                timeoutScreensaver: 15,
                dimmode: 8,
                active: 100, //Standard-Brightness TFT
                screenSaverDoubleClick: false,
                locale: "de-DE", //en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
                timeFormat: "%H:%M", //currently not used
                dateFormat: "%A, %d. %B %Y", //currently not used
                weatherEntity: "alias.0.Wetter",
                defaultOffColor: Off,
                defaultOnColor: On,
                defaultColor: Off,
                temperatureUnit: "°C",
                pages: [
                Buero_Seite_2,
                Buero_Seite_1,
                Buero_Klimaanlage,
                Button_1,
                Test_Licht,
                Test_Funktionen,
                Fenster_1,
                Subpages_1,
                Alexa,
                Buero_Themostat,
                Buero_Alarm,
                Service
                ],
                subPages: [
                Abfall,
                WLAN,
                NSPanel_Infos,
                NSPanel_Einstellungen,
                NSPanel_Firmware_Updates
                ],
                button1Page: button1Page,
                button2Page: button2Page
                };
                t

                Sieht eigentlich gut aus. Bin zwar unterwegs, daher grad etwas eingeschränkt.

                Hast du einen alias.0.Wetter erstellt? Der ist für das große Icon. Mir fällt soeben ein, dass es ohne den keine kleinen Icons gibt. Kannst du mit dem Gerätemanager erstellen, falls noch nich geschehen. Falls bereits erstellt, diesen (Screenshot Alias Objekte) auch kurz senden. Ist der Alias Typ Wettervorhersage

                F Offline
                F Offline
                Frank Marschel
                wrote on last edited by
                #1072

                @armilar Ja, das ist es gewesen.

                Auf den Büroseiten, die Buttons, werden wahrscheinlich auch erst angezeigt,
                wenn Datenpunkte vorhanden, oder?

                ArmilarA 1 Reply Last reply
                0
                • F Frank Marschel

                  @armilar Ja, das ist es gewesen.

                  Auf den Büroseiten, die Buttons, werden wahrscheinlich auch erst angezeigt,
                  wenn Datenpunkte vorhanden, oder?

                  ArmilarA Offline
                  ArmilarA Offline
                  Armilar
                  Most Active Forum Testing
                  wrote on last edited by Armilar
                  #1073

                  @frank-marschel sagte in Sonoff NSPanel:

                  @armilar Ja, das ist es gewesen.

                  Auf den Büroseiten, die Buttons, werden wahrscheinlich auch erst angezeigt,
                  wenn Datenpunkte vorhanden, oder?

                  Der Seitenaufbau soll nur als Beispiel dienen und kann nach eigener Kreativität komplett anders aufgebaut werden. Die Reihenfolgen lassen sich beliebig verändern, genauso wie die komplette Menüstruktur mit Unterseiten. Hier sind eigentlich keine Grenzen gesetzt.

                  Ja, es sind ebenfalls alles Aliase, wie im Skript-Header (sind die Unterstützten Alias-Typen) beschrieben. Das mit den Aliasen hat man aber nach ein wenig Übung schnell herausgefunden.

                  Datenpunkte funktionieren nur bei den folgenden 4 Werten.

                      firstScreensaverEntity: { ScreensaverEntity: "hmip.0.devices.3014F711A000185BE9922BCF.channels.1.humidity", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "Luft", ScreensaverEntityUnitText: "%" },
                      secondScreensaverEntity: { ScreensaverEntity: "accuweather.0.Daily.Day1.Day.PrecipitationProbability", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "Regen", ScreensaverEntityUnitText: "%" },
                      thirdScreensaverEntity: { ScreensaverEntity: "0_userdata.0.Wetter.Windstaerke_homaticIP", ScreensaverEntityIcon: "weather-windy", ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: "bft" },
                      fourthScreensaverEntity: { ScreensaverEntity: "accuweather.0.Current.UVIndex", ScreensaverEntityIcon: "solar-power", ScreensaverEntityText: "UV", ScreensaverEntityUnitText: "" },
                  

                  Nach belieben mit eigenen Datenpunkten anpassen, vorausgesetzt der Screensaver soll keine Wettervorhersage anzeigen!

                  Oder für einen minütlichen Wechsel zwischen Wetter-Forecast und den 4 o.a. Datenpunkten. Hierfür muss der Datenpunkt 0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast auf "true" stehen.

                  PS.: hier ist eine Anleitung. Wäre der Punkt auch drin gewesen:
                  https://forum.iobroker.net/post/807730

                  Dann habe ich mal eine Tabelle erstellt für die Alias Typen. Eigentlich, wenn es außerhalb der deutschen Sprache diese Aliase nicht für den Geräte-Manager gibt. Dann geht es auch mit dem Alias-Manager. Oder einfach nur zur Orientierung, welche Alias-Datenpunkte erwartet werden:
                  https://forum.iobroker.net/post/814084

                  Seit dem 6. Mai sind hier eine Menge Beispiele zu eigentlich allen Alias-Typen gepostet worden. Wenn mal einer nicht klappt oder Verständnisprobleme existieren, einfach fragen...

                  Ach ja, der Media-Alias lässt sich "nur" mit dem Alias-Manager anlegen, alle anderen mit dem Geräte-Manager... Viel Spaß beim ausprobieren... und Vorsicht - das Ding kann süchtig machen ;-)

                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  1 Reply Last reply
                  0
                  • V Vocaris

                    @muchul Hei,
                    ich wollte zurück, da ich mit lovelace nicht zurecht kam. Habe mich aber dann doch damit beschäftigt und komme nun immer besser klar.
                    Bzgl. der TFT Datei kann dir ggf. @joBr99 hier weiterhelfen.

                    M Offline
                    M Offline
                    Muchul
                    wrote on last edited by
                    #1074

                    @Vocaris
                    @joBr99

                    Danke euch beiden.
                    Ist nicht mein NSpanel, daher werde ich die zurückgeben müssen und möchte sie im ursprünglichen Zustand abgeben.

                    1 Reply Last reply
                    0
                    • F Offline
                      F Offline
                      Frank Marschel
                      wrote on last edited by
                      #1075

                      @armilar said in Sonoff NSPanel:

                      PS.: hier ist eine Anleitung. Wäre der Punkt auch drin gewesen:
                      https://forum.iobroker.net/post/807730

                      Danach bin ich auch gegangen...
                      in meiner Ungeduld habe ich das überlesen... :-))

                      1 Reply Last reply
                      0
                      • Jens WoznyJ Offline
                        Jens WoznyJ Offline
                        Jens Wozny
                        wrote on last edited by
                        #1076

                        Hallo mal wieder,

                        ich bin gerade am Verzweifeln!

                        Ich hatte bereits vor längerer Zeit so am Anfang des Jahres das NSPanel zum laufen bekommen und mich nun entschieden 4 weitere in mein Haus zu integrieren.
                        Ich habe mich dabei genau an die wirklich gut gemachte Anleitung von @Armilar gehalten. Einzig den Namen NSPanel_1 habe ich in Schalter_Wohnen bzw Schalter_Schlafen etc abgewandelt.

                        Die ersten Punkte liefen auch ohne Probleme bis, wer wird es sich denken können, zum Anlegen vom "CustomSend".!

                        Ich habe weiß ich wie oft den Befehl über die Konsole in Tasmota abgesendet aber er wurde nicht aboniert. Also den MQTT Explorer gestartet und auch dort den Befehl abgesetzt, dort wird er in den meisten Fällen unter /cmnd =CustomSend time~12:00 angezeigt aber nicht korrekt aboniert. Dort habe ich auch x-mal den Befehl abgesetzt und irgendwann plötzlich war im neuen NSPanel das abonieren erfolgreich.
                        Gefreut, gedacht jetzt hast du den Kniff raus... Panel eingerichtet... läuft erstmal zumindest der Screensaver und das Wetter, noch keine weiteren Seite bisher eingerichtet.

                        Zwischenzeitlich habe ich aus Verzweiflung das ich vllt. etwas Kaputt Konfiguriert habe und vllt die Shellys in meinem System stören, im IOBroker auch den MQTT Adapter Deinstalliert und neu aufgesetzt, den vorher funktionierenden Port 1883 auf die empfohlenen abgeändert, derzeit habe ich ihn durch diverse Versuche auf 1890 eingestellt. Da nach dem neu Aufsetzen natürlich die Config vom MQTT weg war fehlten im alten NSPanel auch das CustomSend jetzt.

                        Da ich bei der Einrichtung des ersten NSPanel noch nach der Anleitung von Mathias Kleine gegangen bin und beim neuen nach der aktuellen Anleitung hier aus dem Forum, hatte ich somit verschiedene Aufteilungen im MQTT. Beim alten als prefix/topic und dem neuen topic/prefix. Nicht schön dachte ich mir also das ganze im alten Angepasst und nun hier auch den bekannten Befehl im MQTT Explorer und auch in der Tasmota Konsole eingegeben. Das ganze mache ich nun seit heute morgen gefühlt einige hundert mal bereits ohne Erfolg.
                        Kann mir jemand den Initialen Tipp geben woran das liegen könnte oder wie oft man evtl den Befehl absetzen muss bis der Sch... MQTT Adapter endlich diesen Befehl Aboniert?!
                        Da hier nun noch 3 Stück rum liegen, graut es mir bereits diese Aufzusetzen.

                        LG Jens

                        O 1 Reply Last reply
                        0
                        • Jens WoznyJ Jens Wozny

                          Hallo mal wieder,

                          ich bin gerade am Verzweifeln!

                          Ich hatte bereits vor längerer Zeit so am Anfang des Jahres das NSPanel zum laufen bekommen und mich nun entschieden 4 weitere in mein Haus zu integrieren.
                          Ich habe mich dabei genau an die wirklich gut gemachte Anleitung von @Armilar gehalten. Einzig den Namen NSPanel_1 habe ich in Schalter_Wohnen bzw Schalter_Schlafen etc abgewandelt.

                          Die ersten Punkte liefen auch ohne Probleme bis, wer wird es sich denken können, zum Anlegen vom "CustomSend".!

                          Ich habe weiß ich wie oft den Befehl über die Konsole in Tasmota abgesendet aber er wurde nicht aboniert. Also den MQTT Explorer gestartet und auch dort den Befehl abgesetzt, dort wird er in den meisten Fällen unter /cmnd =CustomSend time~12:00 angezeigt aber nicht korrekt aboniert. Dort habe ich auch x-mal den Befehl abgesetzt und irgendwann plötzlich war im neuen NSPanel das abonieren erfolgreich.
                          Gefreut, gedacht jetzt hast du den Kniff raus... Panel eingerichtet... läuft erstmal zumindest der Screensaver und das Wetter, noch keine weiteren Seite bisher eingerichtet.

                          Zwischenzeitlich habe ich aus Verzweiflung das ich vllt. etwas Kaputt Konfiguriert habe und vllt die Shellys in meinem System stören, im IOBroker auch den MQTT Adapter Deinstalliert und neu aufgesetzt, den vorher funktionierenden Port 1883 auf die empfohlenen abgeändert, derzeit habe ich ihn durch diverse Versuche auf 1890 eingestellt. Da nach dem neu Aufsetzen natürlich die Config vom MQTT weg war fehlten im alten NSPanel auch das CustomSend jetzt.

                          Da ich bei der Einrichtung des ersten NSPanel noch nach der Anleitung von Mathias Kleine gegangen bin und beim neuen nach der aktuellen Anleitung hier aus dem Forum, hatte ich somit verschiedene Aufteilungen im MQTT. Beim alten als prefix/topic und dem neuen topic/prefix. Nicht schön dachte ich mir also das ganze im alten Angepasst und nun hier auch den bekannten Befehl im MQTT Explorer und auch in der Tasmota Konsole eingegeben. Das ganze mache ich nun seit heute morgen gefühlt einige hundert mal bereits ohne Erfolg.
                          Kann mir jemand den Initialen Tipp geben woran das liegen könnte oder wie oft man evtl den Befehl absetzen muss bis der Sch... MQTT Adapter endlich diesen Befehl Aboniert?!
                          Da hier nun noch 3 Stück rum liegen, graut es mir bereits diese Aufzusetzen.

                          LG Jens

                          O Offline
                          O Offline
                          OlliBy67
                          wrote on last edited by
                          #1077

                          @jens-wozny
                          Hallo Jens.
                          Ich hatte auch das Problem. Letzt endlich hat mich Post Nr 657 hier in diesem Thread weiter geholfen.
                          Vielleicht hilft es dir auch.
                          Vg Olli

                          Jens WoznyJ 1 Reply Last reply
                          0
                          • O OlliBy67

                            @jens-wozny
                            Hallo Jens.
                            Ich hatte auch das Problem. Letzt endlich hat mich Post Nr 657 hier in diesem Thread weiter geholfen.
                            Vielleicht hilft es dir auch.
                            Vg Olli

                            Jens WoznyJ Offline
                            Jens WoznyJ Offline
                            Jens Wozny
                            wrote on last edited by
                            #1078

                            @olliby67 Danke für den Tipp! Beim ersten hat es schon mal geklappt, habe jetzt den nächsten raus geholt und werde ihn Flashen und hoffen, das es mit dem Befehl dann auf Anhieb klappt... ich werde berichten... :-)

                            1 Reply Last reply
                            0
                            • Jens WoznyJ Offline
                              Jens WoznyJ Offline
                              Jens Wozny
                              wrote on last edited by
                              #1079

                              @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

                              Dank euch macht es mächtig viel Spaß sowas umzusetzen, bin leider nur der stille Nachmacher :-) aber ohne euch und ohne die Zeit und den Hirnschmalz den ihr da so rein bringt wäre ich nicht mal in der nähe von dem, wo ich jetzt bin!

                              Großen Dank!

                              Gruß Jens

                              ArmilarA 1 Reply Last reply
                              0
                              • Jens WoznyJ Jens Wozny

                                @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

                                Dank euch macht es mächtig viel Spaß sowas umzusetzen, bin leider nur der stille Nachmacher :-) aber ohne euch und ohne die Zeit und den Hirnschmalz den ihr da so rein bringt wäre ich nicht mal in der nähe von dem, wo ich jetzt bin!

                                Großen Dank!

                                Gruß Jens

                                ArmilarA Offline
                                ArmilarA Offline
                                Armilar
                                Most Active Forum Testing
                                wrote on last edited by
                                #1080

                                @jens-wozny sagte in Sonoff NSPanel:

                                @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

                                Dank euch macht es mächtig viel Spaß sowas umzusetzen, bin leider nur der stille Nachmacher :-) aber ohne euch und ohne die Zeit und den Hirnschmalz den ihr da so rein bringt wäre ich nicht mal in der nähe von dem, wo ich jetzt bin!

                                Großen Dank!

                                Gruß Jens

                                Du meinst den Screenshot vom MQTT Explorer?
                                https://forum.iobroker.net/post/813557

                                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                O Jens WoznyJ 2 Replies Last reply
                                0
                                • haus-automatisierungH Online
                                  haus-automatisierungH Online
                                  haus-automatisierung
                                  Developer Most Active
                                  wrote on last edited by
                                  #1081

                                  Hallo zusammen,

                                  da dieser Thread (und damit auch die einzige Dokumentation) ziemlich verteilt Infos liefert, habe ich probiert das Vorgehen mal in einem Video zusammen zu fassen: https://youtu.be/ZPLJk2ZLo_8

                                  Danke für die tolle Arbeit @Armilar ! Ich hoffe, dass ich mit meinen letzten Änderungen am Script ein wenig helfen konnte. Keine neuen Features - nur Aufräumarbeiten. Insbesondere wenn das Script erstmalig ausgeführt wurde, gab es sehr viele Warnungen.

                                  🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                  🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                  📚 Meine inoffizielle ioBroker Dokumentation

                                  panikP ArmilarA 3 Replies Last reply
                                  1
                                  • ArmilarA Armilar

                                    @jens-wozny sagte in Sonoff NSPanel:

                                    @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

                                    Dank euch macht es mächtig viel Spaß sowas umzusetzen, bin leider nur der stille Nachmacher :-) aber ohne euch und ohne die Zeit und den Hirnschmalz den ihr da so rein bringt wäre ich nicht mal in der nähe von dem, wo ich jetzt bin!

                                    Großen Dank!

                                    Gruß Jens

                                    Du meinst den Screenshot vom MQTT Explorer?
                                    https://forum.iobroker.net/post/813557

                                    O Offline
                                    O Offline
                                    OlliBy67
                                    wrote on last edited by
                                    #1082

                                    @armilar said in Sonoff NSPanel:

                                    @jens-wozny sagte in Sonoff NSPanel:

                                    @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

                                    ....................

                                    Du meinst den Screenshot vom MQTT Explorer?
                                    https://forum.iobroker.net/post/813557

                                    Ja genau. :+1:

                                    1 Reply Last reply
                                    0
                                    • ArmilarA Armilar

                                      @jens-wozny sagte in Sonoff NSPanel:

                                      @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

                                      Dank euch macht es mächtig viel Spaß sowas umzusetzen, bin leider nur der stille Nachmacher :-) aber ohne euch und ohne die Zeit und den Hirnschmalz den ihr da so rein bringt wäre ich nicht mal in der nähe von dem, wo ich jetzt bin!

                                      Großen Dank!

                                      Gruß Jens

                                      Du meinst den Screenshot vom MQTT Explorer?
                                      https://forum.iobroker.net/post/813557

                                      Jens WoznyJ Offline
                                      Jens WoznyJ Offline
                                      Jens Wozny
                                      wrote on last edited by
                                      #1083

                                      @armilar ja genau den, ohne den Hinweis gestern hätte ich ihn auch erst nicht gefunden da die Anzahl der Posts doch ziemlich angewachsen ist und auch wenn man sich bemüht irgendwann doch die Übersicht verliert :-)

                                      ArmilarA 1 Reply Last reply
                                      0
                                      • haus-automatisierungH haus-automatisierung

                                        Hallo zusammen,

                                        da dieser Thread (und damit auch die einzige Dokumentation) ziemlich verteilt Infos liefert, habe ich probiert das Vorgehen mal in einem Video zusammen zu fassen: https://youtu.be/ZPLJk2ZLo_8

                                        Danke für die tolle Arbeit @Armilar ! Ich hoffe, dass ich mit meinen letzten Änderungen am Script ein wenig helfen konnte. Keine neuen Features - nur Aufräumarbeiten. Insbesondere wenn das Script erstmalig ausgeführt wurde, gab es sehr viele Warnungen.

                                        panikP Offline
                                        panikP Offline
                                        panik
                                        wrote on last edited by
                                        #1084

                                        @haus-automatisierung Dann schaue ich da mal rein, vielleicht gibt es da Hinweise zum Bafallkalender und CardAlarm denn da Hänge ich und habe hier auch nicht den passenden Hinweis finden können bzw. die nötigen Aliase ?!

                                        T ArmilarA 2 Replies Last reply
                                        0
                                        • panikP panik

                                          @haus-automatisierung Dann schaue ich da mal rein, vielleicht gibt es da Hinweise zum Bafallkalender und CardAlarm denn da Hänge ich und habe hier auch nicht den passenden Hinweis finden können bzw. die nötigen Aliase ?!

                                          T Offline
                                          T Offline
                                          TT-Tom
                                          wrote on last edited by
                                          #1085

                                          @panik

                                          Für den Abfall gibt es hier ein Beitrag.

                                          Bei Alarm kann ich dir nicht helfen.

                                          Gruß Tom
                                          https://github.com/tt-tom17
                                          Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                          NSPanel Script Wiki
                                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                          NSPanel Adapter Wiki
                                          https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                          ArmilarA 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          594

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe