Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Withings Werte korrekt umrechnen

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    Withings Werte korrekt umrechnen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Damrak2022
      Damrak2022 last edited by

      Hallo zusammen,
      kann mir jemand verraten wie ich die Werte vom Withings Adapter korrekt umrechne um verwertbare Minuten zu erhalten.

      Mir geht es um folgende Werte welche ich hier mal mit den aktuell bei mir angezeigten Wert benenne:

      durationsleep - 540
      deepsleepduration - 4740
      lightsleepduration - 5460
      sleep_latency - 540
      snoring - 4200
      total_timeinbed - 10740

      Dann noch eine Frage zu den "steps"?
      Warum steht hier heute schon ein derart hoher Wert drin. Dieser Wert passt auch nicht zu gestern. Denn laut Healthate App bin ich gestern 1056 Schritte gegangen.
      Bildschirmfoto 2022-04-30 um 03.17.03.png

      O 1 Reply Last reply Reply Quote 0
      • O
        Oli @Damrak2022 last edited by Oli

        @damrak2022

        im Withings Adapter sind alle Zeitwerte in Sekunden angegeben, also musst du deine Werte durch 60 teilen.

        Mit dieser Formel passen bei mir die Werte aus dem Adapter, mit den Werten auf meinem Android Handy überein.

        Ich glaube deinen ganzen Probleme haben weniger mit dem Adapter zu tun, sonst hätten andere die gleichen Probleme.

        Außerdem sind bei mir die aktuellen Schlaf und Aktivitätsdaten immer im letzten Ordner des Adapters.

        Welche Version hast du vom Adapter?
        Welche Einstellungen hast du im Adapter gemacht?

        Eventuell mal alle Ordner löschen und neu anlegen lassen, dass könnte auch helfen.

        Damrak2022 2 Replies Last reply Reply Quote 0
        • Damrak2022
          Damrak2022 @Oli last edited by Damrak2022

          @oli Guten Morgen, das sind die Einstellungen meines Adapters:

          Bildschirmfoto_2022-05-01_um_01_50_49.png

          Meine Adapter Version ist: 0.0.7

          Hier noch zwei Screenshots meiner Datenpunkte:
          Bildschirmfoto 2022-05-01 um 01.59.46.png
          Bildschirmfoto 2022-05-01 um 01.58.53.png

          Siehst Du irgendwas auffälliges?

          Nachdem ich mir jetzt meine einzelnen Datenpunkte nochmal genau angeschaut habe, ergeben sich noch Fragen:
          Wie hast Du das in Deiner Visualisierung mit der Aufzeichnung der Schlafapnoe umgesetzt? Da stehen bei mir bis zum 21.04. normale Werte drin und ab dann immer -1
          Bildschirmfoto 2022-05-01 um 02.46.14.png
          Bildschirmfoto 2022-05-01 um 02.46.28.png

          Ich habe meinen Verzeichnisbaum von Withings eben mal komplett gelöscht und wieder neu anlegen lassen.

          1 Reply Last reply Reply Quote 0
          • Damrak2022
            Damrak2022 @Oli last edited by

            @oli Ich muss noch einen weiteren Punkt erwähnen.

            Am 27.04.2022 habe ich ein Workout aufgezeichnet.
            Da werden mir n der Health App folgende Werte gezeigt:
            Schritte: 3825
            Aktive Minuten: 32
            Distanz: 3,4 km
            Verbrannte Kalorien: 159

            In den Verlaufsdaten steht folgendes:
            Schritte: 4441
            Activ: keine Daten vorhanden
            Distanz: keine Daten vorhanden
            Kalorien: 196,09

            Wie kommt dieser Unterschied zustande?
            Warum steht bei Activity und Distanz garnichts drin?

            Zum Vergleich mal die Daten vom 28.04.2022 wo ich kein Workout aufgezeichnet habe.
            In der Health App:
            Schritte: 1066
            Aktive Minuten: -
            Distanz: 955,8 m
            Verbrannte Kalorien: 48

            In den Verlaufsdaten steht folgendes:
            Schritte: Erst 4441 und dann 3311
            Activ: keine Daten vorhanden
            Distanz: keine Daten vorhanden
            Kalorien: Einmal 155,165 und dann 196,09

            Zur Verdeutlichung anbei zwei Screenshots:
            Bildschirmfoto 2022-05-01 um 06.46.57.png
            Bildschirmfoto 2022-05-01 um 06.50.51.png

            Ich frage mich wie ich so ein aussagekräftiges (korrektes) Diagramm erstellen kann.

            O 1 Reply Last reply Reply Quote 0
            • O
              Oli @Damrak2022 last edited by

              @damrak2022

              mit Workouts und Liniengrafiken habe ich mich noch nicht auseinandergesetzt, da kann ich dir im Moment leider nicht weiterhelfen.

              Was mich etwas stutzig macht, ist, dass bei mir die aktuellsten Werte bei Schlafen und zB. Schritte im letzten Ordner des Adapters zu finden sind und nicht wie bei dir im ersten. Hast du das schon mal kontrolliert?

              Damrak2022 2 Replies Last reply Reply Quote 0
              • Damrak2022
                Damrak2022 @Oli last edited by

                @oli Du scheinst recht zu haben. In dem Ordner activites31 sind die Werte von gestern, dem 01.05.drin. Ich war anscheinend so übermütig, das ich das Datum garnicht beachtet habe.
                Bei Sleep Summary sind die Werte im Ordner 58
                Gut, dann werde ich mal die Protokollierung auf die anderen, richtigen Ordner abändern.

                1 Reply Last reply Reply Quote 0
                • Damrak2022
                  Damrak2022 @Oli last edited by

                  @oli Was ist denn bei Dir der letzte Ordner? Ich habe vor ca. 2 Stunden das Logging im Ordner series 58 aktiviert. Jetzt schaue ich gerade in meine Datenpunkte und sehe es gibt auf eimal einen Ordner series 59, welcher vor zwei Stunden noch nicht da war.
                  Kannst Du mir das erklären?

                  O 1 Reply Last reply Reply Quote 0
                  • O
                    Oli @Damrak2022 last edited by

                    @damrak2022

                    der Adapter scheint bei jeder Änderung einen neuen Ordner anzulegen, deshalb wird das, was du machen möchtest, nicht ohne Skript oder Blocky funktionieren.

                    Du musst bei jeder Änderung per Skript den Wert im letzten Ordner suchen, diesen nach deinen Wünschen umrechnen und in eine eigenen Datenpunkt schreiben.
                    Diesen Datenpunkt musst du dann loggen.

                    Damrak2022 2 Replies Last reply Reply Quote 0
                    • Damrak2022
                      Damrak2022 @Oli last edited by Damrak2022

                      @oli Guten Morgen Oliver, nochmal die Frage: Was ist denn bei Dir mittlerweile der letzte Ordner?
                      Ich habe bis jetzt nur ein Blockly erstellt, welche mir die "totalsleeptime" in Minuten umrechnet, damit ich es in Grafana verwenden kann.
                      Bildschirmfoto 2022-05-03 um 07.05.22.png

                      Allerdings weiß ich überhaupt nicht wie ich das Blocky erstellen muss, sodass er immer auf die einzelnen Datenpunkte in dem letzten Ordner zugreift. Das bekomme ich nicht hin.
                      Könntest Du mir da bitte helfen, oder mal Dein Blockly posten, damit ich es nachbauen kann.

                      1 Reply Last reply Reply Quote 0
                      • Damrak2022
                        Damrak2022 @Oli last edited by

                        @oli sagte in Withings Werte korrekt umrechnen:

                        deshalb wird das, was du machen möchtest, nicht ohne Skript oder Blocky funktionieren

                        Du machst es doch anscheinend genauso, oder wie bekommst Du immer Deine aktuellen Werte in die Vis?

                        O ESP8266 2 Replies Last reply Reply Quote 0
                        • O
                          Oli @Damrak2022 last edited by Oli

                          @damrak2022

                          bei mir hat der letzte Ordner die Nummer 33.

                          Das mit deinem Blocky wird so nicht funktionieren, weil in dem Datenpunkt keine Zahl hinterlegt ist, sondern ein String.
                          Mit Blocky kenne ich mich leider nicht aus und meine Javaskript-Kennnisse lassen auch sehr zu wünschen übrig

                          Aber man wächst mit seinen Herausforderungen 🙂

                          Habe das bei mir so gelöst:

                          // Skript Einstellungen *************************************************************************************************************************************************
                          let idWithings = 'XXXXXXXX';                                                                        // Withing Benutzerkennung
                          let vorname = 'Oliver';                                                                             // Vorname 
                          let idDatenpunktPrefix = '0_userdata.0';                                                            // '0_userdata.0' or 'javascript.x'
                          let idDatenPunktStrukturPrefixS = `Gesundheit.${vorname}.Schlaf`;                                   // Struktur unter Prefix
                          
                          let devicesS = $(`[id=withings.0.${idWithings}.sleepSummary.series*.created]`);                     // Alle Datenpunkte von der Kategorie Schlafen und der Endung created in einem Array zusammenfassen
                          let ordnerS = devicesS.length;                                                                      // Zählt die Anzahl der Elemente im Array und gibt somit die Zahl des letzten Ordners aus
                          // **********************************************************************************************************************************************************************                                                                     
                          
                          // Schlafdauer
                          on({id: `withings.0.${idWithings}.sleepSummary.series${ordnerS}.data.total_sleep_time`}, function () {          // Wird ausgeführt, sobald sich im letzten Ordner was ändert
                              let zeit = getState(`withings.0.${idWithings}.sleepSummary.series${ordnerS}.data.total_sleep_time`).val;    // Wert aus Datenpunkt auslesen
                              let zeit_array = zeit.split(':');                                                                           // Wert zerlegen, weil keine Zahl
                              let stunden = zeit_array[0];                                                                                // Erster Abschnitt = Stunde   
                              let minuten = zeit_array[1];                                                                                // Zweiter Abschnitt = Minuten                                                         
                              let schlafdauer = parseFloat(stunden + '.' + minuten);  // Stunden und Minuten mit einem Punkt verbinden und als Zahl formatieren
                              mySetState(`${idDatenpunktPrefix}.${idDatenPunktStrukturPrefixS}.SchlafdauerGesamt`, schlafdauer, 'number', 'Schlafdauer Gesamt'); // Schreibt den Wert in einen Datenpunkt. Dieser muss für das Diagramm geloggt werden    
                          });
                          
                          /************************************************************************************************************************************************************************
                          * Funktionen
                          ************************************************************************************************************************************************************************/
                          function mySetState(id, val, type, name, write = true) {    // Erstellt Datenpunkt automatisch
                              if (existsState(id)) {
                                  setState(id, val, true);
                              } else {
                                  createState(id, {
                                      'name': name,
                                      'type': type,
                                      'read': true,
                                      'write': write
                                  }, function () {
                                      setState(id, val, write);
                                  });
                              }
                          }
                          
                          1 Reply Last reply Reply Quote 0
                          • ESP8266
                            ESP8266 @Damrak2022 last edited by ESP8266

                            @damrak2022 , ich gebe dir nochmal eine Hilfestellung.

                            694a1dfd-4a2b-421e-bbc9-f4792b36f7b4-grafik.png

                            Datenpunkte dafür:

                            dce5709a-5255-4a64-a19d-93b85f56f1ec-grafik.png

                            ...von Datenpunkt:

                            27041c88-842a-4d95-966a-16fd614413a5-grafik.png

                            Aus dem created wird das Datum und auch die Zeit entnommen.

                            Der Trigger von:

                            e590a2d7-8ca0-46b5-a5e0-e5774208135a-grafik.png

                            value ist das Gewicht und gleichzeitig Trigger.

                            So langsam sollte der Groschen mal fallen. 😊

                            Bei mir sind die aktuellen Daten immer in measuregrps01

                            f55d5cdf-7832-4800-b8a0-3781aa33a281-grafik.png

                            Die älteren werden nach hinten geschoben.
                            Ich habe nur 2 Gewichte für mich und meiner Frau....anderen Firlefanz nutze ich nicht.

                            Vis:

                            09318b3f-a456-47b7-8c37-fc88df7a89c7-grafik.png

                            Im ständigen Wechsel mit meinem Gewicht nach 15 Sek.

                            Damrak2022 1 Reply Last reply Reply Quote 0
                            • Damrak2022
                              Damrak2022 @ESP8266 last edited by

                              @esp8266 Sorry, der Groschen fällt nicht, denn es scheint so zu sein wie @oli schreibt, das der Adapter bei jeder Änderung einen neuen Ordner anlegt.
                              Wenn ich als die Influx bei den entsprechenden Datenpunkten aktiviere, stimmt es beim nächsten Mal schon nicht mehr, da die Daten dann in einem neuen Ordner bereitstehen.

                              Bezüglich dieser Aussage "anderen Firlefanz nutze ich nicht" kann ich Dir nur sagen das für mich das Gewicht ziemlich unwichtig ist, aber die genaue Erfassung meiner Schlafdaten schon, denn ich habe seit läanger Zeit massive Schlafstörungen. Somit sind die Prioritäten unterschiedlich, aber bestimmt kein Firlefanz.

                              ESP8266 1 Reply Last reply Reply Quote 0
                              • ESP8266
                                ESP8266 @Damrak2022 last edited by

                                @damrak2022 , oh wusste garnicht wie Empfindlich man sein kann. Sorry, Sorry.
                                Spaß lass nach.

                                Mach dein Ding. Bin raus hier.

                                btw. ...wenn ich massive Schlafstörungen habe, die ich auch habe, sehe ich zu das ich ein Schlaflabor aufsuche und mich nicht auf so ein ungenaues System stütze. Das ist alles nur relativ.

                                bye

                                Damrak2022 1 Reply Last reply Reply Quote 0
                                • Damrak2022
                                  Damrak2022 @ESP8266 last edited by

                                  @esp8266 Du verstehst etwas falsch, denn ich bin hier für jede Hilfe dankbar. Meinen ersten Termin im Schlaflabor hatte ich 2019 und der nächste Termin ist am 29.05.22
                                  Somit möchte ich Hue keinerlei Streitereinen haben.

                                  O 1 Reply Last reply Reply Quote 0
                                  • O
                                    Oli @Damrak2022 last edited by

                                    @damrak2022

                                    sorry, aber jetzt muss ich hier auch mal meinen Senf dazu geben.

                                    ioBroker ist eigentlich als SmartHome gedacht, alle anderen Adapter sind nice to have (Beispiel für den Withings Adapter wäre "stehe ich auf, soll sich die Kaffeemaschine einschalten").

                                    Wenn du eine Visualisierung realisieren möchtest, wirst du bei fast keinen verwendeten Adapter ohne Skripte oder Blocky auskommen. Dazu musst du dir nur ein paar hier vorgestellte VIS anschauen.

                                    Solltest du alles "out of the box" wollen, dann ist ioBroker wahrscheinlich nicht die richtige Software für dich.

                                    Hättest du dich von Beginn an mit dem Adapter und dessen Ordnerstruktur etwas intensiver auseinandergesetzt, dann wäre dir aufgefallen, dass die Schlafdaten immer im letzten Ordner eingepflegt werden und du hättest dir viele Fragen gespart.

                                    Natürlich wäre es cool, wenn es für die aktuellsten Daten einen festen Ordner gäbe, aber dann bitte die Anfrage an den Entwickler für alle Messungen äußern (Schlafdaten, Aktivitätsdaten, usw).

                                    Du hast genug Beispiele bekommen, wie du die verschieden Daten umrechnen und grafisch darstellen kannst, du musst sie nur umsetzen. Leider entsteht bei mir der Eindruck, dass du das nicht einmal versuchst.

                                    Also, etwas mehr Eigeninitiative und dir wird bei Fragen hier sicher weiter geholfen.

                                    @ESP8266
                                    Wenn du nur ein Gerät hast, dann bleibt die Struktur im Ordner "measures" übersichtlich, bei mehreren Geräten wird es etwas chaotisch.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate
                                    FAQ Cloud / IOT
                                    HowTo: Node.js-Update
                                    HowTo: Backup/Restore
                                    Downloads
                                    BLOG

                                    483
                                    Online

                                    32.1k
                                    Users

                                    80.7k
                                    Topics

                                    1.3m
                                    Posts

                                    3
                                    16
                                    928
                                    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