Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. MQTT Bluetooth BLE Anwesenheitserkennung mit ESP32

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    MQTT Bluetooth BLE Anwesenheitserkennung mit ESP32

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

      @GiuseppeS

      Vielen Dank! Das schaue ich mir an, klingt ja nach einer Lösung 🙂

      Viele Grüße,

      Flo

      1 Reply Last reply Reply Quote 0
      • K
        Kopterframe @GiuseppeS last edited by

        @GiuseppeS
        Vielen Dank für dein Script
        Ich benötige mal Hilfe, das Script läuft und erkennt auch die Mac Adressen.
        Bekomme keine Verbindung zum MQTT Adapter.
        gibt es da irgend ein HowTo?
        Danke

        G 1 Reply Last reply Reply Quote 0
        • G
          GiuseppeS @Kopterframe last edited by

          @Kopterframe

          Ich verwende mosquitto als Broker und in ioBroker nur den mqtt Client. Damit habe ich keine Probleme. Über den "Umweg" mit mosquitto kannst du auch den Weg vom esp32 zum Server besser prüfen. In meinem Script hatte ich übrigens das login für mqtt deaktiviert, d.h. es können hier kein User + Passwort angegeben werden.
          Grundsätzlich solltest du IP und Port checken

          K 1 Reply Last reply Reply Quote 0
          • K
            Kopterframe @GiuseppeS last edited by Kopterframe

            @GiuseppeS
            Ip und Port passen, habe ich mehfach geprüft. Hatte auch schon das original von
            http://esp32-server.de/mqtt-ble/ mit meinen Wlan Zugangsdaten versucht.
            beide Fils laufen, das sehe ich am Terminal. Es werden auch alle MAC ausgegeben.
            Auf welchem Systhem hast du IoBroker laufen?
            Ich am NAS Synology in Docker.
            kann mir nur vorstellen, dass es mit dem Docker zusammenhängt.

            G 1 Reply Last reply Reply Quote 0
            • G
              GiuseppeS @Kopterframe last edited by GiuseppeS

              @Kopterframe
              Nutze ioBroker im Docker Container auf einem Ubuntu Host (PC).
              Du musst zunächst herausfinden wo es überhaupt scheitert. Steht die esp32 Verbindung zum mqtt Broker? Welchen Broker nutzt Du überhaupt, den in ioBroker?
              Hast Du im ioBroker mqtt Client die subscribtion drin? So schaut es bei mir aus:

              Screenshot_20201128-110958~2.jpg

              Der Eintrag bleScan/# ist hierbei relevant.

              K 1 Reply Last reply Reply Quote 0
              • K
                Kopterframe @GiuseppeS last edited by

                @GiuseppeS
                Muss ich den MQTT und den Clint installieren???
                Habe nur den MQTT Adapter
                ![alt text](d5b35535-75ee-4609-90fc-929a033c87b9-grafik.png image url)

                G 1 Reply Last reply Reply Quote 0
                • G
                  GiuseppeS @Kopterframe last edited by

                  @Kopterframe
                  Wenn du den mqtt Adapter verwendest, bringt der den mqtt Broker + Client mit. Dann musst du dort alles einstellen.

                  K 2 Replies Last reply Reply Quote 0
                  • K
                    Kopterframe @GiuseppeS last edited by

                    @GiuseppeS
                    egal, was ich einstelle. Bekommen keine Verbindung??

                    1 Reply Last reply Reply Quote 0
                    • K
                      Kopterframe @GiuseppeS last edited by Kopterframe

                      @GiuseppeS
                      ich Esel, habe doch auf dem ESP die die eigene IP eingetragen.
                      Geändert und schon geht es.
                      Sorry, ich bin relativ neu in der ganzen Materie IOBroker.
                      Ist ein bischen viel auf einmal.
                      Vielleicht kannst du mir noch sagen wie ich nun einen Datenpungt für die Mac Adressen anlege, zum auswerten.
                      Vielen Dank

                      1 Reply Last reply Reply Quote 1
                      • screendj
                        screendj @GiuseppeS last edited by

                        @giuseppes
                        Beim kompilieren bekomme ich folgende Meldung class PubSubClienthas no member named setServer
                        Ich kenne mich damit garnicht so gut. Was genau muß ich de ändern ?

                        Gruß
                        Lexi

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          GiuseppeS @screendj last edited by

                          @screendj
                          Hi, sorry, aber ich bin auch alles andere als ein Profi. Viel try&error zzgl Google. Ich könnte auch nur Google bemühen.

                          screendj 1 Reply Last reply Reply Quote 0
                          • screendj
                            screendj @GiuseppeS last edited by

                            @giuseppes
                            Danke....
                            Bin langsam am verzweifeln. Bekomme es nicht ans laufen....

                            1 Reply Last reply Reply Quote 0
                            • W
                              Wildbill last edited by

                              Ich nöchte gerne ein älteres Handy (für Senioren) auf An- und Abwesenheit prüfen. Dieses unterstützt aber leider kein BLD sondern nur Bluetooth classic. Ist jemand so fit und kann mir sagen, wie das Script umzuschreiben ist, um anstatt BLE eben classic-Geräte zu scannen?
                              Es gibt diverse Beispiele für BT classic, aber meist geht es da um Zugriff via Bluetooth console. Einen Scanner, oder gar die Anbindung via MQTT finde ich bislang nirgends. Kann doch nicht sein, dass ich der erste bin, der so etwas sucht?!

                              Gruss, Jürgen

                              G 1 Reply Last reply Reply Quote 0
                              • G
                                GiuseppeS @Wildbill last edited by

                                @wildbill
                                Im Zusammenhang mit IoBroker kannst du den Radar Adapter verwenden.

                                W 1 Reply Last reply Reply Quote 0
                                • W
                                  Wildbill @GiuseppeS last edited by

                                  @giuseppes Den kenne ich, der bringt mir aber nichts, da dort, wo ich gerne die Anwesenheit per BT classic prüfen würde, keiner meiner Rechner steht und mir selbst ein Raspi nur für diese eine Aufgabe etwas zu viel Overkill wäre. Zumal ich da jetzt auch extra einen kaufen müsste oder zumindest einen BT-Dongle für einen alten Raspi 1, der noch rumliegt.
                                  Via ESP32 wäre halt schön schlank und ich hätte alles da, bis auf den passenden Sketch...

                                  Gruss, Jürgen

                                  G 1 Reply Last reply Reply Quote 0
                                  • G
                                    GiuseppeS @Wildbill last edited by

                                    @wildbill
                                    Habe gerade kurz google bemüht aber bzgl. BTClassic auch kaum was gefunden, höchstens Hinweise, dass der esp32 das könnte...
                                    Der einfache Weg für dich könnte sein, auf dem Android die App "Beacon Simulator" zu installieren. Das würde mit dem hier gezeigten Sketch funktionieren.
                                    Aber nicht jedes Smartphone kann das. Selbst bei aktuellen Modellen gibt es Unterschiede. Mein Huawei P30 Pro sendete einwandfrei, mein aktuelles Smartphone, ein OnePlus 8 Pro, weil einfach nichts senden...

                                    Ich benutze in Verbindung mit dem esp32 die xiaomi mi band 5.

                                    W 1 Reply Last reply Reply Quote 0
                                    • W
                                      Wildbill @GiuseppeS last edited by

                                      @giuseppes Es ist leider ein wirkliches Seniorenhandy. Kein Android, kein Apple, kein Internet. Sondern ein einfaches Klapphandy von Doro. Klappe auf, Anruf annehmen, Klappe zu auflegen, dazu drei Kurzwahltasten. Da ist leider nix mit Apps installieren. Aber BT classic hat es drin.
                                      Dass mit dem ESP32 in Verbindung mit diesem Handy BT Classic geht, habe ich bereits getestet. Es gibt ja durchaus Sketche um sich manuell vom Handy aus per BT classic mit dem ESP zu verbinden. Das hat geklappt. Und hätte ich auf dem Handy Apps installierne können, dann hätte ich Eingaben auch sicher auf der seriellen Console gesehen. Also die Hardware kann alles. Nur sind alle BT-Scanner die ich gefunden habe immer nur für BLE. Für BT classic gibt es immer nur Beispiele, um sich per Terminal-App zu verbinden. Warum auch immer...
                                      Meiner Mutter mit >70 Jahren möchte ich deshalb aber jetzt auch nicht mehr Android oder so näherbringen. Die kommt mit dem Handy gerade so klar, alles andere wäre 100% nix.

                                      Gruss, Jürgen

                                      W 1 Reply Last reply Reply Quote 0
                                      • W
                                        Wildbill @Wildbill last edited by

                                        @GiuseppeS Ich habe nun doch eine kleine BLE beacon für den Schlüsselbund gekauft. Der ist auch immer am Mann (an der Frau) und alles funktioniert.

                                        Gruß, Jürgen

                                        1 Reply Last reply Reply Quote 1
                                        • W
                                          Wildbill last edited by Wildbill

                                          @GiuseppeS Muss nochmal blöd fragen, weil ich grad irgendwie auf dem Schlauch stehe. Zum testen hatte ich mir die MQTT-Messages an einen Mosquitto-Testserver geschickt, den ich mit FHEM abfrage. Dort bekam ich für jedes gefundene Gerät einen eigenen Datenpunkt und konnte direkt darauf reagieren.
                                          Nun wollte ich mir den Umweg über FHEM sparen und die Daten direkt an den MQTT-Broker in iobroker schicken, der sowieso läuft. Die Daten kommen auch an, aber leider habe ich nur einen Datenpunkt, der alle enthält:

                                          [{"manuData": "8f3a109e405c6fe27c23448103fa010ff3f11000","mac": "44:23:7c:e2:6f:5e","rssi": -86}, {"manuData": "8f3a1055a08b33dfce55c8103f545ff3f11000","mac": "5c:e5:0c:df:33:8d","rssi": -82}, {"manuData": "8f3a109e40d279bc190648103fd46ff3f11000","mac": "64:90:c1:9b:27:0f","rssi": -83}, {"manuData": "8f3a109e40522da2c190648103fa47ff3f11000","mac": "64:90:c1:a2:2d:54","rssi": -73}, {"manuData": "00789ce77308b0a2c190648103f748ff3f11000","mac": "78:9c:e7:07:30:8b","rssi": -80}, {"manuData": "4c0215fda5693a4e24fb1afcfc6eb7647825275165c1","mac": "dc:0d:7f:05:26:47","rssi": -83}, {"manuData": "0000e77308b0a2c190648103ffcaff3f11000","mac": "e8:f2:e2:cd:2f:05","rssi": -68}]
                                          

                                          Wie kann ich denn da auf ein ebstimmtes Gerät triggern? Also, wenn es Daten schickt, setze einen Datenpunkt "Anwesenheit" auf true, wenn keine Daten kommen, setzte ihn auf false. Ich habe auch schon mehrere Scripte hier im Forum getestet, die JSON-Strings in einzelne Datenpunkte aufteilen, aber irgendwie bin ich zu doof. Muss glaub doch noch Javascript lernen... 😖

                                          Gruss, Jürgen

                                          G 1 Reply Last reply Reply Quote 0
                                          • G
                                            GiuseppeS @Wildbill last edited by GiuseppeS

                                            @wildbill
                                            Ich mache das wie folgt:
                                            In meinem Skript ist die MAC oder die Manu Data notiert und in dem JSON suche ich danach. Das Ergebnis, wenn vorhanden, schreibe ich in ein separates State extra für dieses Gerät. Ist in Javascript geschrieben. Könnte ich auch zur Verfügung stellen.

                                            Bzgl JSON musste ich zu Beginn auch viel Try&Error durchmachen, inkl Google. Aber ich sag mal so: hier ist es eine klare kleine Aufgabe. Mit einer entsprechenden Vorlage sollte man klar kommen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            580
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            26
                                            242
                                            36342
                                            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