gestern hbe ich nun endlich den lang erwarteten iBeacon (Tinysine Serial Bluetooth 4.0 BLE Module) bekomme. An die Versorgungsspannung angeschlossen blinkt eine blaue LED.
Mit der iPhoneApp „LightBlue“ kann ich auch eine Verbindung herstellen und auf verschiedene Daten zugreifen - so weit ist das offenbar alles okay.
In er iPhoneApp "„Geofency“ habe ich nun versucht den iBeacon einzurichten. Was mich schon wunderte, war das der Sender nicht automatisch gefunden wurde. Ich habe im Menü daher versucht eine „iBeacon Micro-Location“ hinzuzufügen - immer noch scheint der Sender nicht erkannt zu werden. Ich habe dann manuell die UUID des iBeacon aus „LightBlue“ herauskopiert und in „Geofency“ eingefügt, „Major“ und „Minor“ habe ich frei gelassen.
Trotzdem scheint „Geofency“ den IBeacon nicht zu erkennen…
Anbei mal zwei Screenshots, einmal aus LightBlue, einmal aus Geofency. (Hochladen von Bildern funktiert derzeit nicht?!? - muss ich wohl später noch mal versuchen…)
Irgendetwas mache ich noch nicht richtig.
Ich habe bei Major und Minor auch schon die 1 versucht - leider ohne eine Änderung.
Komisch…
Joachim
Nachtrag: mit „eBeacon“ kann ich ebenfalls problemlos auf den iBeacon zugreifen…
Öhm, doofe Frage, aber hast du die Sendestärke vom Beacon reduziert oder falsch eingetragen oder sowas und/oder bist einfach zu weit vom Beacon weg? Meine werden alle mit der Locate App angezeigt. Damit teste ich immer die Entfernungen. Und mit eBeacon konfiguriere ich die Beacons. Dann einfach im Geofency eingetragen und fertig
Sehr gerne Beacons sind eigentlich eine echt easy Geschichte…
Aber von dem Ding das du hast, hab ich noch nie was gehört.
Modem besorgen um mit AT-Befehlen was zu aktivieren? hä? Wird das Ding über einen COM-Port angesprochen? Dann kannst du mit Hyperterminal oder Hercules dran. Bin dir da grad wohl keine große Hilfe.
Nachdem nun klar war, dass ich noch einige Einstellungen an den Tinysine Serial Bluetooth 4.0 BLE Modulen machen musste damit sie als iBeacon laufen, habe ich folgende Schritte durchgeführt:
Datenkabel gebaut (aus alten PC Teilen, einen Soundkartenanschluss für das Modul, die Stecker für die Taster und LED vom Gehäuse zum Mainboard als Anschlussstücke für die GPIO-Schnittstelle am Raspberry Pi)
Verbindung von 3,3V, GND, TX und RX zwischen Raspberry Pi und Modul hergestellt
Kernel Debug tty auf einem Raspberry Pi deaktiviert
Serial Port im IPS eingerichtet
iBeacon Funktionaltät aktiviert, Namen vergeben
…Läuft!
UUID, Minor und Major habe ich erst einmal so gelassen, auf dem Weg können diese Dinge auch angepasst werden.
Im Geofency wird das Modul nun erkannt.
Nun noch eine Frage: Um eine möglichst genaue Indoorortung zu erhalten ist ganz sicher der Einsatz von mehreren iBeacon notwendig.
Zum einen könnte man dann an der Sendeleistung „spielen“, zum anderen besteht ja zumindest theoretisch die Möglichkeit, das zur genaueren Bestimmung die jeweilige Sendeleistung bewertet wird.
Ist lezteres im Geofency möglich oder arbeitet Geofency nur mit Empfang ja/nein?
Du musst im iBeacon die Sendeleistung ändern, um z.B. nur den Bereich vom Badezimmer abzudecken. Denn wenn Geofency dann in den Sendebereich rein kommt, dann wird das als ENTRY gewertet und an IPS gesendet. Wenn du diesen Sendebereich wieder verlässt, dann wird das als LEAVE gewertet und an IPS gemeldet.
Je nach iBeacon kann man die Sendestärke frei einstellen, bei manchen aber leider nicht.
Aber bei -23 hab ich einen Radius von max 2-3m. Da darfste dann nicht mit Locate schauen, sondern musst direkt mit Geofency testen (Benachrichtigung an), dann siehste wenn du Entry hast (reagiert sofort) und wann du Leave hast (dauert rund 30 Sek bei mir). Also teste mit Entry
Ich experimentiere gerade mit Cipi MiniBeacon. Grundsätzlich funktioniert alles.
Aber kann es sein, das Geofency alleine mit den Beacon nichts anfangen kann ?
Ein Webhook wird nur dann verarbeitet, wenn ich eine Beacon Software im Hintergrund laufen habe ?
Nö, im Geofency im Handy wird der Beacon eingetragen (ID + Ort), dann zusätzlich noch einen Webhook (in der Geofency-Handy-App) einrichten für „kommen/gehen“ (das ist der URL-Aufruf). Dieser URL Aufruf wird dann von einer eigenen PHP, IPSGeofency (IPSLibrary) oder einem Webhook in IPS 4.x „entgegen genommen“ und setzt Variablen entsprechend.
ich hab so das Gefühl das Geofency den Beacon erst erkennt, wenn ich ein Beacon Scanner auf habe.
Oder bin ich zu ungeduldig ? Wie schnell erkennt Geofency bei euch denn die Location ?
Das Erkennen geht sehr schnell (1 Sekunde?!), bis es an IPS gemeldet wird, das dauert zw. 1 Sekunde und 5-10 Minuten Im Normallfall dauert es aber nur 1-5 Sekunden.
Kannst du einfach testen, wenn du die Benachrichtigung im Geofency selbst einschaltest. Dann kommt da ein Ton + Nachricht, sobald du den Bereich betrittst/verlässt. Wobei Betreten immer schneller geht als Verlassen. Aber man kann auch noch einstellen, wie schnell ein verlassen gemeldet werden soll. Zusätzlich ist der Intervall vom Beacon gegebenenfalls anzupassen.
> Aber aufpassen, im Schlafzimmer hatte ich 400ms als Intervall und da haben unsere Handys regelmäßig geglüht nach der Nacht In Durchgangsbereichen also eher kleine Intervalle nehmen vom Beacon und dort wo man sich länger aufhält lieber höhere Intervalle (2 Sekunden?!) verwenden.
Also ich nutze den Webhook in Gefency um in IPS die Alarmanlage zu aktivieren und deaktivieren und da
dauert das deaktivieren, also betreten, keine 5 Sekunden, wenn man mit dem Auto vorfährt
Nein, nein, ich wollte den ersten beacon eigentlich dazu nutzen um das Garagentor auf zu machen
Das liegt weit genug vom Schlafzimmer entfernt
Intervall im Beacon ist vielleicht ein gutes Stichwort. Ich hab natürlich erst einmal alles Standard gelassen.
Mit welcher Software konfigurierst du die Beacon ?