Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Pi 3 als Bluetooth LE Scanner (Beispielscript)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Pi 3 als Bluetooth LE Scanner (Beispielscript)

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

      .

      Script: "Bluetooth Scanner für Raspberry Pi 3 (oder andere kompatible Geräte mit BT)"

      Version: 0.4.1

      ACHTUNG: 0.2.16 Ein Datenpunkt wurde geändert. Objektzweig Bluetooth vor Neuinstallation löschen.

      0.4.1 (14.06.2016) - fix: manuelles löschen über Control.Delete_Device

      0.4.0 (17.04.2016) - diverse Erweiterungen

      0.2.16 (30.03.2016) - Fehler beseitigt, wenn im ersten Durchlauf 0 Geräte gefunden wurden

      0.2.15 (29.03.2016) - Fehlerkorrekturen, Channelnamen umbenannt

      0.2.13 (28.03.2016) - Kalibrierung hinzugefügt, Distanzberechnung optimiert, Optimierungen

      0.2.10 (27.03.2016) - Blacklistbehandlung hinzugefügt, Script aufgeräumt

      0.2.8 (26.03.2016) - Channelname möglichst lesbar soweit bekannt, Optimierungen

      0.2.7 (25.03.2016) - Optimierungen, Hersteller anhand der Mac-Adresse, neue Datenpunkte, neue Funktionen

      Skript Bluetooth Scanner:

      zum Download:

      http://forum.iobroker.net/viewtopic.php … 266#p28266

      1 Reply Last reply Reply Quote 0
      • ruhr70
        ruhr70 last edited by

        Ziele des Skripts

        1.) Nutzung zur Anwesenheitserkennung über Bluetooth "Tags" oder anderen Geräte, die dauerhaft Bluetooth Funkfeuer aussenden..

        2.) Geräteüberwachung per Bluetooth als Alternative zum Ping.

        3.) Einfach als Bluetooth Scanner

        4.) Für Indoor Ortung

        Wenn das Skript Sinn macht und auch ein gewisser Bedarf besteht wird das vielleicht mein zweites Projekt für einen Adapter 🙂

        Bei mir wird es nicht auf meiner ioBroker Hauptinstallation eingesetzt, sondern auf einen eigenen Raspberry Pi 3, der einige Spezialaufgaben mit einer zweiten ioBorker Installation übernehmen wird.

        Ein Bluetooth Sender am Schlüsselbund wäre die zuverläslichste Anwesenheitserkennung.

        Anspruch an das endgültige Skript

        • möglichst wenig oder kein Eingriff für den User (ist jetzt schon der Fall)

        • Verhalten komplett über Datenpunkte konfigurierbar (als wäre es eine Konfigurationsseite eines Adapters). Expertenmodus: Einstellungen im Skript.

        Bisherige Erfahrung

        • ein Fitbit One sendet dauerhaft und kann zum Tracking verwendet werden

        • Mi Band von simpixo kann ebenfalls für das dauerhafte Tracking verwendet werden

        • Ti SensorTag CC2650STK sendet dauerhaft

        • Ein Gigaset G-Tag funktioniert ebenfalls, solange er nicht an der G-Tag App angemeldet ist. http://www.amazon.de/Gigaset-Bluetooth- … aset+g-tag

        • Garmin vívosmart HR

        • Garmin Forerunner 920 / 008706e5

        • ein Apple Pencil sendet nur selten. Allerdings taucht der selbe Pencil schon mit zwei Mac-Adressen auf. (kann nicht zur Anwesenheitserkennung genutzt werden, würde aber auch kein Sinn machen)

        • Mein Lichtwecker Withings Aura sendet dauerhaft Bluetooth. Das Skript könnte zur Überwachung des Lichtweckers genutzt werden und dann mich alternativ anders wecken, sollte der Wecker "ausgefallen sein" (Gong, Licht einschalten, Sonos, …).

        Langzeittest

        Momentan läuft das Skript ein paar Tage vor sich hin, ums zu sehen, was passiert (Lastverhalten bei vielen Devices). Danach geht es in der Programmierung weiter.

        Im Skript lädt sich einstellen, welche Mindestsignalstärke (rssi) ein Gerät haben muss, damit es mit Datenpunkten angelegt werden soll. Derzeit sind es -100 dB. Stellt mal eine größere Zahl ein, z.B. -80 dB, werden weiter entfernte Geräte nicht gescannt und damit auch keine Datenpunkte erzeugt.

        todos

        • Test mit anderer Hardware als den Pi 3 (ein Pi 1 und 2 mit externen USB-Bluetooth Dongle wird auch getestet. Davon habe ich noch ein paar rumstehen)

        • Dokumentation in diesem Thread. Screenshots. Skript Beschreibung (im Skript selbst steht schon einiges)

        • ERLEDIGT:Herstellernamen im Skript lesbar hinbekommen (Javascript Pufferbehandlung…)

        • ERLEDIGT: Whitelist. Nur bekannte Geräte scannen (ist sehr schnell eingebaut)

        • Interne Optimierungen und mehr Features

        geplante Erweiterungen

        • Datenpunkt: Liste als JSON aller gefundenen neuen Devices mit Datum und Uhrzeit

        • Per Datenpunkt Switch: Scan neuer Geräte für einen einstellbaren Zeitpunkt,z.B eine Stunde. Neue Geräte werden dann in einen eigen Zweig zusätzlich erfasst. Zweck: neue Geräte schnell identifizieren; "Besuch" auf BLE scannen.

        Über ein kurzes Feedback würde ich mich freuen, falls jemand das auch testet. Hat es sofort geklappt, gab es Stolpersteine, ging es gar nicht, Probleme, Nutzen, Wünsche, Verbesserungsvorschläge, Ideen…?

        1 Reply Last reply Reply Quote 0
        • S
          simpixo last edited by

          Interessant! Muss ich wohl mal selbst ausprobieren! Werden auch BLUETHOOTH LE Geräte gefunden!?

          Gesendet von meinem iPhone mit Tapatalk

          1 Reply Last reply Reply Quote 0
          • ruhr70
            ruhr70 last edited by

            @simpixo:

            … Werden auch BLUETHOOTH LE Geräte gefunden!? `

            Genau um die geht es 🙂

            Das node.js Modul noble:

            A Node.js BLE (Bluetooth Low Energy) central module

            https://github.com/sandeepmistry/noble#prerequisites

            [EDIT] Ich habe dann auch mal die Überschrift geändert. Danke!

            1 Reply Last reply Reply Quote 0
            • S
              simpixo last edited by

              Also ich habe beim ersten installieren des noble Paket, haufenweise Fehler kassiert, erst nachdem ich folgende Pakete installiert habe wurde es korrekt installiert

              sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev

              Vielleicht solltest du das in deinem ersten Beitrag erwähnen [emoji6]

              Ich teste dann mal weiter

              Gesendet von iPad mit Tapatalk

              1 Reply Last reply Reply Quote 0
              • ruhr70
                ruhr70 last edited by

                oh

                Schande über mein Haupt

                Du hast natürlich recht. Bluez ist Voraussetzung. Ergänze ich noch 🙂

                Gesendet von iPhone mit Tapatalk

                [EDIT] @simpixo: ich habe das in der Beschreibung ergänzt. Danke!

                1 Reply Last reply Reply Quote 0
                • S
                  simpixo last edited by

                  Hatte ich auf meinen Raspi 3 noch nicht drauf 😉 aber jetzt läuft es und hat mein Mi Band gefunden [emoji6][emoji1360]

                  Gesendet von meinem iPhone mit Tapatalk

                  1 Reply Last reply Reply Quote 0
                  • ruhr70
                    ruhr70 last edited by

                    ich sehe das hier in Tapatalk nicht…

                    wenn Du nur Dein Mi Band scannen willst... oben im Script ist eine Variable, in der jetzt nur ein leeres Array deklariert wird [], d.h. scanne alles.

                    Wenn Du da die mac Deines Mi Bands einträgst scannt das Skript nur noch das Mi Band.

                    ["badefee12345"]

                    Gesendet von iPhone mit Tapatalk

                    1 Reply Last reply Reply Quote 0
                    • S
                      simpixo last edited by

                      Geilomat [emoji1360][emoji1360][emoji1360]

                      Gesendet von meinem iPhone mit Tapatalk

                      1 Reply Last reply Reply Quote 0
                      • ruhr70
                        ruhr70 last edited by

                        @simpixo:

                        Gesendet von meinem iPhone mit Tapatalk `

                        Hat das eigentlich geklappt?

                        Es ging um die Variable serviceUUIDs. Mir viel dann noch ein, dass ich noch gar nicht getestet hatte, ob dort die Mac-Adresse rein muss oder die UUID. Ich gehe mal von der Mac-Adresse aus.

                        1 Reply Last reply Reply Quote 0
                        • derAuge
                          derAuge last edited by

                          habe nun mein RPi3 neu aufgesetzt

                          nach anleitung installiert

                          und es läuft :!:

                          Nun mal schauen was alles so gesehen wird

                          Gruß

                          Jürgen

                          1 Reply Last reply Reply Quote 0
                          • derAuge
                            derAuge last edited by

                            es wird nun ein Gerät gefunden (Welches auch immer ? )

                            Tab4 nicht

                            SmatePhone nicht

                            BlackBarry nicht

                            (mal eine Nacht drüber schlafen)

                            Gruß

                            Jürgen

                            1 Reply Last reply Reply Quote 0
                            • ruhr70
                              ruhr70 last edited by

                              Hi Jürgen,

                              danke für das Feedback!

                              Tab4, SmartPhone und BlackBerry sind keine BLE Geräte.

                              Mein iPhone, iPads und Macs werden auch nicht angezeigt.

                              Gefunden werden Geräte, die dauerhaft Bluetooth aussenden, wie Fitnessarmbänder, Bluetooth Tags und Geräte, die sich über Bluetooth zur Konfiguration bemerkbar machen, wie der Aura Lichtwecker.

                              Warum der Samsung Fernseher der Nachbarn ständig funkt, wenn er an ist… so kann ich denen einen monatlichen Report über deren Fernsehkonsum erstellen 🙂

                              ich hoffe, dass der Gigaset G-tag dazugehört. Am Wochenende werde ich es wissen.

                              wenn ja kommt der G-tag ans Schlüsselbund und ergänzt meine Anwesenheitserkennung um die dann zuverlässigste Methode.

                              Bisher mache ich das per:

                              • Ping auf die iPhones

                              (in der jetzigen ioBroker Installation gestoppt, da der Ping Adapter auf dem iMac Probleme macht). Funktioniert auch nur, wenn man bei Ankunft den Bildschirm vom iPhone aktiviert oder es am Ladegerät hängt

                              • ein Raspberry Pi 2 mit Bluetooth Stick als iBeacon und Geofency. Funktioniert besser als die Erkennung über WLAN und Ping. Ist aber auch nicht ganz perfekt. Wenn der Akku vom iPhone leer ist z.B. nicht und manchmal schwankt die Erkennung. Und es zerrt am Akku.

                              Den Schlüssel hat man immer bei sich und die Batterie soll über ein Jahr halten.

                              Fitnissarmbänder oder Sticks, wie den Fitbit One sind auch schon oft vorhanden und werden auch oft dauerhaft getragen.

                              Danke schon einmal für Dein Feedback!

                              Würde mich interessieren, was da bei dir funkt. Dürfte aber nicht so einfach rauszufinden sein 🙂

                              Gesendet von iPhone mit Tapatalk

                              1 Reply Last reply Reply Quote 0
                              • ruhr70
                                ruhr70 last edited by

                                Hallo Jürgen,

                                eine kleine Ergänzung. Wenn Du aus Deinen Androids ein Bacon machst, dann dürften die auch funktionieren.

                                ich habe mal nach einer passenden App gegoogelt:

                                https://play.google.com/store/apps/deta … uickbeacon

                                Gruß,

                                Michael

                                1 Reply Last reply Reply Quote 0
                                • derAuge
                                  derAuge last edited by

                                  315_bt.png

                                  nun sind es bereis 6 Geräte geworden

                                  Gruß

                                  Jürgen

                                  1 Reply Last reply Reply Quote 0
                                  • ruhr70
                                    ruhr70 last edited by

                                    @derAuge:

                                    nun sind es bereis 6 Geräte geworden `

                                    Hi Jürgen,

                                    Danke für die Info! Laut Screenshot sind es bei Dir nur zwei Geräte (CountAll = 2), ein Gigaset G-tag und ein Samsung TV.

                                    Freue mich gerade. D.h. das G-Tag wird funktionieren 😉

                                    Sind das Deine Geräte (Samsung Fernseher und das/der G-tag)?

                                    VG,

                                    Michael

                                    1 Reply Last reply Reply Quote 0
                                    • derAuge
                                      derAuge last edited by

                                      @ruhr70:

                                      Laut Screenshot sind es bei Dir nur zwei Geräte `

                                      stimmt. Da hatte ich das Bild gemacht.

                                      inzwischen hat er bereits 11 devices gesehen.

                                      und Ja

                                      Es ist ein Samsung TV und

                                      ein Gigaset ?

                                      Gruß

                                      Jürgen

                                      1 Reply Last reply Reply Quote 0
                                      • ruhr70
                                        ruhr70 last edited by

                                        @derAuge:

                                        ein Gigaset ? `

                                        Ein Gigaset G-tag:

                                        http://www.amazon.de/Gigaset-Bluetooth- … aset+g-tag

                                        Wenn es nicht Deins ist, dann war vielleicht jemand in der Nähe mit so einem Ding.

                                        Auf jeden Fall geht es mir u.a. darum. Ich hab eins zum Test bestellt und mich schon gefreut, dass es bei Dir erkannt wird 🙂

                                        1 Reply Last reply Reply Quote 0
                                        • derAuge
                                          derAuge last edited by

                                          ok

                                          dann ist es wohl vorbei gefahren

                                          der Wert "32.73" bei "Bluetooth Device Distanz" sind wohl Meter Entfernung?

                                          ich dachte erst es sei mein Gigaset Telefon SX353isdn mit BT

                                          NAchdem ich mein SamsungTV nun ausgeschaltet habe ist der OnlineZähler auf 0

                                          Gruß

                                          Jürgen

                                          1 Reply Last reply Reply Quote 0
                                          • ruhr70
                                            ruhr70 last edited by

                                            32,73 sollen m sein. Die Formel zur Berechnung der Distanz war inspiriert von dem Projekt: https://medium.com/truth-labs/beacon-tr … .9ou5pmul5.

                                            Allerdings sind es gefühlt eher Feet, wenn ich das bei mir verglichen habe. Und es springt schon argh hin un her.

                                            Vorbeigefahren glaube ich eher nicht. Vielleicht hatte der Briefträger so ein Ding am Schlüsselbund. 7:36 Uhr?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            861
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            28
                                            254
                                            57348
                                            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