NEWS
Adapter: Radar
-
DIe Idee von fsjoke mit den Subnetzen ist schon relevant.
Auch ich hab zwei Netzwerke bei mir weil ich einige Anschlüsse indirekt "exposed" habe und absichern will. Aus meinem Haupt-Hausnetz komme ich also nicht direkt in das andere Netz, also bräuchte man dort einen Raspi der dort auch die IPs scannt … also schon relevant
-
Hallo mitsammen!
Danke an jensus11 der mir in einem PM einen link zu einem shell-script geschickt hat welches für HomeMatik verwendet wird um Anwesenheit von IP und BT zu erkennen.
Für IP verwendet es arp-scan, also das gleiche was ich auch (unter linux neben ping und fping) verwende.
Für BT verwendet es l2ping das ich 'vergessen' hatte. nun habe ich die 3 Zeilen code um die BT-Verfügbarkeit auch mit l2ping zu prüfen in die letzte Version 0.7.1 eingebaut die über Nacht dann auf NPM verfügbar sein soll (git schon jetzt).
Wegen den IP-Adressen notiere ich mal auch mehrere IP's / device zu erlauben (das mach ich momentan nur bei den MAC's). Dadurch könnte vielleicht das Subnetzproblem gelöst werden wenn der Rechner weiterhin über ping erreichbar ist. arp-scan funktioniert nur im gleichen sub-Netz.
-
Hallo ich bekomme bei der Installation folgende Fehlermeldung:
Woran liegt das?Gruss
Michael
-
Hat der iobroker-prozess/User Admin-Rechte?
-
Ja, steht auf System.user.admin
Alle anderen Adapter sind aber richtig installiert worden und laufen auch.Michael
-
Hallo Michael!
Es schaut so aus als ob irgendwas verbietet BluetoothView zu unstallieren. Das wird normal nur für Windows verwendet und in Linux ignoriert.
Welches System hast du? Ist das Windows oder ein Linux (wie Raspi)?
Egal, du kannst es versuchen über Git zu installieren indem du das Katzensymbol in ioBroker.admin (links oben) anclickst und dann in Beliebig````
https://github.com/frankjoke/iobroker.radarWenn aber dein Virenscanner oder irgendwas dazwischenspuckt wird das eventuelll auch nichts nützten :(
-
Hallo
hat leider nicht geklappt.
Michael -
michihorn,
läuft dein iobroker nicht al root?
Hast du's schon in iobroker-verzeichnis mit
sudo iobroker add radar ````probiert? Was ist es exact für ein System? Die Fehlermeldungen sprechen das npm eine Datei nicht löschen und installieren kann! p.s.: Würde auch die node-Version updaten, zumindest auf 4.6.x! An alle Anderen Nutzer: Habe den Adapter mit Version 0.7.2 fertiggestellt und er wird bald auf npm erscheinen. Der Ausfall von iobroker.net hat mich dazu bewegt eine zusätzliche Möglichkeit einzubauen: Wenn die IP-adresse mit 'http' beginnt interpretiert radar sie als web-adresse (url) und fragt die Adresse ab anstatt ping zu verwenden. Damit kann der Status eines Webservers (wie z.B. http(s)://iobroker.net) geprüft werden. Bei https kann aber ein Fehler bei den Schlüsseln auch als 'nicht vorhanden' gemeldet werden. So meldet [https://forum.iobroker.net](https://forum.iobroker.net) abwesend da das Forum nicht im domainschlüssel gelistet ist. Das vorige Beispiel ohne 'forum.' funktioniert.
-
Hallo ich nutze Win10
Gruß
Michael
-
Ok Michihorn,
Hab nur einen Win10 NUC mit Home und gerade nochmal dort getestet, ohne Probleme.
Kannst mal einen elevated shell, also Eingabeaufforderung (Administroator), starten und dort dann````
cd c:\iobroker
del /F /S /Q node_modules\iobroker.radar
npm install iobroker.radar --production --prefix "C:/iobroker"Falls c:\iobroker auch dein ioBroker-Verzeichnis ist. Sonst weiß ich auch nicht mehr weiter :(
-
Hallo zusammen,
ich habe den radar adapter auf zwei Systemen laufen. Leider werden seit dem 0.7.0 Update (bin mir nicht ganz sicher) immer devices als anwesend gekennzeichnet obwohl sie schon Stunden abwesend sind. Lt. debug Log wird angeblich bluetooth gefunden, was ich aber nicht nachvollziehen kann.
Kann mir jemand sagen mit welchem Befehl der Radar Adapter unter Linux nach BT Devices sucht? Dann kann ich da ansetzen ob es auf den Systemen einen Fehler gibt.
Ich habe eine eigene Anwesenheitserkennung mit l2ping, und die ist absolut korrekt.
-
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