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. Tester
  4. Betatest Bright Sky v0.6.x

NEWS

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

  • 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

Betatest Bright Sky v0.6.x

Scheduled Pinned Locked Moved Tester
185 Posts 18 Posters 11.0k Views 28 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.
  • Chris76eC Chris76e

    @ticaki die Daten von Buienradar.nl sehen ähnlich aus, da habe ich die mit dieser formel umgerechnet, aber keine Ahnung wo die herkommt, hatte ChatGPT damals gefuden

    function precip(value) {
        return Math.pow(10, (value - 109) / 32);
    }
    

    API Werte Buienradar.nl

    104|10:30
    106|10:35
    109|10:40
    104|10:45
    096|10:50
    096|10:55
    087|11:00
    092|11:05
    104|11:10
    106|11:15
    087|11:20
    087|11:25
    087|11:30
    087|11:35
    092|11:40
    099|11:45
    106|11:50
    087|11:55
    087|12:00
    000|12:05
    000|12:10
    000|12:15
    000|12:20
    000|12:25
    

    Umgerechnet

    10:30	0.7
    10:35	0.81
    10:40	1
    10:45	0.7
    10:50	0.39
    10:55	0.39
    11:00	0.21
    11:05	0.29
    11:10	0.7
    11:15	0.81
    11:20	0.21
    11:25	0.21
    11:30	0.21
    11:35	0.21
    11:40	0.29
    11:45	0.49
    11:50	0.81
    11:55	0.21
    12:00	0.21
    12:05	0
    12:10	0
    12:15	0
    12:20	0
    12:25	0
    

    Vieleicht hilft dir das

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

    @chris76e sagte in Betatest Bright Sky v0.3.x:

    function precip(value) { return Math.pow(10, (value - 109) / 32); }

    chatgpt meint das wäre für reflextionswerte in mm/h umzurechnen - ich bekomme aber mm pro 5 Minuten

    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

    Spenden

    1 Reply Last reply
    1
    • T Do not disturb
      T Do not disturb
      ticaki
      wrote on last edited by
      #127

      0.6.3 (2025-10-04)

      • (ticaki) Added Beaufort wind force scale datapoints (wind_force and wind_force_desc) based on wind_speed_10
      • (ticaki) Fixed radar precipitation unit conversion - API values are in 0.01mm per 5 minutes, now correctly converted to mm
      • (ticaki) Added cumulative precipitation states (next_Xmin_sum) showing maximum precipitation sum across all grid areas
      • (ticaki) Added descriptions to max_precipitation_forecast states indicating "mm per 5 minutes"

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      1 Reply Last reply
      1
      • T Do not disturb
        T Do not disturb
        ticaki
        wrote on last edited by ticaki
        #128

        0.6.5 (2025-10-04)

        • (ticaki) Added leading zero to 5-minute radar datapoint folders for correct sorting in UI

        @Armilar habs erst gelesen als release schon raus war

        EDIT:

        Bitte die beiden States next_5... löschen - das ist jetzt next_05....

        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

        Spenden

        ArmilarA 1 Reply Last reply
        0
        • T ticaki

          0.6.5 (2025-10-04)

          • (ticaki) Added leading zero to 5-minute radar datapoint folders for correct sorting in UI

          @Armilar habs erst gelesen als release schon raus war

          EDIT:

          Bitte die beiden States next_5... löschen - das ist jetzt next_05....

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

          @ticaki

          kein Problem 😊

          Sieht einfach besser aus, wemms oben steht 👍

          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

            @ticaki

            kein Problem 😊

            Sieht einfach besser aus, wemms oben steht 👍

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

            @armilar
            Ich hab gedacht die 5 würde es nicht geben, weil ich sowas immer mit führender 0 einbaue - aber copilot hats größtenteils gemacht 🙂

            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

            Spenden

            ArmilarA 1 Reply Last reply
            0
            • T ticaki

              @armilar
              Ich hab gedacht die 5 würde es nicht geben, weil ich sowas immer mit führender 0 einbaue - aber copilot hats größtenteils gemacht 🙂

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

              @ticaki

              Die kleine Azubi KI lernt ja noch 😉

              EDIT:

              Aber passt jetzt:

              d6100dd6-48d5-4b1a-92d4-c01d7627cd1e-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.

              1 Reply Last reply
              2
              • HomoranH Do not disturb
                HomoranH Do not disturb
                Homoran
                Global Moderator Administrators
                wrote on last edited by Homoran
                #132

                ich hab mal mit den Icons gespielt.
                Ich habe da auf meinem uralt-WandDisplay (Megapad 2154) einen seltsamen Effekt.

                Die Sonne, die hinter den Wolken hervorlugt wird nicht angezeigt
                20251009_151952.jpg

                noch seltsamer: auch das alte icon der Sonne ist beeinträchtigt.

                Woran kann das liegen?

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                1 Reply Last reply
                0
                • Daniel SybergD Offline
                  Daniel SybergD Offline
                  Daniel Syberg
                  wrote on last edited by
                  #133

                  Erstmal vielen Dank für den tollen Adapter, bisher funktioniert alles super!

                  Gibt es zusätzlich noch die Möglichkeit den Wert der "gefühlten Temperatur" als Datenpunkt einzufügen ?

                  T 1 Reply Last reply
                  0
                  • Daniel SybergD Daniel Syberg

                    Erstmal vielen Dank für den tollen Adapter, bisher funktioniert alles super!

                    Gibt es zusätzlich noch die Möglichkeit den Wert der "gefühlten Temperatur" als Datenpunkt einzufügen ?

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

                    @Homoran
                    sry keine Ahnung 🙂

                    @daniel-syberg
                    Ich weiß nicht ob man das aus den vorhanden Daten berechnen kann, es gibt jedoch dieses Wert nicht in den API-Daten.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    ArmilarA 1 Reply Last reply
                    0
                    • T ticaki

                      @Homoran
                      sry keine Ahnung 🙂

                      @daniel-syberg
                      Ich weiß nicht ob man das aus den vorhanden Daten berechnen kann, es gibt jedoch dieses Wert nicht in den API-Daten.

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

                      @ticaki

                      Veruche es mal damit... Hab das intern schon Jahre laufen... Nur die Datenpunkte abgeändert:

                      let vWindchill = 0;
                      let vHeatindex = 0;
                      
                      const Debug = false;
                      
                      //Windchill (gefühlte Temperatur) Berechnung (US/Kanada, UK)
                      //Die gefühlte Temperatur oder Windchill bezieht neben der Lufttemperatur auch die Windgeschwindigkeit mit ein. 
                      //Der Windchill ist für Temperaturen unterhalb von ca. 10 °C und Windgeschwindigkeiten zwischen 4.8 und 177 km/h definiert. 
                      //Bei Temperaturen über 27°C wird der Hitzeindex, Humidex oder Summer-Simmer-Index verwendet.
                      
                      //Stufe	Windchill	    Gefahr
                      //1	    0 bis -9	    Keine oder nur geringe Gefahr.
                      //2	    -10 bis -27	    Geringe Gefahr. Unwohlsein. Risiko von Unterkühlung bei langen Außenaktivitäten ohne Schutz.
                      //3	    -28 bis -39	    Risiko von Erfrierungen innerhalb von 10 bis 30 Minuten. Risiko von Erfrierungen und Unterkühlung ohne schützende Kleidung.
                      //4	    -40 bis -47	    Hohe Gefahr! Haut kann innerhalb von 5 bis 10 Minuten erfrieren.
                      //5	    -48 bis -54	    Sehr hohe Gefahr! Haut kann innerhalb von 2 bis 5 Minuten erfrieren.
                      //6	         ab -55	    Extrem hohe Gefahr! Haut kann innerhalb von 2 Minuten erfrieren.
                      
                      function windchill() {
                          let temperature = getState('brightsky.0.current.temperature').val;
                          let windspeed = getState('brightsky.0.current.wind_speed_10').val;
                          if (temperature < 10 && windspeed > 4.8 && windspeed < 177) {
                              vWindchill = 13.12 + 0.6215 * temperature - 11.37 * Math.pow(windspeed, 0.16) + 0.3965 * temperature * Math.pow(windspeed, 0.16);
                              setState("0_userdata.0.wetter.Windchill", Math.round (vWindchill * 10) / 10);
                              if (Debug) log("Windchill: " + vWindchill.toFixed(1), 'info');
                          } else {
                              setState("0_userdata.0.wetter.Windchill", Math.round (temperature * 10) / 10);
                              if (Debug) log("Windchill: Keine Berechnung, da Parameter nicht passen", 'info');
                          }
                      }
                      
                      //Der Hitzeindex ist die gefühlte Temperatur in Abhängigkeit von der Lufttemperatur und der relativen Luftfeuchtigkeit. 
                      //Der Hitzeindex ist bei Temperaturen ab 26.7°C und einer relativen Luftfeuchtigkeit von mindestens 40% anwendbar.
                      
                      //Stufe	Hitzeindex	Gefahr
                      //1	    27-32°C	    Vorsicht – Bei längeren Zeiträumen und körperlicher Aktivität kann es zu Erschöpfungserscheinungen kommen.
                      //2	    33-41°C	    Erhöhte Vorsicht – Es besteht die Möglichkeit von Hitzeschäden wie Sonnenstich, Hitzekrampf und Hitzekollaps.
                      //3	    42-54°C	    Gefahr – Sonnenstich, Hitzekrampf und Hitzekollaps sind wahrscheinlich; Hitzschlag ist möglich.“
                      //4	    ab 55°C	    Erhöhte Gefahr – Hitzschlag und Sonnenstich sind wahrscheinlich.
                      
                      function heatindex() {
                          let temperature = getState('brightsky.0.current.temperature').val;
                          let humidity = getState('brightsky.0.current.relative_humidity').val;
                      
                          // Relative Luftfeuchtigkeit limitieren
                          if (humidity < 0) { humidity = 0; }
                          if (humidity > 100) { humidity = 100; }
                      
                          // Hitzeindex
                          if (temperature > 26.7 && humidity > 40) {
                              vHeatindex = -8.784695 + 1.61139411 * temperature + 2.338549 * humidity - 0.14611605 * temperature * humidity - 0.012308094 * (temperature * temperature) - 0.016424828 * (humidity * humidity) + 0.002211732* (temperature * temperature) * humidity + 0.00072546 * temperature * (humidity * humidity) - 0.000003582 * (temperature * temperature) * (humidity * humidity);
                              setState("0_userdata.0.wetter.Windchill", Math.round (vHeatindex * 10) / 10);
                              if (Debug) log("HeatIndex: " + vHeatindex.toFixed(1), 'info');
                          } else {
                              if (Debug) log("HeatIndex: Keine Berechnung, da Parameter nicht passen", 'info');
                          }
                      }
                      
                      on({ id: [].concat(['brightsky.0.current.temperature',
                                          'brightsky.0.current.relative_humidity',
                                          'brightsky.0.current.wind_speed_10']), change: 'ne' }, async (obj) => {
                          windchill();
                          heatindex();
                      });
                      

                      Kannst du mit ein paar kleineren Änderunge direkt in den Adapter schreddern...

                      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

                        @ticaki

                        Veruche es mal damit... Hab das intern schon Jahre laufen... Nur die Datenpunkte abgeändert:

                        let vWindchill = 0;
                        let vHeatindex = 0;
                        
                        const Debug = false;
                        
                        //Windchill (gefühlte Temperatur) Berechnung (US/Kanada, UK)
                        //Die gefühlte Temperatur oder Windchill bezieht neben der Lufttemperatur auch die Windgeschwindigkeit mit ein. 
                        //Der Windchill ist für Temperaturen unterhalb von ca. 10 °C und Windgeschwindigkeiten zwischen 4.8 und 177 km/h definiert. 
                        //Bei Temperaturen über 27°C wird der Hitzeindex, Humidex oder Summer-Simmer-Index verwendet.
                        
                        //Stufe	Windchill	    Gefahr
                        //1	    0 bis -9	    Keine oder nur geringe Gefahr.
                        //2	    -10 bis -27	    Geringe Gefahr. Unwohlsein. Risiko von Unterkühlung bei langen Außenaktivitäten ohne Schutz.
                        //3	    -28 bis -39	    Risiko von Erfrierungen innerhalb von 10 bis 30 Minuten. Risiko von Erfrierungen und Unterkühlung ohne schützende Kleidung.
                        //4	    -40 bis -47	    Hohe Gefahr! Haut kann innerhalb von 5 bis 10 Minuten erfrieren.
                        //5	    -48 bis -54	    Sehr hohe Gefahr! Haut kann innerhalb von 2 bis 5 Minuten erfrieren.
                        //6	         ab -55	    Extrem hohe Gefahr! Haut kann innerhalb von 2 Minuten erfrieren.
                        
                        function windchill() {
                            let temperature = getState('brightsky.0.current.temperature').val;
                            let windspeed = getState('brightsky.0.current.wind_speed_10').val;
                            if (temperature < 10 && windspeed > 4.8 && windspeed < 177) {
                                vWindchill = 13.12 + 0.6215 * temperature - 11.37 * Math.pow(windspeed, 0.16) + 0.3965 * temperature * Math.pow(windspeed, 0.16);
                                setState("0_userdata.0.wetter.Windchill", Math.round (vWindchill * 10) / 10);
                                if (Debug) log("Windchill: " + vWindchill.toFixed(1), 'info');
                            } else {
                                setState("0_userdata.0.wetter.Windchill", Math.round (temperature * 10) / 10);
                                if (Debug) log("Windchill: Keine Berechnung, da Parameter nicht passen", 'info');
                            }
                        }
                        
                        //Der Hitzeindex ist die gefühlte Temperatur in Abhängigkeit von der Lufttemperatur und der relativen Luftfeuchtigkeit. 
                        //Der Hitzeindex ist bei Temperaturen ab 26.7°C und einer relativen Luftfeuchtigkeit von mindestens 40% anwendbar.
                        
                        //Stufe	Hitzeindex	Gefahr
                        //1	    27-32°C	    Vorsicht – Bei längeren Zeiträumen und körperlicher Aktivität kann es zu Erschöpfungserscheinungen kommen.
                        //2	    33-41°C	    Erhöhte Vorsicht – Es besteht die Möglichkeit von Hitzeschäden wie Sonnenstich, Hitzekrampf und Hitzekollaps.
                        //3	    42-54°C	    Gefahr – Sonnenstich, Hitzekrampf und Hitzekollaps sind wahrscheinlich; Hitzschlag ist möglich.“
                        //4	    ab 55°C	    Erhöhte Gefahr – Hitzschlag und Sonnenstich sind wahrscheinlich.
                        
                        function heatindex() {
                            let temperature = getState('brightsky.0.current.temperature').val;
                            let humidity = getState('brightsky.0.current.relative_humidity').val;
                        
                            // Relative Luftfeuchtigkeit limitieren
                            if (humidity < 0) { humidity = 0; }
                            if (humidity > 100) { humidity = 100; }
                        
                            // Hitzeindex
                            if (temperature > 26.7 && humidity > 40) {
                                vHeatindex = -8.784695 + 1.61139411 * temperature + 2.338549 * humidity - 0.14611605 * temperature * humidity - 0.012308094 * (temperature * temperature) - 0.016424828 * (humidity * humidity) + 0.002211732* (temperature * temperature) * humidity + 0.00072546 * temperature * (humidity * humidity) - 0.000003582 * (temperature * temperature) * (humidity * humidity);
                                setState("0_userdata.0.wetter.Windchill", Math.round (vHeatindex * 10) / 10);
                                if (Debug) log("HeatIndex: " + vHeatindex.toFixed(1), 'info');
                            } else {
                                if (Debug) log("HeatIndex: Keine Berechnung, da Parameter nicht passen", 'info');
                            }
                        }
                        
                        on({ id: [].concat(['brightsky.0.current.temperature',
                                            'brightsky.0.current.relative_humidity',
                                            'brightsky.0.current.wind_speed_10']), change: 'ne' }, async (obj) => {
                            windchill();
                            heatindex();
                        });
                        

                        Kannst du mit ein paar kleineren Änderunge direkt in den Adapter schreddern...

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

                        @armilar sagte in Betatest Bright Sky v0.3.x:

                        Kannst du mit ein paar kleineren Änderunge direkt in den Adapter schreddern...

                        @daniel-syberg

                        https://github.com/ticaki/ioBroker.brightsky/pull/64

                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                        Spenden

                        1 Reply Last reply
                        1
                        • T Do not disturb
                          T Do not disturb
                          ticaki
                          wrote on last edited by
                          #137

                          0.6.6 (2025-10-11)

                          • (ticaki) Added apparent temperature datapoints for current, hourly, and daily weather data

                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                          Spenden

                          1 Reply Last reply
                          1
                          • Daniel SybergD Offline
                            Daniel SybergD Offline
                            Daniel Syberg
                            wrote on last edited by
                            #138

                            WOW! Das ging ja schnell!
                            Vielen lieben Dank, das wird direkt getestet.

                            T 1 Reply Last reply
                            0
                            • Daniel SybergD Daniel Syberg

                              WOW! Das ging ja schnell!
                              Vielen lieben Dank, das wird direkt getestet.

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

                              @daniel-syberg
                              Ich hab die berechnung von Armilar genommen - wir haben da noch eine Formel aber das muß dann erstmal bissle getestet werden nicht dass dabei müll berechnet wird 🙂

                              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                              Spenden

                              HomoranH 1 Reply Last reply
                              0
                              • T ticaki

                                @daniel-syberg
                                Ich hab die berechnung von Armilar genommen - wir haben da noch eine Formel aber das muß dann erstmal bissle getestet werden nicht dass dabei müll berechnet wird 🙂

                                HomoranH Do not disturb
                                HomoranH Do not disturb
                                Homoran
                                Global Moderator Administrators
                                wrote on last edited by
                                #140

                                @ticaki

                                Naja, die gefühlte Temperatur und der Windchill sind ja eigentlich stark subjektiv.
                                Ob das wirklich rein mathematisch abgebildet werden kann ist für ich nicht ganz klar.

                                Hab mal kurz die Kommentare im Skript gelesen

                                @armilar sagte in Betatest Bright Sky v0.3.x:

                                Die gefühlte Temperatur oder Windchill bezieht neben der Lufttemperatur auch die Windgeschwindigkeit mit ein.

                                @armilar sagte in Betatest Bright Sky v0.3.x:

                                Der Hitzeindex ist die gefühlte Temperatur in Abhängigkeit von der Lufttemperatur und der relativen Luftfeuchtigkeit.

                                Das Wärmeempfinden, ins beso dere bei hohen Temperaturen ist natürlich von der relativen Luftfeuchtigkeit abhängig, da der Körper mit zunehmender Umgebungsfeuchte den Schweiss, den er zu Kühlung produziert nicht mehr ausreichend verdunsten kann.
                                (deswegen reicht im Sommer oft ein Entfeuchter, kühler muss es gar nicht sein)

                                Aber auch beim Windchill spielt IMHO die relative Luftfeuchtigkeit eine Rolle.
                                Ist die zu hoch, bleibt ja der Schweiß (auch wenn noch unsichtbar) auf der Haut, und dann reicht schon ein geringerer Luftzug um es als unangenehm kalt zu empfinden.

                                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                T 1 Reply Last reply
                                1
                                • HomoranH Homoran

                                  @ticaki

                                  Naja, die gefühlte Temperatur und der Windchill sind ja eigentlich stark subjektiv.
                                  Ob das wirklich rein mathematisch abgebildet werden kann ist für ich nicht ganz klar.

                                  Hab mal kurz die Kommentare im Skript gelesen

                                  @armilar sagte in Betatest Bright Sky v0.3.x:

                                  Die gefühlte Temperatur oder Windchill bezieht neben der Lufttemperatur auch die Windgeschwindigkeit mit ein.

                                  @armilar sagte in Betatest Bright Sky v0.3.x:

                                  Der Hitzeindex ist die gefühlte Temperatur in Abhängigkeit von der Lufttemperatur und der relativen Luftfeuchtigkeit.

                                  Das Wärmeempfinden, ins beso dere bei hohen Temperaturen ist natürlich von der relativen Luftfeuchtigkeit abhängig, da der Körper mit zunehmender Umgebungsfeuchte den Schweiss, den er zu Kühlung produziert nicht mehr ausreichend verdunsten kann.
                                  (deswegen reicht im Sommer oft ein Entfeuchter, kühler muss es gar nicht sein)

                                  Aber auch beim Windchill spielt IMHO die relative Luftfeuchtigkeit eine Rolle.
                                  Ist die zu hoch, bleibt ja der Schweiß (auch wenn noch unsichtbar) auf der Haut, und dann reicht schon ein geringerer Luftzug um es als unangenehm kalt zu empfinden.

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

                                  @homoran

                                  Die aktuell zur Diskussion stehende Berechnung sieht so aus - ist aber noch nirgendwo drin - chatGPT baut auch genug mist 🙂

                                  Die von Armilar ist lange getestet.

                                  /**
                                   * Convert kWh/m² per day to average W/m² (instantaneous mean over 24h).
                                   * If your kWh/m² is for a different period, adjust `hours`.
                                   *
                                   * @param kwhPerM2 kWh per m² (e.g. daily total)
                                   * @param hours number of hours for the period (default 24)
                                   * @returns average W/m²
                                   */
                                  function kwhm2_per_day_to_Wm2(kwhPerM2, hours = 24) {
                                    return (kwhPerM2 * 1000) / hours;
                                  }
                                  
                                  /**
                                   * Calculate saturation vapor pressure (Magnus formula) and vapor pressure e (hPa).
                                   *
                                   * @param T temperature in °C
                                   * @param RH relative humidity in % (0-100)
                                   * @returns vapor pressure e in hPa
                                   */
                                  function vaporPressure_hPa(T, RH) {
                                    const es = 6.105 * Math.exp((17.27 * T) / (237.7 + T));
                                    return (RH / 100) * es;
                                  }
                                  
                                  /**
                                   * Apparent Temperature (Steadman).
                                   * Inputs: temperature °C, RH %, wind in km/h.
                                   *
                                   * @param T temperature in °C
                                   * @param RH relative humidity in %
                                   * @param wind_kmh wind speed in km/h (10-min avg ok)
                                   * @returns apparent temperature in °C
                                   */
                                  function apparentTemperature(T, RH, wind_kmh) {
                                    const v_ms = wind_kmh / 3.6;
                                    const e = vaporPressure_hPa(T, RH); // hPa
                                    return T + 0.33 * e - 0.70 * v_ms - 4.0;
                                  }
                                  
                                  /**
                                   * Wind Chill Temperature (WS/meteorological standard).
                                   * Validity: T <= 10°C and wind > ~4.8 km/h.
                                   *
                                   * @param T temperature in °C
                                   * @param wind_kmh wind speed in km/h
                                   * @returns wind chill in °C or NaN if outside typical validity
                                   */
                                  function windChill(T, wind_kmh) {
                                    if (T > 10 || wind_kmh < 4.8) return NaN;
                                    const v16 = Math.pow(wind_kmh, 0.16);
                                    return 13.12 + 0.6215 * T - 11.37 * v16 + 0.3965 * T * v16;
                                  }
                                  
                                  /**
                                   * Heat Index (NOAA / Rothfusz), expects T in °C and RH in %.
                                   * Typical validity: T >= 27°C and RH reasonably high.
                                   *
                                   * @param T temperature in °C
                                   * @param RH relative humidity in %
                                   * @returns heat index in °C
                                   */
                                  function heatIndex(T, RH) {
                                    const T_f = (T * 9) / 5 + 32;
                                    const R = RH;
                                    let HI_f =
                                      -42.379 +
                                      2.04901523 * T_f +
                                      10.14333127 * R -
                                      0.22475541 * T_f * R -
                                      6.83783e-3 * T_f * T_f -
                                      5.481717e-2 * R * R +
                                      1.22874e-3 * T_f * T_f * R +
                                      8.5282e-4 * T_f * R * R -
                                      1.99e-6 * T_f * T_f * R * R;
                                  
                                    if (R < 13 && T_f >= 80 && T_f <= 112) {
                                      HI_f -= ((13 - R) / 4) * Math.sqrt((17 - Math.abs(T_f - 95)) / 17);
                                    } else if (R > 85 && T_f >= 80 && T_f <= 87) {
                                      HI_f += ((R - 85) / 10) * ((87 - T_f) / 5);
                                    }
                                  
                                    return ((HI_f - 32) * 5) / 9;
                                  }
                                  
                                  /**
                                   * Pragmatic "feels-like" chooser:
                                   * - if T <= 10°C -> use Wind Chill (if valid)
                                   * - else if T >= 27°C -> use Heat Index
                                   * - else -> use Apparent Temperature (Steadman)
                                   *
                                   * Solar input (kWh/m² per day) is converted to average W/m² and returned,
                                   * but NOT applied automatically to the index (proper inclusion needs MRT/UTCI).
                                   *
                                   * @param T temperature in °C
                                   * @param RH relative humidity in %
                                   * @param wind_kmh wind speed in km/h (10-min)
                                   * @param solar_kwh_m2_per_day optional solar in kWh/m² (daily). pass null if none.
                                   * @returns object { indexName, value_C, solar_Wm2 (or null) }
                                   */
                                  function feelsLike(T, RH, wind_kmh, solar_kwh_m2_per_day = null) {
                                    const solar_Wm2 = solar_kwh_m2_per_day !== null ? kwhm2_per_day_to_Wm2(solar_kwh_m2_per_day, 24) : null;
                                  
                                    if (T <= 10) {
                                      const wc = windChill(T, wind_kmh);
                                      if (!Number.isNaN(wc)) return { indexName: 'WindChill', value_C: wc, solar_Wm2: solar_Wm2 };
                                      // fallback to apparent temperature if wind chill out of range
                                    }
                                    if (T >= 27) {
                                      return { indexName: 'HeatIndex', value_C: heatIndex(T, RH), solar_Wm2: solar_Wm2 };
                                    }
                                    return { indexName: 'ApparentTemperature', value_C: apparentTemperature(T, RH, wind_kmh), solar_Wm2: solar_Wm2 };
                                  }
                                  

                                  EDIT: Das mit windchill und schweiß stimmt natürlich - fraglich ist halt ob das bei < 10°C ne rolle spielt, weil da kann ich dir schon jetzt sagen - im boxershirt wird dir kalt sein 🙂
                                  Da wird auch die reduktion der isolierung der kleidung durch feuchtigkeit - ok das wird dann echt komplex - da brauchste paar sensoren an dir die das dann korrekt berechnen.

                                  EDIT2: die <10°C nimmt auch chatGPT als hürde für die berechnung von windchill

                                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                  Spenden

                                  Matze RM 1 Reply Last reply
                                  1
                                  • T ticaki

                                    @homoran

                                    Die aktuell zur Diskussion stehende Berechnung sieht so aus - ist aber noch nirgendwo drin - chatGPT baut auch genug mist 🙂

                                    Die von Armilar ist lange getestet.

                                    /**
                                     * Convert kWh/m² per day to average W/m² (instantaneous mean over 24h).
                                     * If your kWh/m² is for a different period, adjust `hours`.
                                     *
                                     * @param kwhPerM2 kWh per m² (e.g. daily total)
                                     * @param hours number of hours for the period (default 24)
                                     * @returns average W/m²
                                     */
                                    function kwhm2_per_day_to_Wm2(kwhPerM2, hours = 24) {
                                      return (kwhPerM2 * 1000) / hours;
                                    }
                                    
                                    /**
                                     * Calculate saturation vapor pressure (Magnus formula) and vapor pressure e (hPa).
                                     *
                                     * @param T temperature in °C
                                     * @param RH relative humidity in % (0-100)
                                     * @returns vapor pressure e in hPa
                                     */
                                    function vaporPressure_hPa(T, RH) {
                                      const es = 6.105 * Math.exp((17.27 * T) / (237.7 + T));
                                      return (RH / 100) * es;
                                    }
                                    
                                    /**
                                     * Apparent Temperature (Steadman).
                                     * Inputs: temperature °C, RH %, wind in km/h.
                                     *
                                     * @param T temperature in °C
                                     * @param RH relative humidity in %
                                     * @param wind_kmh wind speed in km/h (10-min avg ok)
                                     * @returns apparent temperature in °C
                                     */
                                    function apparentTemperature(T, RH, wind_kmh) {
                                      const v_ms = wind_kmh / 3.6;
                                      const e = vaporPressure_hPa(T, RH); // hPa
                                      return T + 0.33 * e - 0.70 * v_ms - 4.0;
                                    }
                                    
                                    /**
                                     * Wind Chill Temperature (WS/meteorological standard).
                                     * Validity: T <= 10°C and wind > ~4.8 km/h.
                                     *
                                     * @param T temperature in °C
                                     * @param wind_kmh wind speed in km/h
                                     * @returns wind chill in °C or NaN if outside typical validity
                                     */
                                    function windChill(T, wind_kmh) {
                                      if (T > 10 || wind_kmh < 4.8) return NaN;
                                      const v16 = Math.pow(wind_kmh, 0.16);
                                      return 13.12 + 0.6215 * T - 11.37 * v16 + 0.3965 * T * v16;
                                    }
                                    
                                    /**
                                     * Heat Index (NOAA / Rothfusz), expects T in °C and RH in %.
                                     * Typical validity: T >= 27°C and RH reasonably high.
                                     *
                                     * @param T temperature in °C
                                     * @param RH relative humidity in %
                                     * @returns heat index in °C
                                     */
                                    function heatIndex(T, RH) {
                                      const T_f = (T * 9) / 5 + 32;
                                      const R = RH;
                                      let HI_f =
                                        -42.379 +
                                        2.04901523 * T_f +
                                        10.14333127 * R -
                                        0.22475541 * T_f * R -
                                        6.83783e-3 * T_f * T_f -
                                        5.481717e-2 * R * R +
                                        1.22874e-3 * T_f * T_f * R +
                                        8.5282e-4 * T_f * R * R -
                                        1.99e-6 * T_f * T_f * R * R;
                                    
                                      if (R < 13 && T_f >= 80 && T_f <= 112) {
                                        HI_f -= ((13 - R) / 4) * Math.sqrt((17 - Math.abs(T_f - 95)) / 17);
                                      } else if (R > 85 && T_f >= 80 && T_f <= 87) {
                                        HI_f += ((R - 85) / 10) * ((87 - T_f) / 5);
                                      }
                                    
                                      return ((HI_f - 32) * 5) / 9;
                                    }
                                    
                                    /**
                                     * Pragmatic "feels-like" chooser:
                                     * - if T <= 10°C -> use Wind Chill (if valid)
                                     * - else if T >= 27°C -> use Heat Index
                                     * - else -> use Apparent Temperature (Steadman)
                                     *
                                     * Solar input (kWh/m² per day) is converted to average W/m² and returned,
                                     * but NOT applied automatically to the index (proper inclusion needs MRT/UTCI).
                                     *
                                     * @param T temperature in °C
                                     * @param RH relative humidity in %
                                     * @param wind_kmh wind speed in km/h (10-min)
                                     * @param solar_kwh_m2_per_day optional solar in kWh/m² (daily). pass null if none.
                                     * @returns object { indexName, value_C, solar_Wm2 (or null) }
                                     */
                                    function feelsLike(T, RH, wind_kmh, solar_kwh_m2_per_day = null) {
                                      const solar_Wm2 = solar_kwh_m2_per_day !== null ? kwhm2_per_day_to_Wm2(solar_kwh_m2_per_day, 24) : null;
                                    
                                      if (T <= 10) {
                                        const wc = windChill(T, wind_kmh);
                                        if (!Number.isNaN(wc)) return { indexName: 'WindChill', value_C: wc, solar_Wm2: solar_Wm2 };
                                        // fallback to apparent temperature if wind chill out of range
                                      }
                                      if (T >= 27) {
                                        return { indexName: 'HeatIndex', value_C: heatIndex(T, RH), solar_Wm2: solar_Wm2 };
                                      }
                                      return { indexName: 'ApparentTemperature', value_C: apparentTemperature(T, RH, wind_kmh), solar_Wm2: solar_Wm2 };
                                    }
                                    

                                    EDIT: Das mit windchill und schweiß stimmt natürlich - fraglich ist halt ob das bei < 10°C ne rolle spielt, weil da kann ich dir schon jetzt sagen - im boxershirt wird dir kalt sein 🙂
                                    Da wird auch die reduktion der isolierung der kleidung durch feuchtigkeit - ok das wird dann echt komplex - da brauchste paar sensoren an dir die das dann korrekt berechnen.

                                    EDIT2: die <10°C nimmt auch chatGPT als hürde für die berechnung von windchill

                                    Matze RM Offline
                                    Matze RM Offline
                                    Matze R
                                    wrote on last edited by
                                    #142

                                    Hallo,

                                    ich habe heute den Bright Sky Adapter installiert. Als ich mir die Wetterinformationen für die Vis einrichten wollte, bin ich auf ein paar Probleme gestoßen, die ich auch hier durch diese Seite nicht lösen konnte.
                                    Das erste Problem war das Einbinden der Icons. Dieser Datenpunkt auf dem Bild fehlt bei mir in den bright sky Ordner.bright_sky_datenpunkt1.png
                                    Das nächste Problem ist das die Datenpunkte "dayName_long " und "dayName_short" bei mir auch im Ordner Bright Sky fehlen.
                                    bright_sky_datenpunkte2.png
                                    Also Zusammengefasst, mir fehlen die Datenpunkte dayName_long , dayName_short und iconUrl.

                                    Warum werden die Datenpunkte nicht angezeigt ich habe den bright sky 0.3.5 . ich bin für jede Hilfe dankbar

                                    FG
                                    Maro

                                    ArmilarA 1 Reply Last reply
                                    0
                                    • Matze RM Matze R

                                      Hallo,

                                      ich habe heute den Bright Sky Adapter installiert. Als ich mir die Wetterinformationen für die Vis einrichten wollte, bin ich auf ein paar Probleme gestoßen, die ich auch hier durch diese Seite nicht lösen konnte.
                                      Das erste Problem war das Einbinden der Icons. Dieser Datenpunkt auf dem Bild fehlt bei mir in den bright sky Ordner.bright_sky_datenpunkt1.png
                                      Das nächste Problem ist das die Datenpunkte "dayName_long " und "dayName_short" bei mir auch im Ordner Bright Sky fehlen.
                                      bright_sky_datenpunkte2.png
                                      Also Zusammengefasst, mir fehlen die Datenpunkte dayName_long , dayName_short und iconUrl.

                                      Warum werden die Datenpunkte nicht angezeigt ich habe den bright sky 0.3.5 . ich bin für jede Hilfe dankbar

                                      FG
                                      Maro

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

                                      @matze-r

                                      Ist ja auch ein wenig alt:

                                      ef921849-daa8-4bc5-a393-ca62e33269d6-image.png

                                      0.6.6 ist aktuell die Version

                                      Geh mal über Adapter und ziehe dir die:
                                      https://github.com/ticaki/ioBroker.brightsky


                                      EDIT:
                                      2584d26b-b221-4657-a65c-9dfe16261ad8-image.png

                                      0.3.5 ist stable... Da ist das nicht drin... Also "latest" (Beta) wie oben beschrieben installieren...

                                      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
                                      • Matze RM Offline
                                        Matze RM Offline
                                        Matze R
                                        wrote on last edited by
                                        #144

                                        Hi danke cool . Aber mit welchem Widget und wie funktioniert das . Html- und Image- Widget haben nicht funktioniert.
                                        diese Inventwo auch nicht. Auch ein Wetter Widget aus der Time and weather Serie hat nicht funktoiniert .
                                        Vielen dank nochmal für die Hilfe
                                        FG

                                        Maro

                                        andre1deA 1 Reply Last reply
                                        0
                                        • andre1deA Online
                                          andre1deA Online
                                          andre1de
                                          wrote on last edited by andre1de
                                          #145

                                          Hallo,
                                          erstmal danke für den Adapter!
                                          Eine Frage: Manche Datenpunkte, wie z.B. "icon" oder "timestamp", sind auf englisch. Bleibt es so? Muss man dann es selbst durch Scripts erledigen?

                                          T 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

                                          624

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          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