NEWS
Adapter: Radar
-
hallo Pepp!
Der Adapter sucht (unter linux)
-
IPs mit ping und fping
-
Macs mit arp-scan
-
BT LE mit noble
-
BT normal mit hcitool (name) und l2ping
Die Standardeinstellung scannt jede Minute (ein noble bzw arp-scan dauert bis zu 25 Sekunden), meldet aber erst abwesend wenn 10x weder BT noch IP vorhanden sind.
Wenn irgend etwas von oben erkannt wird wird der der counter einfach in die Höhe gezählt, >0 für wie lange (in scans) anwesend, <0 bedeuted wie lange abwesend. Bei <-10 wird here auf abwesend gestellt.
Hab's gerade getestet und gesehen dass alle 20-60 Minuten mal ein Handy mal nirgends erkannt wird aber nach 1-3 scans dann wieder.
Alles gerade nochmals getestet.
Manche devices werden von BT & BT LE gefunden, die meisten jedoch nur von einem der Beiden.
Ab Version 7 wurde arp-scan und l2ping hinzugefügt, sowie die Möglichkeit Web-Adressen anstatt IP's zu checken.
p.s.: Wenn der die ersten 3 hex-bytes nach einem G-Tag ausschaut wird lein l2ping oder hci gemacht da das bei denen sowieso nicht funktioniert.
Das ist die verwendete Logik, wenns 'nen bug gibt bin ich froh ihn mittel infos finden, suchen und beheben zu können.
-
-
Ok. Das hilft mir dann schonmal weiter zu prüfen wo der Fehler herkommt, und dir am Ende ihn zu lösen.
Denn das iPhone meiner Frau taucht immer wieder mal im radar Adapter via Bluetooth auf, obwohl Sie definitiv nicht in Reichweite ist und meine eigene Lösung mit l2ping das iPhone zuverlässig nicht findet.
-
Pepp,
kannst demug-log einschalten um etwas mehr zu sehen was der Adapter wie findet, kann vielleicht helfen!
-
So, heute bin ich endlich dazugekommen den Adapter zu testen.
Leider funktioniert er nicht so wie ich mir das vorgestellt habe. Aber evt. habe ich ja einen Gedankenfehler…..
-
Installation problemlos.
- Neue Bluetooth Seriennummer meines Iphones eingetragen.
- Wird nicht gefunden.
- OK, wird gefunden, wenn ich in den Bluetootheinstellungen des Iphones bin. (Sobald ich aus den Einstellungen raus bin ist das IPhone unsichtbar)
- Dann habe ich meinen Windows10 PC und das IPhone über Bluetooth gekoppelt.
- Siehe da, das IPhone wird gefunden. Hier habe ich mich schon gefreut.
- Leider kann ich mein IPhone nun komplett abschalten, der Status gefunden bleibt (bzw. der Counter wird weiter raufgezählt).
Fazit: Der Adapter erkennt die Koppelung bereits als anwesend. Ohne Kopplung wird das IPhone nicht gefunden.
Hat jemand einen Tipp?
LG
Günther
-
-
Ja leider habe ich in der Familie oder Nachbarschaft kein iPhone zum Testen
So kann ich nur mit deiner Hilfe versuchen was rauszufiltern.
Also unter Windows wird noble und 'C:\ioBroker\node_modules\iobroker.radar\bin\bluetoothview\BluetoothView.exe' verwendet um die Adressen zu scannen.
Kannst du Bluetoothview mal aufrufen (im explorer doppelclicken) und schauen ob das Telefon dort gelistet wird?
Wenn das Telefon nicht da ist oder BT ausgeschaltet ist dann ist dies das Problem.
Ob es noble findet solltest du sehen wenn du den debug-mode im admin/instanzen für radar einschaltest.
Ohne jetzt genau einen Grund zu kennen könnte es an einem cache liegen oder anderen speziellen Einrichtungen im BT Treiber des systems.
Wenn ich bei meinen Telefonen BT ausschalte oder wenn ich zu weit weg bin dann erkennt es radar sofort.
-
Hallo,
Der Log im Debugmodus zeigt folgendes. die Geräte werden offensichtlich erkannt.
! radar.0
! 2016-12-10 21:09:51.450
! debug
! Noble= null start 5000
! radar.0
! 2016-12-10 21:09:51.450
! debug
! Would now start scan for devices! printerCount=3
! radar.0
! 2016-12-10 21:09:41.206
! debug
! Iphone_XXXXX={ name: 'Iphone_XXXXX', ip: '', macs: '', bluetooth: 'xx:xx:xx:1E:79:72', id: 'Iphone_XXXXX', hasBT: true, printer: '', hasECB: '', hasIP: '', btHere: true, ipHere: fals
! radar.0
! 2016-12-10 21:09:41.143
! debug
! Iphone_YYYYY={ name: 'Iphone_YYYYY', ip: '', macs: '', bluetooth: 'yy:yy:yy:86:34:83', id: 'Iphone_YYYYY', hasBT: true, printer: '', hasECB: '', hasIP: '', btHere: true, ipHere
! radar.0
! 2016-12-10 21:09:21.439
! debug
! Noble found 0 from list and returned 0 more not on list: []
! radar.0
! 2016-12-10 21:09:21.439
! debug
! Noble= null start 5000
! radar.0
! 2016-12-10 21:09:21.439
! debug
! Would now start scan for devices! printerCount=2
! radar.0
! 2016-12-10 21:09:20.174
! debug
! Iphone_XXXXX={ name: 'Iphone_XXXXX', ip: '', macs: '', bluetooth: 'xx:xx:xx:1E:79:72', id: 'Iphone_XXXXX', hasBT: true, printer: '', hasECB: '', hasIP: '', btHere: true, ipHere: fals
! radar.0
! 2016-12-10 21:09:20.142
! debug
! Iphone_YYYYY={ name: 'Iphone_YYYYY', ip: '', macs: '', bluetooth: 'yy:yy:yy:86:34:83', id: 'Iphone_YYYYY', hasBT: true, printer: '', hasECB: '', hasIP: '', btHere: true, ipHere
! radar.0
! 2016-12-10 21:08:51.422
! debug
! Noble found 0 from list and returned 0 more not on list: []
! radar.0
! 2016-12-10 21:08:51.422
! debug
! Noble= null start 5000
! radar.0
! 2016-12-10 21:08:51.422
! debug
! Would now start scan for devices! printerCount=1
! radar.0
! 2016-12-10 21:08:27.935
! debug
! Make State whoHere and set value to ''Iphone_YYYYY, Iphone_XXXXX''
! radar.0
! 2016-12-10 21:08:27.889
! debug
! Make State allHere and set value to ''Iphone_YYYYY, Iphone_XXXXX''
! radar.0
! 2016-12-10 21:08:27.842
! debug
! Make State countHere and set value to '2'
! radar.0
! 2016-12-10 21:08:27.842
! info
! ScanAll: From all 2 devices dedected 2 are whoHere: Iphone_YYYYY, Iphone_XXXXX
! radar.0
! 2016-12-10 21:08:27.810
! debug
! Make State Iphone_XXXXX.btHere and set value to 'true'
! radar.0
! 2016-12-10 21:08:27.764
! debug
! Make State Iphone_XXXXX.here and set value to 'true'
! radar.0
! 2016-12-10 21:08:27.732
! debug
! Make State Iphone_XXXXX.count and set value to '0'
! radar.0
! 2016-12-10 21:08:27.732
! debug
! Iphone_XXXXX={ name: 'Iphone_XXXXX', ip: '', macs: '', bluetooth: 'xx:xx:xx:1E:79:72', id: 'Iphone_XXXXX', hasBT: true, printer: '', hasECB: '', hasIP: '', btHere: true, ipHere: fals
! radar.0
! 2016-12-10 21:08:27.670
! debug
! Make State Iphone_YYYYY.btHere and set value to 'true'
! radar.0
! 2016-12-10 21:08:27.623
! debug
! Make State Iphone_YYYYY.here and set value to 'true'
! radar.0
! 2016-12-10 21:08:27.592
! debug
! Make State Iphone_YYYYY.count and set value to '0'
! radar.0
! 2016-12-10 21:08:27.592
! debug
! Iphone_YYYYY={ name: 'Iphone_YYYYY', ip: '', macs: '', bluetooth: 'yy:yy:yy:86:34:83', id: 'Iphone_YYYYY', hasBT: true, printer: '', hasECB: '', hasIP: '', btHere: true, ipHere
! radar.0
! 2016-12-10 21:08:21.404
! debug
! Noble found 0 from list and returned 0 more not on list: []
! radar.0
! 2016-12-10 21:08:21.404
! debug
! Noble= null start 5000
! radar.0
! 2016-12-10 21:08:21.404
! debug
! Would now start scan for devices! Would also scan for printer ink now!
! inMem
! 2016-12-10 21:08:06.278
! debug
! message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1481400486264, q=0, from=system.adapter.admin.0, lc=1481400370597
! radar.0
! 2016-12-10 21:07:51.393
! debug
! Make State AllUnknownBTs and set value to ''[]''
! radar.0
! 2016-12-10 21:07:51.393
! debug
! Noble found 0 from list and returned 0 more not on list: []
! radar.0
! 2016-12-10 21:07:51.393
! debug
! Noble= null start 5000
! radar.0
! 2016-12-10 21:07:51.393
! debug
! Would now start scan for devices! Would also scan for printer ink now!
! radar.0
! 2016-12-10 21:07:51.393
! info
! radar set use of noble(false), fping(false), doMac(false), doHci(false) and doBtv(true).
! radar.0
! 2016-12-10 21:07:51.393
! info
! radar adapter initialized 2 devices, ExternalNetwork = 0.
! radar.0
! 2016-12-10 21:07:51.330
! info
! Init item Iphone_XXXXX with { name: 'Iphone_XXXXX', ip: '', macs: '', bluetooth: 'xx:xx:xx:1E:79:72', id: 'Iphone_XXXXX', hasBT: true, printer: '', hasECB: '', hasIP: '' }
! radar.0
! 2016-12-10 21:07:51.268
! info
! Init item Iphone_YYYYY with { name: 'Iphone_YYYYY', ip: '', macs: '', bluetooth: 'yy:yy:yy:86:34:83', id: 'Iphone_YYYYY', hasBT: true, printer: '', hasECB: '', hasIP: '' }
! radar.0
! 2016-12-10 21:07:29.588
! info
! BT Bin Dir = 'C:\ioBroker\node_modules\iobroker.radar\bin\bluetoothview'
! radar.0
! 2016-12-10 21:07:29.588
! info
! radar set to scan every 30 sec and printers every 500 scans.
! radar.0
! 2016-12-10 21:07:29.588
! warn
! Noble not available, Error: { [Error: Cannot find module 'bluetooth-hci-socket'] code: 'MODULE_NOT_FOUND' }
! radar.0
! 2016-12-10 21:07:29.525
! info
! starting. Version 0.7.2 in C:/ioBroker/node_modules/iobroker.radar, node: v4.4.0
! radar.0
! 2016-12-10 21:07:29.494
! debug
! statesDB connected
! radar.0
! 2016-12-10 21:07:29.479
! debug
! objectDB connected
! host.gs-log
! 2016-12-10 21:07:28.685
! info
! instance system.adapter.radar.0 started with pid 4968Das Problem ist ja das die Geräte nicht wieder verschwinden. Im Bluetoothview werden die Geräte angezeigt.
Allerdings dauerhaft nur dann wenn ich sie mit dem PC gekoppelt habe. Tue ich das nicht werden die Geräte nur erkannt wenn ich in den IPhone Einstellungen für Bluetooth bin.
Im Bluetoothview schaut der Screen Shot folgender maßen aus.
Und diese Anzeige bleibt auch wenn das Handy aus ist.
lg Günther
1180_bluetooth.png -
@fsjoke:Pepp,
kannst demug-log einschalten um etwas mehr zu sehen was der Adapter wie findet, kann vielleicht helfen! `
Hi,
also das debug Log gibt nicht wirklich viel Erklärung dazu. Immer mal wieder taucht ihr iPhone angeblich via bluetooth auf:
radar.1 XXX_iPhone={ name: 'XXX_iPhone', ip: 'XXX', macs: 'XXX', bluetooth: 'XXX', id: 'XXX_iPhone', hasMAC: [ 'XXX' ], hasBT: true, printer: false, hasECB: false, hasIP: true, btHere: true, ipHere: false, anwesend: true, cnt: 3 }
Aber das Gerät ist definitiv nicht in Reichweite.
-
Also ich muss sagen der Adapter ist echt super. Aber ein Problem habe ich noch, er erkennt wohl ab und zu fälschlicherweise einen Heim Status (siehe Screen).
Ich habe die MACs und IPs unserer Handys verwendet. Erst dachte ich es wäre eine Miskonfiguration, aber nachdem es bei 2 verschiedenen Handy auftaucht eher nicht.
Seltsamerweise ist alles auf false, nur der here auf true.
Nach nach 10 checks ist wieder alles offline.
1289_radar.jpg -
Hi,
kann mir jemand sagen was genau dieser Adapter macht bzw. kann?
Device Scan oder so ähnlich habe ich mit bekommen aber konnte nichts genaues finden.
Danke
-
Hi,
kann mir jemand sagen was genau dieser Adapter macht bzw. kann?
Device Scan oder so ähnlich habe ich mit bekommen aber konnte nichts genaues finden.
Danke `
Er kann Geräte auf verschiedenen Ebenen abfragen.
Er erkennt dein Handy anhand von, ARP Paket, IP Paket und BT Leuchtfeuer. Damit kann das Problem umgangen werden, das ein Mobiltelefon im Deep Sleep nicht mehr auf Pings antwortet.
So liefert der Adapter eine höhere Zuverlässigkeit des Home Status. (Wenn er nicht wie bei mir momentan einen Fehlstatus erzeugt)
-
Also ich muss sagen der Adapter ist echt super. Aber ein Problem habe ich noch, er erkennt wohl ab und zu fälschlicherweise einen Heim Status (siehe Screen).
Ich habe die MACs und IPs unserer Handys verwendet. Erst dachte ich es wäre eine Miskonfiguration, aber nachdem es bei 2 verschiedenen Handy auftaucht eher nicht.
Seltsamerweise ist alles auf false, nur der here auf true.
Nach nach 10 checks ist wieder alles offline. `
Bisher habe ich leider noch gar kein Feedback, das ist schade. gestern hat er mich ca 10 mal zu Hause gemeldet, obwohl ich nicht daheim war.
-
Gibt es evt. Hier was neues zu meinem Problem? Wäre nach dem iPhone Adapter sonst der 2. mit viel Potential, aber in der bestehenden Ausführung für mich unbrauchbar.
-
Also, da es ja wohl am BT liegt,habe ich bei meinen Geräten jetzt mal die Mac für BT entfernt, mal schauen, ob das was hilft.
Gesendet von meinem Nexus 6P mit Tapatalk
-
BT wäre für mich die einzige Möglichkeit die Familien Iphones zu erkennen. WLAN klappt nicht wegen Tiefschlaf der Handys.
Lg
Günther
-
Naja, ich habe die Arp Inspektion aktiviert, BT ging sowieso nicht, da rpi im Keller steht.
Und die Ergebnisse waren abgesehen, von den false positive ganz gut.
Gesendet von meinem Nexus 6P mit Tapatalk
-
Ok Kollegen,
Wenn irgend einer der Tests ein Gerät als 'erreichbar' erkennt (wie oben erläutert) wird das Gerät als Anwesend gesetzt.
Wenn es 10+1 (oder so oft+1 mal muss ein Gerät offlein sein in den Einstellungen) mal weg ist wird es auf abwesend gestellt.
Wenn ich die Anwesenheit auch erst nach x-mal erkenne wird sie verzögert gemeldet aber die Fehlerquote verringert sich.
Ich werd' das mal ausprobieren und in einer nächsten Version (und Tagen) zur Verfügung stellen.
-
Aber die Frage ist doch eher, warum erkennt er ein Gerät, das gar nicht in Reichweite ist…
Das ganze Szenario sollte doch wenn dann ein false negative erzeugen, welches man mit dem Intervall in den Griff bekommen kann. Ein false positiv sollte da doch ausgeschlossen sein, es sei denn hier ist wirklich ein Fehler in einem der Module.
Gesendet von meinem Nexus 6P mit Tapatalk
-
Und bei mir wird das Gerät immer erkannt obwohl es gar nicht eingeschaltet ist. Das liegt wohl an der erfolgten Kopplung mit dem IPhone. Die Erkennung ist zuverlässig, es ist einfach immer da.
Wenn ich die Kopplung entferne wird es nie erkannt, weil das IPhone dann seinen Bluetooth Status verbirgt. genaue Beschreibung mit Screenshots oben.
Wenn ich irgendwas testen soll, gerne.
Lg
Günther
-
Und bei mir wird das Gerät immer erkannt obwohl es gar nicht eingeschaltet ist. Das liegt wohl an der erfolgten Kopplung mit dem IPhone. Die Erkennung ist zuverlässig, es ist einfach immer da.
Wenn ich die Kopplung entferne wird es nie erkannt, weil das IPhone dann seinen Bluetooth Status verbirgt. genaue Beschreibung mit Screenshots oben.
Wenn ich irgendwas testen soll, gerne.
Lg
Günther `
Wie hast du die Geräte den gekoppelt?
gruss
-
Also ich dachte es ist keine Kopplung notwendig, da er nur das Leuchtfeuer prüft.
Wie gesagt, ich benutze kein Bluetooth.
Gesendet von meinem Nexus 6P mit Tapatalk