Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

SONOFF NSPanel mit Lovelace UI

Scheduled Pinned Locked Moved Hardware
lovelace uinspanelsonoff
7.7k Posts 271 Posters 6.7m Views 253 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.
  • arteckA arteck

    @armilar @ticaki Adapter anpassung nicht notwendig ? hab kein bock wieder auf ne flashorgie..wie letztens

    T Do not disturb
    T Do not disturb
    ticaki
    wrote on last edited by
    #7467

    @arteck

    Ich hab aktuell nicht soviel freie Zeit um die cardThermo2 im Adapter einzubauen - Mal gucken.

    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

    Spenden

    1 Reply Last reply
    0
    • ArmilarA Armilar

      @bhenyamin

      Darf ich hier nochmal Pingen?

      natürlich und jederzeit... dafür ist der Thread ja da 😊

      Hast du noch einen Lösungsansatz für mich?

      Ich dachte nach der Konversation mit @TT-Tom (ACTUAL/SET) wäre das erledigt.

      Ich bekomme den Slider weiter nicht auf Spur. Er springt weiter...

      Und genau das kann ich nicht reproduzieren. Der Slider arbeitet auf den Punkt exakt und kommt auch wieder nach einem Seitenwechsel zum eingestellten Wert zurück...

      EDIT: siehe
      989f50b3-e9d6-444a-9db2-bab54524cf50-Nextion_Editor_gGYdzzzBvQ.gif

      EDIT2: was du nochmal machen könntest, wäre in der Tasmota Konsole "weblog 3" eingeben und den Part (Tasmota Log) mit dem Sliderspiel mal senden...

      B Offline
      B Offline
      Bhenyamin
      wrote on last edited by
      #7468

      @armilar said in SONOFF NSPanel mit Lovelace UI:

      @bhenyamin

      Darf ich hier nochmal Pingen?

      natürlich und jederzeit... dafür ist der Thread ja da 😊

      Hast du noch einen Lösungsansatz für mich?

      Ich dachte nach der Konversation mit @TT-Tom (ACTUAL/SET) wäre das erledigt.

      Ich bekomme den Slider weiter nicht auf Spur. Er springt weiter...

      Und genau das kann ich nicht reproduzieren. Der Slider arbeitet auf den Punkt exakt und kommt auch wieder nach einem Seitenwechsel zum eingestellten Wert zurück...

      EDIT: siehe
      989f50b3-e9d6-444a-9db2-bab54524cf50-Nextion_Editor_gGYdzzzBvQ.gif

      EDIT2: was du nochmal machen könntest, wäre in der Tasmota Konsole "weblog 3" eingeben und den Part (Tasmota Log) mit dem Sliderspiel mal senden...

      Danke Dir. Ich habe gerade keine Zeit, da wirklich tief rein zu gehen, aber gestern während einer kleinen Feier hier löste sich das Problem quasi von selbst. Dan Panel hing plötzlich mit Blackscreen. Also mit Bier in der Hand vom Handy aus Neustart und zum bestimmt 7. Mal wieder die v. 4.9.4. TFT geflasht, was nach 2. Anläufen glückte.
      Irgendwie hing hier aber doch alles und die Log war voller Fehler (fehlende Kommunikation mit allen MQTT devices) Also mal alles hier gereebootet:
      Plötzlich läuft der Slider perfekt. 😲.
      Keine Ahnung, wo da der Zusammenhang war. Aber ich bin Happy!

      D 1 Reply Last reply
      1
      • B Bhenyamin

        @armilar said in SONOFF NSPanel mit Lovelace UI:

        @bhenyamin

        Darf ich hier nochmal Pingen?

        natürlich und jederzeit... dafür ist der Thread ja da 😊

        Hast du noch einen Lösungsansatz für mich?

        Ich dachte nach der Konversation mit @TT-Tom (ACTUAL/SET) wäre das erledigt.

        Ich bekomme den Slider weiter nicht auf Spur. Er springt weiter...

        Und genau das kann ich nicht reproduzieren. Der Slider arbeitet auf den Punkt exakt und kommt auch wieder nach einem Seitenwechsel zum eingestellten Wert zurück...

        EDIT: siehe
        989f50b3-e9d6-444a-9db2-bab54524cf50-Nextion_Editor_gGYdzzzBvQ.gif

        EDIT2: was du nochmal machen könntest, wäre in der Tasmota Konsole "weblog 3" eingeben und den Part (Tasmota Log) mit dem Sliderspiel mal senden...

        Danke Dir. Ich habe gerade keine Zeit, da wirklich tief rein zu gehen, aber gestern während einer kleinen Feier hier löste sich das Problem quasi von selbst. Dan Panel hing plötzlich mit Blackscreen. Also mit Bier in der Hand vom Handy aus Neustart und zum bestimmt 7. Mal wieder die v. 4.9.4. TFT geflasht, was nach 2. Anläufen glückte.
        Irgendwie hing hier aber doch alles und die Log war voller Fehler (fehlende Kommunikation mit allen MQTT devices) Also mal alles hier gereebootet:
        Plötzlich läuft der Slider perfekt. 😲.
        Keine Ahnung, wo da der Zusammenhang war. Aber ich bin Happy!

        D Offline
        D Offline
        drloksoft
        wrote on last edited by
        #7469

        Hi,
        kann mir bitte kurz jemand helfen?

        Ich habe mein SONOFF Panel so konfiguriert, dass ich mit dem Hadware Buttons mein Licht ein und ausschalten kann. Allerdings finde ich nun nicht mehr, wie ich das konfiguriert habe 😧 Kann mir kurz jemand einen Hinweis geben? Es wird ein WLED Lichtstrip (Button 1) und eine Nanoleaf Leuchte (Button 2 gesteuert). War das irgendwo außerhalb des Scriptes? Sorry, aber ich finde es nicht mehr ... peinlich ...

        ilovegymI arteckA 2 Replies Last reply
        0
        • D drloksoft

          Hi,
          kann mir bitte kurz jemand helfen?

          Ich habe mein SONOFF Panel so konfiguriert, dass ich mit dem Hadware Buttons mein Licht ein und ausschalten kann. Allerdings finde ich nun nicht mehr, wie ich das konfiguriert habe 😧 Kann mir kurz jemand einen Hinweis geben? Es wird ein WLED Lichtstrip (Button 1) und eine Nanoleaf Leuchte (Button 2 gesteuert). War das irgendwo außerhalb des Scriptes? Sorry, aber ich finde es nicht mehr ... peinlich ...

          ilovegymI Online
          ilovegymI Online
          ilovegym
          wrote on last edited by
          #7470

          @drloksoft

          nutz doch einfach die Suchfunktion im Script-Adapter nach Datenpunkten

          1 Reply Last reply
          2
          • D drloksoft

            Hi,
            kann mir bitte kurz jemand helfen?

            Ich habe mein SONOFF Panel so konfiguriert, dass ich mit dem Hadware Buttons mein Licht ein und ausschalten kann. Allerdings finde ich nun nicht mehr, wie ich das konfiguriert habe 😧 Kann mir kurz jemand einen Hinweis geben? Es wird ein WLED Lichtstrip (Button 1) und eine Nanoleaf Leuchte (Button 2 gesteuert). War das irgendwo außerhalb des Scriptes? Sorry, aber ich finde es nicht mehr ... peinlich ...

            arteckA Offline
            arteckA Offline
            arteck
            Developer Most Active
            wrote on last edited by
            #7471

            @drloksoft https://github.com/joBr99/nspanel-lovelace-ui/blob/fb841abf45124ee88d1008b63ee458a70b58a4d4/ioBroker/NsPanelTs.ts#L938

            zigbee hab ich, zwave auch, nuc's genauso und HA auch

            D 1 Reply Last reply
            2
            • arteckA arteck

              @drloksoft https://github.com/joBr99/nspanel-lovelace-ui/blob/fb841abf45124ee88d1008b63ee458a70b58a4d4/ioBroker/NsPanelTs.ts#L938

              D Offline
              D Offline
              drloksoft
              wrote on last edited by
              #7472

              @arteck @ilovegym - danke für die schnelle Antwort!
              Hier genau ist meinProblem 🙂

              Dummerweise finde ich die Datenpunkte nicht im Script ...

              //-------DE: Anfang Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
              //-------EN: Start Settings for Hardware Button, if used in software (Rule2) --------------------------------------
              // DE: Konfiguration des linken Schalters des NSPanels
              // EN: Configuration of the left switch of the NSPanel
              button1: {
                  // DE: Mögliche Werte wenn Rule2 definiert: 'page', 'toggle', 'set' - Wenn nicht definiert --> mode: null
                  // EN: Possible values if Rule2 defined: 'page', 'toggle', 'set' - If not defined --> mode: null
                  mode: null,
                  // DE: Zielpage - Verwendet wenn mode = page
                  // EN: Target page - Used if mode = page
                  page: null,
                  // DE: Zielentity - Verwendet wenn mode = set oder toggle
                  // EN: Target entity - Used if mode = set or toggle
                  entity: null,
                  // DE: Zielwert - Verwendet wenn mode = set
                  // EN: Target value - Used if mode = set
                  setValue: null
              },
              
              // DE: Konfiguration des rechten Schalters des NSPanels
              // EN: Configuration of the right switch of the NSPanel
              button2: {
                  mode: null,
                  page: null,
                  entity: null,
                  setValue: null
              },
              
              D 1 Reply Last reply
              0
              • D drloksoft

                @arteck @ilovegym - danke für die schnelle Antwort!
                Hier genau ist meinProblem 🙂

                Dummerweise finde ich die Datenpunkte nicht im Script ...

                //-------DE: Anfang Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
                //-------EN: Start Settings for Hardware Button, if used in software (Rule2) --------------------------------------
                // DE: Konfiguration des linken Schalters des NSPanels
                // EN: Configuration of the left switch of the NSPanel
                button1: {
                    // DE: Mögliche Werte wenn Rule2 definiert: 'page', 'toggle', 'set' - Wenn nicht definiert --> mode: null
                    // EN: Possible values if Rule2 defined: 'page', 'toggle', 'set' - If not defined --> mode: null
                    mode: null,
                    // DE: Zielpage - Verwendet wenn mode = page
                    // EN: Target page - Used if mode = page
                    page: null,
                    // DE: Zielentity - Verwendet wenn mode = set oder toggle
                    // EN: Target entity - Used if mode = set or toggle
                    entity: null,
                    // DE: Zielwert - Verwendet wenn mode = set
                    // EN: Target value - Used if mode = set
                    setValue: null
                },
                
                // DE: Konfiguration des rechten Schalters des NSPanels
                // EN: Configuration of the right switch of the NSPanel
                button2: {
                    mode: null,
                    page: null,
                    entity: null,
                    setValue: null
                },
                
                D Offline
                D Offline
                drloksoft
                wrote on last edited by
                #7473

                AH!
                Ich glaube ich habs!
                Ich lausche den MQTT Events in einem anderen Script:

                on({ id: 'mqtt.0.NSPANEL_REY.tele.RESULT', change: 'any' }, (obj) => {
                const val = obj?.state?.val;
                if (typeof val !== 'string' || !val.includes('CustomRecv')) return;

                try {
                    const payload = JSON.parse(val);
                    const event = payload?.CustomRecv;
                
                    // === BUTTON 1 ===
                    if (event === 'event,button1') {
                        const dp = 'alias.0.NSPanel.wohnzimmer.WledRey.ON';
                        const current = getState(dp)?.val;
                        const newVal = !current;
                        setState(dp, newVal);
                
                        if (newVal === true) {
                            setState('wled.0.781c3ca4b32c.seg.0.bri', 128);
                            setState('wled.0.781c3ca4b32c.seg.0.col.0', [255, 255, 255, 0]);
                            setState('wled.0.781c3ca4b32c.seg.0.cct', 50);
                        }
                    }
                
                    // === BUTTON 2 ===
                    else if (event === 'event,button2') {
                        const dp = 'nanoleaf-lightpanels.1.LightPanels.state';
                        const current = getState(dp)?.val;
                        const newVal = !current;
                        setState(dp, newVal);
                
                        if (newVal === true) {
                            setState('nanoleaf-lightpanels.1.LightPanels.brightness', 100);
                        }
                    }
                
                } catch (err) {
                    log('Fehler beim Parsen von CustomRecv: ' + err.message, 'warn');
                }
                

                });

                D 1 Reply Last reply
                0
                • D drloksoft

                  AH!
                  Ich glaube ich habs!
                  Ich lausche den MQTT Events in einem anderen Script:

                  on({ id: 'mqtt.0.NSPANEL_REY.tele.RESULT', change: 'any' }, (obj) => {
                  const val = obj?.state?.val;
                  if (typeof val !== 'string' || !val.includes('CustomRecv')) return;

                  try {
                      const payload = JSON.parse(val);
                      const event = payload?.CustomRecv;
                  
                      // === BUTTON 1 ===
                      if (event === 'event,button1') {
                          const dp = 'alias.0.NSPanel.wohnzimmer.WledRey.ON';
                          const current = getState(dp)?.val;
                          const newVal = !current;
                          setState(dp, newVal);
                  
                          if (newVal === true) {
                              setState('wled.0.781c3ca4b32c.seg.0.bri', 128);
                              setState('wled.0.781c3ca4b32c.seg.0.col.0', [255, 255, 255, 0]);
                              setState('wled.0.781c3ca4b32c.seg.0.cct', 50);
                          }
                      }
                  
                      // === BUTTON 2 ===
                      else if (event === 'event,button2') {
                          const dp = 'nanoleaf-lightpanels.1.LightPanels.state';
                          const current = getState(dp)?.val;
                          const newVal = !current;
                          setState(dp, newVal);
                  
                          if (newVal === true) {
                              setState('nanoleaf-lightpanels.1.LightPanels.brightness', 100);
                          }
                      }
                  
                  } catch (err) {
                      log('Fehler beim Parsen von CustomRecv: ' + err.message, 'warn');
                  }
                  

                  });

                  D Offline
                  D Offline
                  drloksoft
                  wrote on last edited by
                  #7474

                  Eine Frage habe ich noch ...
                  Gibt es ein "best practice", um das Script mit wenig Aufwand auf seine aktuelle Version zu bringen? Ich würde gerne die cartThermo2 nutzen. Einfach den Bereich " DE: Ab hier keine Konfiguration mehr" austauschen?

                  T 1 Reply Last reply
                  0
                  • D drloksoft

                    Eine Frage habe ich noch ...
                    Gibt es ein "best practice", um das Script mit wenig Aufwand auf seine aktuelle Version zu bringen? Ich würde gerne die cartThermo2 nutzen. Einfach den Bereich " DE: Ab hier keine Konfiguration mehr" austauschen?

                    T Do not disturb
                    T Do not disturb
                    ticaki
                    wrote on last edited by
                    #7475

                    @drloksoft
                    Jo - ich hab das so oft gemach das ich nach no more suche und alles ab da tausche.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    D 1 Reply Last reply
                    1
                    • T ticaki

                      @drloksoft
                      Jo - ich hab das so oft gemach das ich nach no more suche und alles ab da tausche.

                      D Offline
                      D Offline
                      drloksoft
                      wrote on last edited by
                      #7476

                      @ticaki top, danke!

                      1 Reply Last reply
                      1
                      • T Offline
                        T Offline
                        Toysman
                        wrote on last edited by Toysman
                        #7477

                        Hallo zusammen,
                        hallo @Armilar

                        ich habe die Config mal auf "Pirate-Weather" umgestellt, bekomme aber z.T. keine sinnvollen bzw. keine Werte angezeigt.

                        Die Datenpunkte unter

                        const weatherEntityPath: string = 'alias.0.Pirate-Wetter';
                        

                        werden nicht geschrieben, obwohl unter

                        const autoCreateAlias = true;
                        

                        der richtige Wert gesetzt ist.

                        Würde mich freuen, wenn ich einen hilfreichen Tip erhalte...

                        Danke & Gruß

                        /***********************************************************************
                             **                                                                   **
                             **                    Screensaver Configuration                      **
                             **                                                                   **
                             ***********************************************************************/
                            leftScreensaverEntity: [
                                // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                            ],    
                            bottomScreensaverEntity: [
                                // bottomScreensaverEntity 1
                                {
                                    ScreensaverEntity: 'pirate-weather.0.weather.daily.00.sunsetTime',
                                    ScreensaverEntityFactor: 1,
                                    ScreensaverEntityDecimalPlaces: 0,
                                    ScreensaverEntityDateFormat: {hour: '2-digit', minute: '2-digit'}, // Description at Wiki-Pages
                                    ScreensaverEntityIconOn: 'weather-sunset-down',
                                    ScreensaverEntityIconOff: null,
                                    ScreensaverEntityText: 'Sonne',
                                    ScreensaverEntityUnitText: '%',
                                    ScreensaverEntityIconColor: MSYellow //{'val_min': 0, 'val_max': 100}
                                },
                                // bottomScreensaverEntity 2
                                {
                                    ScreensaverEntity: 'pirate-weather.0.weather.currently.windSpeed',
                                    ScreensaverEntityFactor: (1000 / 3600),
                                    ScreensaverEntityDecimalPlaces: 1,
                                    ScreensaverEntityIconOn: 'weather-windy',
                                    ScreensaverEntityIconOff: null,
                                    ScreensaverEntityText: "Wind",
                                    ScreensaverEntityUnitText: 'km/h',
                                    ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120}
                                },
                                // bottomScreensaverEntity 3
                                {
                                    ScreensaverEntity: 'pirate-weather.0.weather.currently.windGust',
                                    ScreensaverEntityFactor: (1000 / 3600),
                                    ScreensaverEntityDecimalPlaces: 1,
                                    ScreensaverEntityIconOn: 'weather-tornado',
                                    ScreensaverEntityIconOff: null,
                                    ScreensaverEntityText: 'Böen',
                                    ScreensaverEntityUnitText: 'km/h',
                                    ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120}
                                },
                                // bottomScreensaverEntity 4
                                {
                                    ScreensaverEntity: 'pirate-weather.0.weather.currently.windBearingText',
                                    ScreensaverEntityFactor: 1,
                                    ScreensaverEntityDecimalPlaces: 0,
                                    ScreensaverEntityIconOn: 'windsock',
                                    ScreensaverEntityIconOff: null,
                                    ScreensaverEntityText: 'Windr.',
                                    ScreensaverEntityUnitText: '°',
                                    ScreensaverEntityIconColor: White
                                },
                                // bottomScreensaverEntity 5 (for Alternative and Advanced Screensaver)
                                {
                                    ScreensaverEntity: 'pirate-weather.0.weather.currently.humidity',
                                    ScreensaverEntityFactor: 1,
                                    ScreensaverEntityDecimalPlaces: 1,
                                    ScreensaverEntityIconOn: 'water-percent',
                                    ScreensaverEntityIconOff: null,
                                    ScreensaverEntityText: 'Feuchte',
                                    ScreensaverEntityUnitText: '%',
                                    ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65}
                                },
                                // bottomScreensaverEntity 6 (for Advanced Screensaver)
                                {
                                    ScreensaverEntity: NSPanel_Path + 'Relay.1',
                                    ScreensaverEntityIconOn: 'coach-lamp-variant',
                                    ScreensaverEntityText: 'Street',
                                    ScreensaverEntityOnColor: Yellow,
                                    ScreensaverEntityOffColor: White,
                                    ScreensaverEntityOnText: 'Is ON',
                                    ScreensaverEntityOffText: 'Not ON'
                                },        
                        	// Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                            ],
                        
                            indicatorScreensaverEntity: [
                                // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                            ],
                        
                            // Status Icon 
                            mrIcon1ScreensaverEntity: {
                                ScreensaverEntity: NSPanel_Path + 'Relay.1',
                                ScreensaverEntityIconOn: 'lightbulb',
                                ScreensaverEntityIconOff: null,
                                ScreensaverEntityValue: null,
                                ScreensaverEntityValueDecimalPlace: 0,
                                ScreensaverEntityValueUnit: null,
                                ScreensaverEntityOnColor: On,
                                ScreensaverEntityOffColor: HMIOff
                            },
                            mrIcon2ScreensaverEntity: {
                                ScreensaverEntity: NSPanel_Path + 'Relay.2',
                                ScreensaverEntityIconOn: 'lightbulb',
                                ScreensaverEntityIconOff: null,
                                ScreensaverEntityValue: null,
                                ScreensaverEntityValueDecimalPlace: 0,
                                ScreensaverEntityValueUnit: null,
                                ScreensaverEntityOnColor: On,
                                ScreensaverEntityOffColor: HMIOff
                            },
                            // ------ DE: Ende der Screensaver Einstellungen --------------------
                            // ------ EN: End of screensaver settings ---------------------------
                        
                        

                        359EC206-61EC-4E4A-9BCC-D4EE09B77F3C_1_201_a.jpeg

                        90F40E11-2337-48A7-A086-A65BA23648DA_1_201_a.jpeg

                        Viele Grüße
                        Harry

                        ArmilarA 1 Reply Last reply
                        0
                        • T Toysman

                          Hallo zusammen,
                          hallo @Armilar

                          ich habe die Config mal auf "Pirate-Weather" umgestellt, bekomme aber z.T. keine sinnvollen bzw. keine Werte angezeigt.

                          Die Datenpunkte unter

                          const weatherEntityPath: string = 'alias.0.Pirate-Wetter';
                          

                          werden nicht geschrieben, obwohl unter

                          const autoCreateAlias = true;
                          

                          der richtige Wert gesetzt ist.

                          Würde mich freuen, wenn ich einen hilfreichen Tip erhalte...

                          Danke & Gruß

                          /***********************************************************************
                               **                                                                   **
                               **                    Screensaver Configuration                      **
                               **                                                                   **
                               ***********************************************************************/
                              leftScreensaverEntity: [
                                  // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                              ],    
                              bottomScreensaverEntity: [
                                  // bottomScreensaverEntity 1
                                  {
                                      ScreensaverEntity: 'pirate-weather.0.weather.daily.00.sunsetTime',
                                      ScreensaverEntityFactor: 1,
                                      ScreensaverEntityDecimalPlaces: 0,
                                      ScreensaverEntityDateFormat: {hour: '2-digit', minute: '2-digit'}, // Description at Wiki-Pages
                                      ScreensaverEntityIconOn: 'weather-sunset-down',
                                      ScreensaverEntityIconOff: null,
                                      ScreensaverEntityText: 'Sonne',
                                      ScreensaverEntityUnitText: '%',
                                      ScreensaverEntityIconColor: MSYellow //{'val_min': 0, 'val_max': 100}
                                  },
                                  // bottomScreensaverEntity 2
                                  {
                                      ScreensaverEntity: 'pirate-weather.0.weather.currently.windSpeed',
                                      ScreensaverEntityFactor: (1000 / 3600),
                                      ScreensaverEntityDecimalPlaces: 1,
                                      ScreensaverEntityIconOn: 'weather-windy',
                                      ScreensaverEntityIconOff: null,
                                      ScreensaverEntityText: "Wind",
                                      ScreensaverEntityUnitText: 'km/h',
                                      ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120}
                                  },
                                  // bottomScreensaverEntity 3
                                  {
                                      ScreensaverEntity: 'pirate-weather.0.weather.currently.windGust',
                                      ScreensaverEntityFactor: (1000 / 3600),
                                      ScreensaverEntityDecimalPlaces: 1,
                                      ScreensaverEntityIconOn: 'weather-tornado',
                                      ScreensaverEntityIconOff: null,
                                      ScreensaverEntityText: 'Böen',
                                      ScreensaverEntityUnitText: 'km/h',
                                      ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120}
                                  },
                                  // bottomScreensaverEntity 4
                                  {
                                      ScreensaverEntity: 'pirate-weather.0.weather.currently.windBearingText',
                                      ScreensaverEntityFactor: 1,
                                      ScreensaverEntityDecimalPlaces: 0,
                                      ScreensaverEntityIconOn: 'windsock',
                                      ScreensaverEntityIconOff: null,
                                      ScreensaverEntityText: 'Windr.',
                                      ScreensaverEntityUnitText: '°',
                                      ScreensaverEntityIconColor: White
                                  },
                                  // bottomScreensaverEntity 5 (for Alternative and Advanced Screensaver)
                                  {
                                      ScreensaverEntity: 'pirate-weather.0.weather.currently.humidity',
                                      ScreensaverEntityFactor: 1,
                                      ScreensaverEntityDecimalPlaces: 1,
                                      ScreensaverEntityIconOn: 'water-percent',
                                      ScreensaverEntityIconOff: null,
                                      ScreensaverEntityText: 'Feuchte',
                                      ScreensaverEntityUnitText: '%',
                                      ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65}
                                  },
                                  // bottomScreensaverEntity 6 (for Advanced Screensaver)
                                  {
                                      ScreensaverEntity: NSPanel_Path + 'Relay.1',
                                      ScreensaverEntityIconOn: 'coach-lamp-variant',
                                      ScreensaverEntityText: 'Street',
                                      ScreensaverEntityOnColor: Yellow,
                                      ScreensaverEntityOffColor: White,
                                      ScreensaverEntityOnText: 'Is ON',
                                      ScreensaverEntityOffText: 'Not ON'
                                  },        
                          	// Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                              ],
                          
                              indicatorScreensaverEntity: [
                                  // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                              ],
                          
                              // Status Icon 
                              mrIcon1ScreensaverEntity: {
                                  ScreensaverEntity: NSPanel_Path + 'Relay.1',
                                  ScreensaverEntityIconOn: 'lightbulb',
                                  ScreensaverEntityIconOff: null,
                                  ScreensaverEntityValue: null,
                                  ScreensaverEntityValueDecimalPlace: 0,
                                  ScreensaverEntityValueUnit: null,
                                  ScreensaverEntityOnColor: On,
                                  ScreensaverEntityOffColor: HMIOff
                              },
                              mrIcon2ScreensaverEntity: {
                                  ScreensaverEntity: NSPanel_Path + 'Relay.2',
                                  ScreensaverEntityIconOn: 'lightbulb',
                                  ScreensaverEntityIconOff: null,
                                  ScreensaverEntityValue: null,
                                  ScreensaverEntityValueDecimalPlace: 0,
                                  ScreensaverEntityValueUnit: null,
                                  ScreensaverEntityOnColor: On,
                                  ScreensaverEntityOffColor: HMIOff
                              },
                              // ------ DE: Ende der Screensaver Einstellungen --------------------
                              // ------ EN: End of screensaver settings ---------------------------
                          
                          

                          359EC206-61EC-4E4A-9BCC-D4EE09B77F3C_1_201_a.jpeg

                          90F40E11-2337-48A7-A086-A65BA23648DA_1_201_a.jpeg

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

                          @toysman

                          der autoCreateAlias dürfte da keinen Einfluss haben... Der kommt nur bei speziellen Cards zum Einsatz...

                          Um den Forecast und das aktuelle Wetter zu nutzen, solltest du deine Config so wie hier anpassen:

                          /***** 3. Weather adapter Config *****/
                          
                              // DE: Mögliche Wetteradapter 'accuweather.0.' oder 'daswetter.0.' oder 'openweathermap.0.' oder 'pirate-weather.0.'
                              // EN: Possible weather adapters 'accuweather.0.' or 'daswetter.0.' or 'openweathermap.0. or 'pirate-weather.0.'
                              const weatherAdapterInstance: string = 'pirate-weather.0.';
                              
                              // DE: Mögliche Werte: 'Min', 'Max' oder 'MinMax' im Screensaver
                              // EN: Possible values: 'Min', 'Max' or 'MinMax' in the screensaver
                              const weatherScreensaverTempMinMax: string = 'MinMax';
                          
                              // DE: Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden
                              // EN: This alias is automatically created for the selected weather and can be adjusted accordingly
                              const weatherEntityPath: string = 'alias.0.PWWetter';
                          

                          Der Wetter-Alias wird automatisch angelegt, sofern er nicht vorhanden ist... Deshalb steht da auch PWWetter (kann man natürlich auch anders nennen)

                          Das Script verfolgt immer nur einen bevorzugten Wetteradapter und der muss in

                          const weatherAdapterInstance: string = 'pirate-weather.0.';

                          eingetragen sein...

                          Bei sunsetTime kann es durchaus sein, dass die Date-Formatierung nicht durchgeht... Ansonsten im Alias per Formatierung auf einen Uhrzeit-String zurückgreifen...

                          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.

                          T 1 Reply Last reply
                          0
                          • ArmilarA Armilar

                            @toysman

                            der autoCreateAlias dürfte da keinen Einfluss haben... Der kommt nur bei speziellen Cards zum Einsatz...

                            Um den Forecast und das aktuelle Wetter zu nutzen, solltest du deine Config so wie hier anpassen:

                            /***** 3. Weather adapter Config *****/
                            
                                // DE: Mögliche Wetteradapter 'accuweather.0.' oder 'daswetter.0.' oder 'openweathermap.0.' oder 'pirate-weather.0.'
                                // EN: Possible weather adapters 'accuweather.0.' or 'daswetter.0.' or 'openweathermap.0. or 'pirate-weather.0.'
                                const weatherAdapterInstance: string = 'pirate-weather.0.';
                                
                                // DE: Mögliche Werte: 'Min', 'Max' oder 'MinMax' im Screensaver
                                // EN: Possible values: 'Min', 'Max' or 'MinMax' in the screensaver
                                const weatherScreensaverTempMinMax: string = 'MinMax';
                            
                                // DE: Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden
                                // EN: This alias is automatically created for the selected weather and can be adjusted accordingly
                                const weatherEntityPath: string = 'alias.0.PWWetter';
                            

                            Der Wetter-Alias wird automatisch angelegt, sofern er nicht vorhanden ist... Deshalb steht da auch PWWetter (kann man natürlich auch anders nennen)

                            Das Script verfolgt immer nur einen bevorzugten Wetteradapter und der muss in

                            const weatherAdapterInstance: string = 'pirate-weather.0.';

                            eingetragen sein...

                            Bei sunsetTime kann es durchaus sein, dass die Date-Formatierung nicht durchgeht... Ansonsten im Alias per Formatierung auf einen Uhrzeit-String zurückgreifen...

                            T Offline
                            T Offline
                            Toysman
                            wrote on last edited by
                            #7479

                            @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                            Das Script verfolgt immer nur einen bevorzugten Wetteradapter und der muss in

                            const weatherAdapterInstance: string = 'pirate-weather.0.';

                            da fehlte tatsächloch der letzte "Punkt"

                            eingetragen sein...

                            Bei sunsetTime kann es durchaus sein, dass die Date-Formatierung nicht durchgeht... Ansonsten im Alias per Formatierung auf einen Uhrzeit-String zurückgreifen...

                            In dem Alias wird kein DP für sunset angelegt und der Wert von Pirate-Weather wird in Millisekunden in die Objekte geschrieben.

                            Bildschirmfoto 2025-08-16 um 18.35.02.png

                            Wie wandel ich das denn um? Sorry, aber so tief stecke ich das nicht drin 😧

                            Viele Grüße
                            Harry

                            ArmilarA 1 Reply Last reply
                            1
                            • T Toysman

                              @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                              Das Script verfolgt immer nur einen bevorzugten Wetteradapter und der muss in

                              const weatherAdapterInstance: string = 'pirate-weather.0.';

                              da fehlte tatsächloch der letzte "Punkt"

                              eingetragen sein...

                              Bei sunsetTime kann es durchaus sein, dass die Date-Formatierung nicht durchgeht... Ansonsten im Alias per Formatierung auf einen Uhrzeit-String zurückgreifen...

                              In dem Alias wird kein DP für sunset angelegt und der Wert von Pirate-Weather wird in Millisekunden in die Objekte geschrieben.

                              Bildschirmfoto 2025-08-16 um 18.35.02.png

                              Wie wandel ich das denn um? Sorry, aber so tief stecke ich das nicht drin 😧

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

                              @toysman

                              32ad5ac9-2193-4934-8e70-270bc4ef009e-image.png

                              ohne Sekunden:

                              (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' })
                              

                              mit Sekunden

                              (new Date(val)).toLocaleTimeString('de')
                              

                              oder als String

                              String((new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' }))
                              

                              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.

                              T 1 Reply Last reply
                              1
                              • ArmilarA Armilar

                                @toysman

                                32ad5ac9-2193-4934-8e70-270bc4ef009e-image.png

                                ohne Sekunden:

                                (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' })
                                

                                mit Sekunden

                                (new Date(val)).toLocaleTimeString('de')
                                

                                oder als String

                                String((new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' }))
                                
                                T Offline
                                T Offline
                                Toysman
                                wrote on last edited by
                                #7481

                                @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                                (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' })

                                Danke für Deine Unterstützung - wo füge ich den den oben stehenden Wert ohne Sekunden ein?

                                Wenn ich ihn in der Screensaver Configuration unter

                                ScreensaverEntityDateFormat: (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' }) 
                                

                                einfüge, erhalte ich Fehlermeldungen... bin etwas hilflos 🙄

                                Viele Grüße
                                Harry

                                T ArmilarA 2 Replies Last reply
                                0
                                • T Toysman

                                  @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                                  (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' })

                                  Danke für Deine Unterstützung - wo füge ich den den oben stehenden Wert ohne Sekunden ein?

                                  Wenn ich ihn in der Screensaver Configuration unter

                                  ScreensaverEntityDateFormat: (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' }) 
                                  

                                  einfüge, erhalte ich Fehlermeldungen... bin etwas hilflos 🙄

                                  T Do not disturb
                                  T Do not disturb
                                  ticaki
                                  wrote on last edited by ticaki
                                  #7482

                                  @toysman
                                  Im Alias der die Daten bereitstellt auf den Stift klicken rechts
                                  Bildschirmfoto 2025-08-17 um 10.28.13.png
                                  und dort da:
                                  Bildschirmfoto 2025-08-17 um 10.27.24.png
                                  bei Konverter beim lesen

                                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                  Spenden

                                  T 1 Reply Last reply
                                  0
                                  • T Toysman

                                    @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                                    (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' })

                                    Danke für Deine Unterstützung - wo füge ich den den oben stehenden Wert ohne Sekunden ein?

                                    Wenn ich ihn in der Screensaver Configuration unter

                                    ScreensaverEntityDateFormat: (new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' }) 
                                    

                                    einfüge, erhalte ich Fehlermeldungen... bin etwas hilflos 🙄

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

                                    @toysman

                                    Du erstellst dir einen Alias vom Typ info:

                                    bb364426-0bb7-405b-8e0b-f582206293e5-image.png

                                    Klickst hinten beim ACTUAL auf das fx

                                    und trägst dort

                                    String((new Date(val)).toLocaleTimeString('de', { hour: '2-digit', minute: '2-digit' }))
                                    

                                    54c3d8fc-70ac-4a3c-89a8-2dc0bf4aef8c-image.png

                                    ein

                                    okay und speichern...

                                    // bottomScreensaverEntity 1
                                                {
                                                    ScreensaverEntity: 'alias.0.NSPanel.EMU.Sunset.ACTUAL',
                                                    ScreensaverEntityFactor: 1,
                                                    ScreensaverEntityDecimalPlaces: 0,
                                                    ScreensaverEntityDateFormat: { hour: '2-digit', minute: '2-digit' },
                                                    ScreensaverEntityIconOn: 'weather-sunset-down',
                                                    ScreensaverEntityIconOff: null,
                                                    ScreensaverEntityText: 'Sonne',
                                                    ScreensaverEntityIconColor: MSYellow
                                                },
                                    

                                    Und jetzt der Sonnenuntergang vom Pirate-Weather Adapter korrekt im Screensaver:
                                    bb74aadf-3065-443a-a951-4f559b8e9ab9-image.png

                                    EDIT: Habe den bottomScreensaverEntity nochmal editiert...

                                    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
                                    • T ticaki

                                      @toysman
                                      Im Alias der die Daten bereitstellt auf den Stift klicken rechts
                                      Bildschirmfoto 2025-08-17 um 10.28.13.png
                                      und dort da:
                                      Bildschirmfoto 2025-08-17 um 10.27.24.png
                                      bei Konverter beim lesen

                                      T Offline
                                      T Offline
                                      Toysman
                                      wrote on last edited by Toysman
                                      #7484

                                      @ticaki
                                      @Armilar

                                      Dank eurer Hilfe funktioniert es jetzt 🙂

                                      ABER die Wettervorhersage ist noch komplett leer....

                                      2732f122-282a-43de-aff7-42488b1dd10e-grafik.png

                                      Da stand unter Sccuweather immer der Forecast für die nächsten Tage.

                                      Viele Grüße
                                      Harry

                                      ArmilarA 1 Reply Last reply
                                      0
                                      • T Toysman

                                        @ticaki
                                        @Armilar

                                        Dank eurer Hilfe funktioniert es jetzt 🙂

                                        ABER die Wettervorhersage ist noch komplett leer....

                                        2732f122-282a-43de-aff7-42488b1dd10e-grafik.png

                                        Da stand unter Sccuweather immer der Forecast für die nächsten Tage.

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

                                        @toysman

                                        f0ea91fa-8327-472f-85ce-de4ba3fd1b0f-image.png

                                        Kommt alles aus dem Skript-Part:

                                        /***** 3. Weather adapter Config *****/
                                        
                                            // DE: Mögliche Wetteradapter 'accuweather.0.' oder 'daswetter.0.' oder 'openweathermap.0.' oder 'pirate-weather.0.'
                                            // EN: Possible weather adapters 'accuweather.0.' or 'daswetter.0.' or 'openweathermap.0. or 'pirate-weather.0.'
                                            const weatherAdapterInstance: string = 'pirate-weather.0.';
                                            
                                            // DE: Mögliche Werte: 'Min', 'Max' oder 'MinMax' im Screensaver
                                            // EN: Possible values: 'Min', 'Max' or 'MinMax' in the screensaver
                                            const weatherScreensaverTempMinMax: string = 'MinMax';
                                        
                                            // DE: Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden
                                            // EN: This alias is automatically created for the selected weather and can be adjusted accordingly
                                            const weatherEntityPath: string = 'alias.0.PWWetter';
                                        

                                        Das Skript erzeugt dabei einen neuen Wetteralias...

                                        Einfach austauschen Skript starten und dann sollte der Forecast laufen

                                        EDIT:
                                        oder Alternate:
                                        da07842e-c460-4929-bd63-4e301a520c6f-image.png

                                        oder Advanced:
                                        b343e436-de16-40f4-ad9d-6671969a0fe9-image.png

                                        oder Easyview:
                                        05159fab-4fc3-4e2d-b934-ee2cebb83659-image.png

                                        EDIT2: aber das Skript in der Version v4.9.5.1 (unterer Teil) benutzt du, oder? Sonst wird es nicht funktionieren!!!
                                        23ad1c99-f184-49ca-aee3-fc860a5e2077-image.png

                                        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.

                                        T 1 Reply Last reply
                                        0
                                        • ArmilarA Armilar

                                          @toysman

                                          f0ea91fa-8327-472f-85ce-de4ba3fd1b0f-image.png

                                          Kommt alles aus dem Skript-Part:

                                          /***** 3. Weather adapter Config *****/
                                          
                                              // DE: Mögliche Wetteradapter 'accuweather.0.' oder 'daswetter.0.' oder 'openweathermap.0.' oder 'pirate-weather.0.'
                                              // EN: Possible weather adapters 'accuweather.0.' or 'daswetter.0.' or 'openweathermap.0. or 'pirate-weather.0.'
                                              const weatherAdapterInstance: string = 'pirate-weather.0.';
                                              
                                              // DE: Mögliche Werte: 'Min', 'Max' oder 'MinMax' im Screensaver
                                              // EN: Possible values: 'Min', 'Max' or 'MinMax' in the screensaver
                                              const weatherScreensaverTempMinMax: string = 'MinMax';
                                          
                                              // DE: Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden
                                              // EN: This alias is automatically created for the selected weather and can be adjusted accordingly
                                              const weatherEntityPath: string = 'alias.0.PWWetter';
                                          

                                          Das Skript erzeugt dabei einen neuen Wetteralias...

                                          Einfach austauschen Skript starten und dann sollte der Forecast laufen

                                          EDIT:
                                          oder Alternate:
                                          da07842e-c460-4929-bd63-4e301a520c6f-image.png

                                          oder Advanced:
                                          b343e436-de16-40f4-ad9d-6671969a0fe9-image.png

                                          oder Easyview:
                                          05159fab-4fc3-4e2d-b934-ee2cebb83659-image.png

                                          EDIT2: aber das Skript in der Version v4.9.5.1 (unterer Teil) benutzt du, oder? Sonst wird es nicht funktionieren!!!
                                          23ad1c99-f184-49ca-aee3-fc860a5e2077-image.png

                                          T Offline
                                          T Offline
                                          Toysman
                                          wrote on last edited by Toysman
                                          #7486

                                          @armilar

                                          das sieht bei mir identisch aus...

                                          /***** 3. Weather adapter Config *****/
                                          
                                          // DE: Mögliche Wetteradapter 'accuweather.0.' oder 'daswetter.0.'
                                          // EN: Possible weather adapters 'accuweather.0.' or 'the weather.0.'
                                          const weatherAdapterInstance: string = 'pirate-weather.0.';
                                          
                                          // DE: Mögliche Werte: 'Min', 'Max' oder 'MinMax' im Screensaver
                                          // EN: Possible values: 'Min', 'Max' or 'MinMax' in the screensaver
                                          const weatherScreensaverTempMinMax: string = 'MinMax';
                                          
                                          // DE: Dieser Alias wird automatisch für den gewählten Wetter erstellt und kann entsprechend angepasst werden
                                          // EN: This alias is automatically created for the selected weather and can be adjusted accordingly
                                          const weatherEntityPath: string = 'alias.0.PWWetter';
                                          

                                          In alias.0.PWWETTER sind aber nurr 4 DP angelegt worden.

                                          Bildschirmfoto 2025-08-17 um 11.07.04.png

                                          Der Forecast fehlt da offensichtlich

                                          und ja, das aktuelle TS verwende ich...

                                          /*-----------------------------------------------------------------------
                                          TypeScript v4.9.5.1 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar / @TT-Tom / @ticaki / @Britzelpuf / @Sternmiere / @ravenS0ne
                                          - abgestimmt auf TFT 58 / v4.9.5 / BerryDriver 10 / Tasmota 15.0.1
                                          

                                          Viele Grüße
                                          Harry

                                          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

                                          633

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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