Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. ZigBee neue Version 1.6.x

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    ZigBee neue Version 1.6.x

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      diwoma @arteck last edited by

      @arteck said in ZigBee neue Version 1.6.x:

      das ist doch der sinn einer Multihostumgebung... der eine Host sowie der andere Hst übermitteln die Daten an eine zetntralle stelle..
      und ja du kannst den adapter aus dem Master löschen.. oben erst auf den Master klicken. auf adapter liste wechseln.. dann F5 drücken (es gibt ein bug im Admin) dann kannst du den adapter löschen

      Danke, ich werde dann mal einen Snapshot ziehen und den Adapter nach Deiner Beschreibung löschen.

      1 Reply Last reply Reply Quote 0
      • D
        diwoma @arteck last edited by

        @arteck
        Danke, hat funktioniert.

        Vor allem, als ich erkannt habe, das die Instanz ja auf dem PI läuft.

        1 Reply Last reply Reply Quote -1
        • D
          diwoma @arteck last edited by

          @arteck said in ZigBee neue Version 1.6.x:

          auf GIT liegt täglich eine neue Version .. kannst also von da installieren wenn du auf dem neusten bleiben willst.
          ABER kann sein das diese nicht lauffähig ist (eher unwarscheinlich aber ich mach dich drauf aufmerksam)

          Hi, da wir nun die Adapter-Frage gelöst haben, zurück zum eigentlichen Ausgangspunkt meiner Frage:
          Soll ich warten, bis ein Zigbee-Update kommt, das die Converterliste akualisiert?
          Soll ich den gesamten Converter per npm aktualisieren?
          Oder (eine andere Idee) nur den einen Fingerprint in der moes.js nachtragen? Beim vergeich mit der Datei auf GIT habe ich gesehen, dass nur dieser zusätzlich hinzugegeben wurde und ich könnte mir denken, dass der Rest so generisch aufgebaut ist, dass es reicht.

          P arteck Asgothian 3 Replies Last reply Reply Quote 0
          • P
            pk68 @diwoma last edited by

            Hallo, hat sich in der letzten Zeit etwas an der Berechnung des Batteriestatus bei Aquara Geräten geändert?
            Habe gestern diverse Adapter geupdatet, u.a. auch den Zigbee-Adapter von 1.6.16 auf 1.6.18. Danach habe alle Aquara Geräte 100% Batteriestand. Bin mir sicher, dass zwei Temperatursensoren und der Lichtsensor vorher weniger als 100% hatten. Bei den Tradfri Geräten habe ich den Effekt nicht.
            Auf Git bei Koenkk/zigbee2mqtt hatte ich vor einiger Zeit folgende Berechnung gefunden:
            Implemented the improved calculation:
            2850 mV or lower = 0%
            3200 mV or higher = 100%
            2850-3200 mV = linear calculation
            Die scheint aber nicht mehr aktuell zu sein, denn bei mir wird bei einer Spannung von 3025 mV 100% Batterie angegeben.

            1 Reply Last reply Reply Quote 0
            • arteck
              arteck Developer Most Active @diwoma last edited by arteck

              @diwoma auch für dich ..das wird alles automatisch aktualisiert wenn du den adapter aktualisiesrt.. nimm den von GIT da ist es immer aktuell

              @pk68 hier it die Berechung .. die wir auch so 1 zu 1 übernehmen

              ? P 2 Replies Last reply Reply Quote 1
              • ?
                A Former User @arteck last edited by

                @arteck
                Ich bin erst mit 1.6.18 dazugekommen aber bei 2.975V sollten es dann keine 99% sein:
                7886bbcc-a77c-4f46-92d5-526320cea9f1-image.png

                arteck P 2 Replies Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active @Guest last edited by arteck

                  @brainbug ich seh das Gerät nicht, kein Plan, um welches Modell sich da handelt und wie das range ist für die Spannungsauswertung

                  habe mir die Berchnung nie angeschaut.. da es hierzu eine Grundsatzdiskussion gab.. der eine wollte so der andere so...
                  wir haben es bei converter belassen.. also wenn da was nicht stimmt.. bitte da ein issue erstellen

                  Nachtrag : gestern ist eine korrektur für Xiaomi Geräte reingekommen.. bitte Adapter von GIT installieren

                  ? 1 Reply Last reply Reply Quote 0
                  • ?
                    A Former User @arteck last edited by A Former User

                    @arteck

                    Nachtrag : gestern ist eine korrektur für Xiaomi Geräte reingekommen.. bitte Adapter von GIT installieren

                    Gemacht aber bisher keine wirkliche Änderung.

                    arteck 1 Reply Last reply Reply Quote 0
                    • arteck
                      arteck Developer Most Active @Guest last edited by arteck

                      @brainbug hier auch nochmal WIR BERECHNEN NIX..
                      erstelle bitte ein issue auf der herdsman seite .. bitte dann in englisch.. https://github.com/Koenkk/zigbee-herdsman-converters/

                      ? 1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User @arteck last edited by A Former User

                        @arteck sagte in ZigBee neue Version 1.6.x:

                        @brainbug hier auch nochmal WIR BERECHNEN NIX..
                        erstelle bitte ein issue auf der herdsman seite .. bitte dann in englisch.. https://github.com/Koenkk/zigbee-herdsman-converters/

                        Sorry das hab ich FASLCH verstanden!!! Ich dachte der Issue soll zum Adapter. Und nochmals, ICH HABE ES FALSCH VERSTANDEN....
                        Da ich die Anzeige nicht brauche werde ich dort auch kein Issue erstellen.

                        Asgothian 1 Reply Last reply Reply Quote 0
                        • Asgothian
                          Asgothian Developer @diwoma last edited by

                          @diwoma sagte in ZigBee neue Version 1.6.x:

                          @arteck said in ZigBee neue Version 1.6.x:

                          auf GIT liegt täglich eine neue Version .. kannst also von da installieren wenn du auf dem neusten bleiben willst.
                          ABER kann sein das diese nicht lauffähig ist (eher unwarscheinlich aber ich mach dich drauf aufmerksam)

                          Hi, da wir nun die Adapter-Frage gelöst haben, zurück zum eigentlichen Ausgangspunkt meiner Frage:
                          Soll ich warten, bis ein Zigbee-Update kommt, das die Converterliste akualisiert?

                          das ist die einfachste Lösung. Updates am Zigbee Adapter kommen aktuell täglich (courtesy of @arteck) - du musst also nicht lange warten

                          Soll ich den gesamten Converter per npm aktualisieren?

                          Nein. Grund hab ich bereits weiter oben im Thead ausgeführt.

                          Oder (eine andere Idee) nur den einen Fingerprint in der moes.js nachtragen? Beim vergeich mit der Datei auf GIT habe ich gesehen, dass nur dieser zusätzlich hinzugegeben wurde und ich könnte mir denken, dass der Rest so generisch aufgebaut ist, dass es reicht.

                          Das ist die schnelle Lösung, die so lange funktioniert bis du den Adapter aktualisierst.

                          A.

                          D 1 Reply Last reply Reply Quote 1
                          • Asgothian
                            Asgothian Developer @Guest last edited by Asgothian

                            @brainbug sagte in ZigBee neue Version 1.6.x:

                            Sorry das hab ich FASLCH verstanden!!! Ich dachte der Issue soll zum Adapter. Und nochmals, ICH HABE ES FALSCH VERSTANDEN....
                            Da ich die Anzeige nicht brauche werde ich dort auch kein Issue erstellen.

                            Immer ruhig mit den jungen Pferden. Hier ist niemand über die Frage und/oder den Issue ungehalten.
                            Generell ist es korrekt einen Issue am Adapter zu erstellen wenn der Adapter sich nicht so verhält wie gedacht. In einigen Fällen werden wir das dann selber weiter verfolgen und entsprechende Issues anlegen. In diesem Fall (sehr breit im Forum und mit Issues im Adapter bereits diskutiert) tun wir das nicht.

                            Daher die deutliche Aussage von @arteck was da wie passiert / passieren muss wenn das Verhalten für Dich wichtig ist.

                            A.

                            tldr: Alles gut. Keine Aufregung bitte. 🙂

                            ? 1 Reply Last reply Reply Quote 1
                            • ?
                              A Former User @Asgothian last edited by A Former User

                              @asgothian

                              Immer ruhig mit den jungen Pferden.
                              So jung ist es nicht mehr 😉

                              tldr: Alles gut. Keine Aufregung bitte. 🙂
                              Aber sicher keine Aufregung.
                              Wie gesagt ich bin erst seid 1.16.18 mit Zigbee dabei und in der Regel lagen meine Probleme beim Fehler 60 / layer 8. Somit danke für das Engagement um den Adapter auf dem neusten Stand zu halten.

                              1 Reply Last reply Reply Quote 0
                              • P
                                pk68 @arteck last edited by

                                @arteck sagte in ZigBee neue Version 1.6.x:

                                @pk68 hier it die Berechung .. die wir auch so 1 zu 1 übernehmen

                                Danke für den Link. Kann es sein, dass bei manchen Geräte z.B. Ikea Trädfri Fernbedienungen der Batteriestand nicht berechnet wird, sondern vom Gerät selbst gesendet wird. Konnte in dem
                                zigbee-herdsman-converters Quellcode dazu nichts finden.

                                1 Reply Last reply Reply Quote 0
                                • P
                                  pk68 @Guest last edited by

                                  @brainbug sagte in ZigBee neue Version 1.6.x:

                                  @arteck
                                  Ich bin erst mit 1.6.18 dazugekommen aber bei 2.975V sollten es dann keine 99% sein:
                                  7886bbcc-a77c-4f46-92d5-526320cea9f1-image.png

                                  Der Screenshot ist wohl von einem Xiaomi/Aquara Türsensor. Bei dem ist es so, das bei Spannungen bis 3V 100% angezeigt wird. Bei einer Batteriespannung von 2,85 bis 3,0V wird dann gerechnet. Die Rechnung geht dann so:
                                  norm = (voltage[mV] - 2850) / (3000 - 2850)
                                  percentage = norm * (1 - log(norm))
                                  Bei 2,975V sollten es 90% Batteriekapazität sein.

                                  arteck ? 2 Replies Last reply Reply Quote 0
                                  • arteck
                                    arteck Developer Most Active @pk68 last edited by arteck

                                    @pk68 sagte in ZigBee neue Version 1.6.x:

                                    Bei dem ist es so, das bei Spannungen bis 3V 100% angezeigt wird. Bei einer Batteriespannung von 2,85 bis 3,0V wird dann gerechnet.

                                    und das weisst du weil ?? hast du die Hersteller vorgabe Werte von dem Gerät ?

                                    Ikea Trädfri Fernbedienungen

                                    welche genau meinst du.. es gibt mehrere davon

                                    P 2 Replies Last reply Reply Quote 0
                                    • ?
                                      A Former User @pk68 last edited by A Former User

                                      @pk68
                                      Ich prüfe den Zeitstempel der jeweiligen Geräte alle 3 Stunden was für mich mehr Sinn macht als eine Battery Anzeige. Für mich ist die Anzeige der Battery nur Info und keine Auswertung.

                                      1 Reply Last reply Reply Quote 0
                                      • P
                                        pk68 @arteck last edited by pk68

                                        @arteck sagte in ZigBee neue Version 1.6.x:

                                        und das weisst du weil ?? hast du die Hersteller vorgabe Werte von dem Gerät ?

                                        Weil ich Deinem Link gefolgt bin, von Git den Quellcode heruntergeladen habe und mit meinem Halbwissen in dem Code rumgeschnarcht habe.
                                        Der Türsensor hat die Typbezeichnung MCCGQ11LM. In der devices\xiaomi.js steht zu dem Gerät

                                        meta: {battery: {voltageToPercentage: '3V_2850_3000_log'}},
                                        

                                        Das heißt die Funktion "batteryVoltageToPercentage" wird mit der Option "3V_2850_3000_log" aufgerufen.

                                            } else if (option === '3V_2850_3000_log') {
                                                percentage = toPercentage(voltage, 2850, 3000, true);
                                        

                                        Und die Funktion "toPercentage" sieht so aus:

                                        function toPercentage(value, min, max, log=false) {
                                            if (value > max) {
                                                value = max;
                                            } else if (value < min) {
                                                value = min;
                                            }
                                        
                                            const normalised = (value - min) / (max - min);
                                            let percentage;
                                            if (log == true) {
                                                percentage = normalised === 0 ? 0 : normalised * (1 - Math.log( normalised ));
                                            } else {
                                                percentage = normalised;
                                            }
                                            return Math.round(percentage * 100);
                                        }
                                        
                                        arteck 1 Reply Last reply Reply Quote 0
                                        • P
                                          pk68 @arteck last edited by

                                          @arteck sagte in ZigBee neue Version 1.6.x:

                                          Ikea Trädfri Fernbedienungen

                                          welche genau meinst du.. es gibt mehrere davon

                                          Ich meine diese hier.

                                          1 Reply Last reply Reply Quote 0
                                          • arteck
                                            arteck Developer Most Active @pk68 last edited by arteck

                                            @pk68 kannst ja alles schöb durchrechnen lassen

                                            direkt in der ersten zeile ist die funktion mit den werten die aufgerufen werden ...

                                            also 2975 dein wert mit den daten die du gefunden hast also 3V_2850_3000_log
                                            als ergebniss siehst du im LOG 99 %

                                            20:47:09.324	info	javascript.1 (1576) script.js.common.Skript1: ---------------------> batterie test 99%
                                            

                                            den script kannst du unter javascript einfügen und selber testen..

                                            const per = batteryVoltageToPercentage(2975,'3V_2850_3000_log');    // hier wird die funktion aufgerufen 
                                            
                                            console.log('--------------------->   batterie test ' + per);
                                            
                                            
                                            function batteryVoltageToPercentage(voltage, option) {
                                                let percentage = null;
                                                if (option === '3V_2100') {
                                                    if (voltage < 2100) {
                                                        percentage = 0;
                                                    } else if (voltage < 2440) {
                                                        percentage = 6 - ((2440 - voltage) * 6) / 340;
                                                    } else if (voltage < 2740) {
                                                        percentage = 18 - ((2740 - voltage) * 12) / 300;
                                                    } else if (voltage < 2900) {
                                                        percentage = 42 - ((2900 - voltage) * 24) / 160;
                                                    } else if (voltage < 3000) {
                                                        percentage = 100 - ((3000 - voltage) * 58) / 100;
                                                    } else if (voltage >= 3000) {
                                                        percentage = 100;
                                                    }
                                                    percentage = Math.round(percentage);
                                                } else if (option === '3V_2500') {
                                                    percentage = toPercentage(voltage, 2500, 3000);
                                                } else if (option === '3V_2500_3200') {
                                                    percentage = toPercentage(voltage, 2500, 3200);
                                                } else if (option === '3V_1500_2800') {
                                                    percentage = 235 - 370000 / (voltage + 1);
                                                    if (percentage > 100) {
                                                        percentage = 100;
                                                    } else if (percentage < 0) {
                                                        percentage = 0;
                                                    }
                                                    percentage = Math.round(percentage);
                                                } else if (option === '3V_2850_3200') {
                                                    percentage = toPercentage(voltage, 2850, 3200);
                                                } else if (option === '3V_2850_3000_log') {
                                                    percentage = toPercentage(voltage, 2850, 3000, true);
                                                } else if (option === '4LR6AA1_5v') {
                                                    percentage = toPercentage(voltage, 3000, 4200);
                                                } 
                                            
                                                return percentage;
                                            }
                                            function  toPercentage(value, min, max, log=false) {
                                                if (value > max) {
                                                    value = max;
                                                } else if (value < min) {
                                                    value = min;
                                                }
                                            
                                                const normalised = (value - min) / (max - min);
                                                let percentage;
                                                if (log == true) {
                                                    percentage = normalised === 0 ? 0 : normalised * (1 - Math.log( normalised ));
                                                } else {
                                                    percentage = normalised;
                                                }
                                                return Math.round(percentage * 100);
                                            }
                                            
                                            P 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            600
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            61
                                            509
                                            77664
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo