Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. MQTT Bluetooth BLE Anwesenheitserkennung mit ESP32

NEWS

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

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

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

MQTT Bluetooth BLE Anwesenheitserkennung mit ESP32

Geplant Angeheftet Gesperrt Verschoben Hardware
242 Beiträge 26 Kommentatoren 45.9k Aufrufe 32 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • W Wildbill

    @giuseppes Perfekt, läuft.
    Vielen vielen Dank. Da hätte ich noch eine Weile rumgemacht. Ich glaube auch, ich habe im Array eine Ebene übersehen gehabt. Aber nun kommen die Daten einwandfrei. :+1:

    Gruss, Jürgen

    G Offline
    G Offline
    GiuseppeS
    schrieb am zuletzt editiert von
    #44

    @wildbill
    Gern geschehen :v:

    W 1 Antwort Letzte Antwort
    0
    • G GiuseppeS

      @wildbill
      Gern geschehen :v:

      W Online
      W Online
      Wildbill
      schrieb am zuletzt editiert von
      #45

      @giuseppes Habe heute ein kleines Problem festgestellt. Wenn ich den MQTT-Adapter im iobroker neu starte, dann verbindet sich der ESP nicht mehr automatisch. Es kommt dann im Log

      Client [bleScan/oben_192_168_100_94] has invalid password(undefined) or username(undefined)
      

      Scheint, als würde er keine neue Verbindung aushandeln. Ich muss ihn dann einmal neu starten (aus- und wieder einstecken) und schon läuft er wieder. Bevor ich ihn jetzt umflashe und den Umweg über meinen Mosquitto nehmen lasse, bringt mir das überhaupt was? Der ist auch mit user/password versehen. Handelt der das anders?

      Gruss, Jürgen

      G 1 Antwort Letzte Antwort
      0
      • W Wildbill

        @giuseppes Habe heute ein kleines Problem festgestellt. Wenn ich den MQTT-Adapter im iobroker neu starte, dann verbindet sich der ESP nicht mehr automatisch. Es kommt dann im Log

        Client [bleScan/oben_192_168_100_94] has invalid password(undefined) or username(undefined)
        

        Scheint, als würde er keine neue Verbindung aushandeln. Ich muss ihn dann einmal neu starten (aus- und wieder einstecken) und schon läuft er wieder. Bevor ich ihn jetzt umflashe und den Umweg über meinen Mosquitto nehmen lasse, bringt mir das überhaupt was? Der ist auch mit user/password versehen. Handelt der das anders?

        Gruss, Jürgen

        G Offline
        G Offline
        GiuseppeS
        schrieb am zuletzt editiert von
        #46

        @wildbill
        Ich verwende im Heimnetz kein User/Pass über mqtt. Außerdem nutze ich auf meinem PC direkt Mosquitto, im ioBroker nur den mqtt-Client. Dass sich der esp32 nicht neu verbindet, ist mir bisher nicht aufgefallen. Es ist in den letzten Monaten 1 mal passiert, dass er nicht verbunden war. Grund war unklar. Jedenfalls hängt es nicht mit den PC Neustarts zusammen, die finden allein wegen Backup min. 1/Woche statt.

        W 1 Antwort Letzte Antwort
        0
        • G GiuseppeS

          @wildbill
          Ich verwende im Heimnetz kein User/Pass über mqtt. Außerdem nutze ich auf meinem PC direkt Mosquitto, im ioBroker nur den mqtt-Client. Dass sich der esp32 nicht neu verbindet, ist mir bisher nicht aufgefallen. Es ist in den letzten Monaten 1 mal passiert, dass er nicht verbunden war. Grund war unklar. Jedenfalls hängt es nicht mit den PC Neustarts zusammen, die finden allein wegen Backup min. 1/Woche statt.

          W Online
          W Online
          Wildbill
          schrieb am zuletzt editiert von Wildbill
          #47

          @giuseppes Ja, es wird mit user/password zusammenhängen. Komischerweise hat nur der ESP mit dem blescan das Problem. Ein paar andere, unter Anderem mit ESPEasy verbinden sofort wieder.
          Aber, ich frage mich gerade auch, warum ich im MQTT vom iobroker user/pass drin habe. Der ist nicht im Internet, da hängt nur der Mosquitto. Dann nehme ich es im iobroker einfach raus und sollte passen. Danke.

          Gruss, Jürgen

          EDIT: Das wars auch. User password raus und sofort haben sich alle Geräte inclusive dem ESP mit blescan wieder verbunden. Wenn nur alles so einfach wäre...

          1 Antwort Letzte Antwort
          1
          • M Offline
            M Offline
            Muchul
            schrieb am zuletzt editiert von
            #48

            Hallo zusammen, da ich nicht programmieren kann wollte ich am Wochenende mal versuchen dies hier umzusetzen:
            https://docs.openmqttgateway.com/
            Kennt das villeicht jemand hier?

            1 Antwort Letzte Antwort
            0
            • M Offline
              M Offline
              Muchul
              schrieb am zuletzt editiert von Muchul
              #49

              Habe jetzt mehrere ESP 32 mit OpenMQTTGateway bestückt und drei Mi Band 5 auf die withelist gesetzt.
              Funktioniert soweit erstmal gut.
              Habt ihr einen Tipp für mich, wie die Zuordnung zu den Zimmern gemacht wird.

              Außerdem muss ich an zwei der drei handys Bluetooth ausschalten, damit die Bänder überhaupt gesehen werden.
              Wie habt ihr das Problem gelöst?

              Habe testweise Nachdem die Bander von de ESP32 erkannt werden, Bluetooth wieder eingeschaltet und die Bänder werden weiterhin erkannt.

              Ach ja, falls es jemanden interessiert, es werden einzelne Datenpunkte angelegt:

              0dd2ceac-fdc5-441d-a6a6-1bf87fcd8617-image.png

              1 Antwort Letzte Antwort
              0
              • G GiuseppeS

                @wildbill

                
                // erstelle States für Zielwerte
                createState("VIS.bleScan.Pino.RawWemos");
                createState("VIS.bleScan.Pino.AvgWemos");
                
                // nachfolgend kann auch manuData statt MAC eingetragen werden
                // dann müsste unten der Vergleich auf manuData statt mac erfolgen
                // z.B. val[dev].manuData.includes(pino) statt val[dev].mac.includes(pino)
                let pino = "ed:4b:90:40:e7:ba";
                
                // für Berechnung gleitender Mittelwert
                let arrPinoWemos = [0,0,0,0,0,0];
                
                
                on({id: "mqtt-client.0.bleScan.bett_192_168_192_49", change: "ne"}, function (obj) {
                
                    // Array in val schreiben
                    let val = JSON.parse(obj.state.val);
                    
                    // Array durchlaufen
                    for ( let dev=0; dev < val.length; dev++){
                        //console.log(val[dev].mac + " | " + val[dev].rssi + " | " + val[dev].manuData);
                        
                        // Wenn MAC des betrachteten Array Elements oben definierte MAC enthält...
                        if( val[dev].mac.includes(pino) ) {
                            
                            // Schreibe RSSI Wert direkt in das RAW State (oben definiert)
                            setState("javascript." + instance + ".VIS.bleScan.Pino.RawWemos", val[dev].rssi);
                
                            // ab hier gleitender Mittelwert über letzte 6 Elemente (kann oben auch größer definiert werden)
                            arrPinoWemos.shift();
                            arrPinoWemos.push(val[dev].rssi);
                            let sum = arrPinoWemos.reduce((a, b) => a + b, 0);
                            let avg = (sum / arrPinoWemos.length) || 0;
                            setState("javascript." + instance + ".VIS.bleScan.Pino.AvgWemos", Math.round(avg));
                        }
                    };
                });
                

                Habe ergänzende Kommentare hinzugefügt. Sollte hoffentlich selbsterklärend sein. Wenn nicht, einfach nachfragen ;-)

                S Offline
                S Offline
                Spezialtrick
                schrieb am zuletzt editiert von
                #50

                @giuseppes said in MQTT Bluetooth BLE Anwesenheitserkennung mit ESP32:

                @wildbill

                
                // erstelle States für Zielwerte
                createState("VIS.bleScan.Pino.RawWemos");
                createState("VIS.bleScan.Pino.AvgWemos");
                
                // nachfolgend kann auch manuData statt MAC eingetragen werden
                // dann müsste unten der Vergleich auf manuData statt mac erfolgen
                // z.B. val[dev].manuData.includes(pino) statt val[dev].mac.includes(pino)
                let pino = "ed:4b:90:40:e7:ba";
                
                // für Berechnung gleitender Mittelwert
                let arrPinoWemos = [0,0,0,0,0,0];
                
                
                on({id: "mqtt-client.0.bleScan.bett_192_168_192_49", change: "ne"}, function (obj) {
                
                    // Array in val schreiben
                    let val = JSON.parse(obj.state.val);
                    
                    // Array durchlaufen
                    for ( let dev=0; dev < val.length; dev++){
                        //console.log(val[dev].mac + " | " + val[dev].rssi + " | " + val[dev].manuData);
                        
                        // Wenn MAC des betrachteten Array Elements oben definierte MAC enthält...
                        if( val[dev].mac.includes(pino) ) {
                            
                            // Schreibe RSSI Wert direkt in das RAW State (oben definiert)
                            setState("javascript." + instance + ".VIS.bleScan.Pino.RawWemos", val[dev].rssi);
                
                            // ab hier gleitender Mittelwert über letzte 6 Elemente (kann oben auch größer definiert werden)
                            arrPinoWemos.shift();
                            arrPinoWemos.push(val[dev].rssi);
                            let sum = arrPinoWemos.reduce((a, b) => a + b, 0);
                            let avg = (sum / arrPinoWemos.length) || 0;
                            setState("javascript." + instance + ".VIS.bleScan.Pino.AvgWemos", Math.round(avg));
                        }
                    };
                });
                

                Habe ergänzende Kommentare hinzugefügt. Sollte hoffentlich selbsterklärend sein. Wenn nicht, einfach nachfragen ;-)

                Ich versuche gerade die Anwesenheitserkennung nachzubauen. Leider bekomme ich das Script von GiuseppeS nicht ans Laufen... Die Datenpunkte, die das Script anlegt, bleiben leider leer. Wenn ich das Script debugge erhalten ich den Fehler "Cannot redeclare block-scoped variable".
                Habt ihr eine Idee, wo der Fehler liegt?!

                Bildschirmfoto 2021-11-23 um 21.02.25.png

                G 1 Antwort Letzte Antwort
                0
                • S Spezialtrick

                  @giuseppes said in MQTT Bluetooth BLE Anwesenheitserkennung mit ESP32:

                  @wildbill

                  
                  // erstelle States für Zielwerte
                  createState("VIS.bleScan.Pino.RawWemos");
                  createState("VIS.bleScan.Pino.AvgWemos");
                  
                  // nachfolgend kann auch manuData statt MAC eingetragen werden
                  // dann müsste unten der Vergleich auf manuData statt mac erfolgen
                  // z.B. val[dev].manuData.includes(pino) statt val[dev].mac.includes(pino)
                  let pino = "ed:4b:90:40:e7:ba";
                  
                  // für Berechnung gleitender Mittelwert
                  let arrPinoWemos = [0,0,0,0,0,0];
                  
                  
                  on({id: "mqtt-client.0.bleScan.bett_192_168_192_49", change: "ne"}, function (obj) {
                  
                      // Array in val schreiben
                      let val = JSON.parse(obj.state.val);
                      
                      // Array durchlaufen
                      for ( let dev=0; dev < val.length; dev++){
                          //console.log(val[dev].mac + " | " + val[dev].rssi + " | " + val[dev].manuData);
                          
                          // Wenn MAC des betrachteten Array Elements oben definierte MAC enthält...
                          if( val[dev].mac.includes(pino) ) {
                              
                              // Schreibe RSSI Wert direkt in das RAW State (oben definiert)
                              setState("javascript." + instance + ".VIS.bleScan.Pino.RawWemos", val[dev].rssi);
                  
                              // ab hier gleitender Mittelwert über letzte 6 Elemente (kann oben auch größer definiert werden)
                              arrPinoWemos.shift();
                              arrPinoWemos.push(val[dev].rssi);
                              let sum = arrPinoWemos.reduce((a, b) => a + b, 0);
                              let avg = (sum / arrPinoWemos.length) || 0;
                              setState("javascript." + instance + ".VIS.bleScan.Pino.AvgWemos", Math.round(avg));
                          }
                      };
                  });
                  

                  Habe ergänzende Kommentare hinzugefügt. Sollte hoffentlich selbsterklärend sein. Wenn nicht, einfach nachfragen ;-)

                  Ich versuche gerade die Anwesenheitserkennung nachzubauen. Leider bekomme ich das Script von GiuseppeS nicht ans Laufen... Die Datenpunkte, die das Script anlegt, bleiben leider leer. Wenn ich das Script debugge erhalten ich den Fehler "Cannot redeclare block-scoped variable".
                  Habt ihr eine Idee, wo der Fehler liegt?!

                  Bildschirmfoto 2021-11-23 um 21.02.25.png

                  G Offline
                  G Offline
                  GiuseppeS
                  schrieb am zuletzt editiert von
                  #51

                  @spezialtrick

                  Anscheinend wurde die Variable pino bereits vorher deklariert? Hast du das Skript aus Versehen doppelt eingefügt?

                  1 Antwort Letzte Antwort
                  0
                  • S Offline
                    S Offline
                    Spezialtrick
                    schrieb am zuletzt editiert von
                    #52

                    @giuseppes Danke für deine schnelle Rückmeldung.

                    Nein ich habe das Skript lediglich einmal eingefügt. Ich habe pino nun mal gegen Alf ausgetauscht und bekommen leider den gleichen Fehler. :anguished:

                    G 1 Antwort Letzte Antwort
                    0
                    • S Spezialtrick

                      @giuseppes Danke für deine schnelle Rückmeldung.

                      Nein ich habe das Skript lediglich einmal eingefügt. Ich habe pino nun mal gegen Alf ausgetauscht und bekommen leider den gleichen Fehler. :anguished:

                      G Offline
                      G Offline
                      GiuseppeS
                      schrieb am zuletzt editiert von
                      #53

                      @spezialtrick
                      Dann poste hier bitte dein komplettes Skript. Kann mir noch vorstellen dass woanders Fehler sind und das hier ein Folgefehler.

                      S 1 Antwort Letzte Antwort
                      0
                      • G GiuseppeS

                        @spezialtrick
                        Dann poste hier bitte dein komplettes Skript. Kann mir noch vorstellen dass woanders Fehler sind und das hier ein Folgefehler.

                        S Offline
                        S Offline
                        Spezialtrick
                        schrieb am zuletzt editiert von
                        #54

                        @giuseppes

                        So sieht mein Skript aus:

                        // erstelle States für Zielwerte
                         createState("Präsenzmelder.Miro.Raw");
                         createState("Präsenzmelder.Miro.Avg");
                          
                         // nachfolgend kann auch manuData statt MAC eingetragen werden
                         // dann müsste unten der Vergleich auf manuData statt mac erfolgen
                         // z.B. val[dev].manuData.includes(miro) statt val[dev].mac.includes(miro)
                         let miro = "7C:2F:80:C7:FB:1B";
                          
                         // für Berechnung gleitender Mittelwert
                         let arrMiroWemos = [0,0,0,0,0,0];
                          
                          
                         on({id: "mqtt.0.SmartHome.Küche.Präsenzmelder_192_168_188_75", change: "ne"}, function (obj) {
                          
                             // Array in val schreiben
                             let val = JSON.parse(obj.state.val);
                             
                             // Array durchlaufen
                             for ( let dev=0; dev < val.length; dev++){
                                 //console.log(val[dev].mac + " | " + val[dev].rssi + " | " + val[dev].manuData);
                                 
                                 // Wenn MAC des betrachteten Array Elements oben definierte MAC enthält...
                                 if( val[dev].mac.includes(miro) ) {
                                     
                                     // Schreibe RSSI Wert direkt in das RAW State (oben definiert)
                                     setState("javascript." + instance + ".Präsenzmelder.Miro.Raw", val[dev].rssi);
                          
                                     // ab hier gleitender Mittelwert über letzte 6 Elemente (kann oben auch größer definiert werden)
                                     arrMiroWemos.shift();
                                     arrMiroWemos.push(val[dev].rssi);
                                     let sum = arrMiroWemos.reduce((a, b) => a + b, 0);
                                     let avg = (sum / arrMiroWemos.length) || 0;
                                     setState("javascript." + instance + ".Präsenzmelder.Miro.Avg", Math.round(avg));
                                 }
                             };
                         });
                        
                        G 1 Antwort Letzte Antwort
                        0
                        • S Spezialtrick

                          @giuseppes

                          So sieht mein Skript aus:

                          // erstelle States für Zielwerte
                           createState("Präsenzmelder.Miro.Raw");
                           createState("Präsenzmelder.Miro.Avg");
                            
                           // nachfolgend kann auch manuData statt MAC eingetragen werden
                           // dann müsste unten der Vergleich auf manuData statt mac erfolgen
                           // z.B. val[dev].manuData.includes(miro) statt val[dev].mac.includes(miro)
                           let miro = "7C:2F:80:C7:FB:1B";
                            
                           // für Berechnung gleitender Mittelwert
                           let arrMiroWemos = [0,0,0,0,0,0];
                            
                            
                           on({id: "mqtt.0.SmartHome.Küche.Präsenzmelder_192_168_188_75", change: "ne"}, function (obj) {
                            
                               // Array in val schreiben
                               let val = JSON.parse(obj.state.val);
                               
                               // Array durchlaufen
                               for ( let dev=0; dev < val.length; dev++){
                                   //console.log(val[dev].mac + " | " + val[dev].rssi + " | " + val[dev].manuData);
                                   
                                   // Wenn MAC des betrachteten Array Elements oben definierte MAC enthält...
                                   if( val[dev].mac.includes(miro) ) {
                                       
                                       // Schreibe RSSI Wert direkt in das RAW State (oben definiert)
                                       setState("javascript." + instance + ".Präsenzmelder.Miro.Raw", val[dev].rssi);
                            
                                       // ab hier gleitender Mittelwert über letzte 6 Elemente (kann oben auch größer definiert werden)
                                       arrMiroWemos.shift();
                                       arrMiroWemos.push(val[dev].rssi);
                                       let sum = arrMiroWemos.reduce((a, b) => a + b, 0);
                                       let avg = (sum / arrMiroWemos.length) || 0;
                                       setState("javascript." + instance + ".Präsenzmelder.Miro.Avg", Math.round(avg));
                                   }
                               };
                           });
                          
                          G Offline
                          G Offline
                          GiuseppeS
                          schrieb am zuletzt editiert von
                          #55

                          @spezialtrick
                          Ich kann mir die Fehler nicht erklären. Allerdings würde ich immer davon abraten, deutsche Umlaute in Programm Codes zu verwenden. Zwar ist es hier ein "String". Aber ioBroker muss später damit klarkommen und entsprechende States anlegen. Habe gerade explizit auf fehlerhafte Semikolon o.ä. geachtet, konnte aber nichts feststellen.

                          Dieses WE wollte ich in ioBroker noch was machen. Werde dein Skript mal übernehmen und testen.

                          S 1 Antwort Letzte Antwort
                          0
                          • G GiuseppeS

                            @spezialtrick
                            Ich kann mir die Fehler nicht erklären. Allerdings würde ich immer davon abraten, deutsche Umlaute in Programm Codes zu verwenden. Zwar ist es hier ein "String". Aber ioBroker muss später damit klarkommen und entsprechende States anlegen. Habe gerade explizit auf fehlerhafte Semikolon o.ä. geachtet, konnte aber nichts feststellen.

                            Dieses WE wollte ich in ioBroker noch was machen. Werde dein Skript mal übernehmen und testen.

                            S Offline
                            S Offline
                            Spezialtrick
                            schrieb am zuletzt editiert von
                            #56

                            @giuseppes

                            Ich teste es heute Abend nochmals ohne Umlaute und gebe dir eine Rückmeldung. Kann es sein, dass ich an irgendeiner Stelle im IOBroker eine fehlende Konfiguration habe? Ich bin erst kürzlich von FHEM umgestiegen, sodass mein IOBroker noch sehr jungfräulich ist.

                            G 1 Antwort Letzte Antwort
                            0
                            • S Spezialtrick

                              @giuseppes

                              Ich teste es heute Abend nochmals ohne Umlaute und gebe dir eine Rückmeldung. Kann es sein, dass ich an irgendeiner Stelle im IOBroker eine fehlende Konfiguration habe? Ich bin erst kürzlich von FHEM umgestiegen, sodass mein IOBroker noch sehr jungfräulich ist.

                              G Offline
                              G Offline
                              GiuseppeS
                              schrieb am zuletzt editiert von GiuseppeS
                              #57

                              @spezialtrick
                              Spezial-Konfig hatte ich mir auch überlegt. Zumindest in der Konfiguration der Javascript Instanz habe ich nichts besonderes gesehen, dass hier benötigt wird. Kannst du aber im Nachgang auch schauen.
                              In der Konfiguration kannst du Haken setzen, um bestimmte Funktionen zu erlauben.

                              S 1 Antwort Letzte Antwort
                              0
                              • G GiuseppeS

                                @spezialtrick
                                Spezial-Konfig hatte ich mir auch überlegt. Zumindest in der Konfiguration der Javascript Instanz habe ich nichts besonderes gesehen, dass hier benötigt wird. Kannst du aber im Nachgang auch schauen.
                                In der Konfiguration kannst du Haken setzen, um bestimmte Funktionen zu erlauben.

                                S Offline
                                S Offline
                                Spezialtrick
                                schrieb am zuletzt editiert von
                                #58

                                @giuseppes

                                Welche Haken hast du dort gesetzt?

                                G 2 Antworten Letzte Antwort
                                0
                                • S Spezialtrick

                                  @giuseppes

                                  Welche Haken hast du dort gesetzt?

                                  G Offline
                                  G Offline
                                  GiuseppeS
                                  schrieb am zuletzt editiert von
                                  #59

                                  @spezialtrick

                                  Screenshot_20211127-104841.jpg

                                  1 Antwort Letzte Antwort
                                  0
                                  • S Spezialtrick

                                    @giuseppes

                                    Welche Haken hast du dort gesetzt?

                                    G Offline
                                    G Offline
                                    GiuseppeS
                                    schrieb am zuletzt editiert von
                                    #60

                                    @spezialtrick
                                    Habe eben dein Skript übernommen, es zeigt mir keine Fehler an und lässt sich einwandfrei starten.

                                    Da du dein iobroker erst seit kurzem aufgesetzt hast, bestehen evtl andere gröbere Probleme im Hintergrund?
                                    Funktionieren andere Skripts?

                                    S 1 Antwort Letzte Antwort
                                    0
                                    • G GiuseppeS

                                      @spezialtrick
                                      Habe eben dein Skript übernommen, es zeigt mir keine Fehler an und lässt sich einwandfrei starten.

                                      Da du dein iobroker erst seit kurzem aufgesetzt hast, bestehen evtl andere gröbere Probleme im Hintergrund?
                                      Funktionieren andere Skripts?

                                      S Offline
                                      S Offline
                                      Spezialtrick
                                      schrieb am zuletzt editiert von
                                      #61

                                      @giuseppes

                                      Das Skript lässt sich bei mir auch fehlerfrei starten, allerdings bleiben die Datenpunkt, die das Skript erzeugt immer leer.

                                      Den Fehler sehe ich auch nur, wenn ich das Skript Debugger. Vllt gibt es den Fehler da auch bei dir?

                                      Meines Erachtens läuft im IOBroker alles fehlerfrei. Andere JavaScripts laufen auch problemlos. Ich nutze z.B. dieses hier:

                                      https://github.com/Baenker/Servicemeldungen-Homematic/blob/master/Servicemeldungen.js

                                      G 1 Antwort Letzte Antwort
                                      0
                                      • S Spezialtrick

                                        @giuseppes

                                        Das Skript lässt sich bei mir auch fehlerfrei starten, allerdings bleiben die Datenpunkt, die das Skript erzeugt immer leer.

                                        Den Fehler sehe ich auch nur, wenn ich das Skript Debugger. Vllt gibt es den Fehler da auch bei dir?

                                        Meines Erachtens läuft im IOBroker alles fehlerfrei. Andere JavaScripts laufen auch problemlos. Ich nutze z.B. dieses hier:

                                        https://github.com/Baenker/Servicemeldungen-Homematic/blob/master/Servicemeldungen.js

                                        G Offline
                                        G Offline
                                        GiuseppeS
                                        schrieb am zuletzt editiert von
                                        #62

                                        @spezialtrick
                                        Kommt überhaupt etwas über mqtt rein? Es wird auf "ne" getriggert. Wenn du über mqtt identische Werte bekommst, müsstest du "ne" zu "any" ändern.

                                        Das Skript sollte jedenfalls fehlerfrei funktionieren. Evtl stimmt die MAC nicht? Wenn über Smartphones ble simuliert werden (gibt Apps dafür), dann sind die MAC nicht konstant.

                                        S 1 Antwort Letzte Antwort
                                        0
                                        • G GiuseppeS

                                          @spezialtrick
                                          Kommt überhaupt etwas über mqtt rein? Es wird auf "ne" getriggert. Wenn du über mqtt identische Werte bekommst, müsstest du "ne" zu "any" ändern.

                                          Das Skript sollte jedenfalls fehlerfrei funktionieren. Evtl stimmt die MAC nicht? Wenn über Smartphones ble simuliert werden (gibt Apps dafür), dann sind die MAC nicht konstant.

                                          S Offline
                                          S Offline
                                          Spezialtrick
                                          schrieb am zuletzt editiert von
                                          #63

                                          @giuseppes

                                          Ich habe den Fehler gefunden und es mir wirklich unangenehm.... :disappointed_relieved:

                                          Ich habe meine MAC-Adresse aus FHEM kopiert und ins Javascript eingefügt. In FHEM werden alle Buchstaben der MAC-Adresse als Großbuchstaben dargestellt. In Mosquitto kommen die MAC-Adressen über dein Arduino-Sketch aber als Kleinbuchstaben rein. Entsprechend konnte das Javascript im IOBroker auch nichts finden. :disappointed_relieved: Vielen herzlichen Dank für deine Hilfe!

                                          Wie arbeitest du mit den Zahlen aus den beiden Datenpunkten weiter?

                                          G 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          819

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe