NEWS
[Aufruf] BLE Adapter testen (v0.6.0)
-
Meine Seite kommt dann, wenn man auf connect klickt. `
Das sind dann aber nur die Services die während einer Verbindung angeboten werden. Das ist aktuell noch nicht unterstützt. -
ich habe zwar noch keinen Anwendungsfall für den Adapter, aber vielleicht hilft es dir wenn ich mein Installations-Log mit den Meldungen hier reinstelle?!?
! ````
host.raspberrypi 2017-09-09 10:29:56.415 info instance system.adapter.ble.0 terminated with code 0 (OK)
ble.0 2017-09-09 10:29:56.350 info terminating
host.raspberrypi 2017-09-09 10:29:56.308 info stopInstance system.adapter.ble.0 killing pid 19372
host.raspberrypi 2017-09-09 10:29:56.307 info stopInstance system.adapter.ble.0
host.raspberrypi 2017-09-09 10:29:56.292 info object change system.adapter.ble.0
ble.0 2017-09-09 10:28:11.527 info {"index":0,"bus":"UART"}
ble.0 2017-09-09 10:28:10.800 info {"index":0,"bus":"UART"}
ble.0 2017-09-09 10:28:09.865 info {"index":0,"bus":"UART"}
ble.0 2017-09-09 10:28:09.782 info {"index":0,"bus":"UART"}
ble.0 2017-09-09 10:28:05.197 info starting. Version 0.1.0 in /opt/iobroker/node_modules/iobroker.ble, node: v6.11.2
iobroker 2017-09-09 10:28:03.254 info exit 0
iobroker 2017-09-09 10:28:03.222 info host.raspberrypi object system.adapter.ble.0 created
host.raspberrypi 2017-09-09 10:28:03.213 info instance system.adapter.ble.0 started with pid 19372
host.raspberrypi 2017-09-09 10:28:03.184 info object change system.adapter.ble.0
iobroker 2017-09-09 10:28:03.146 info host.raspberrypi object system.adapter.ble.0.alive created
iobroker 2017-09-09 10:28:03.103 info host.raspberrypi object system.adapter.ble.0.connected created
iobroker 2017-09-09 10:28:03.065 info host.raspberrypi object system.adapter.ble.0.memHeapUsed created
iobroker 2017-09-09 10:28:03.025 info host.raspberrypi object system.adapter.ble.0.memHeapTotal created
iobroker 2017-09-09 10:28:02.980 info host.raspberrypi object system.adapter.ble.0.memRss created
iobroker 2017-09-09 10:28:02.938 info host.raspberrypi object system.adapter.ble.0.uptime created
iobroker 2017-09-09 10:28:02.901 info host.raspberrypi object system.adapter.ble.0.inputCount created
iobroker 2017-09-09 10:28:02.865 info host.raspberrypi object system.adapter.ble.0.outputCount created
iobroker 2017-09-09 10:28:02.826 info host.raspberrypi object ble.0.info created
iobroker 2017-09-09 10:28:02.794 info host.raspberrypi object ble.0.info.connection created
iobroker 2017-09-09 10:28:02.760 info host.raspberrypi object ble.0.info.driverState created
iobroker 2017-09-09 10:28:02.738 info host.raspberrypi create instance ble
iobroker 2017-09-09 10:28:02.684 info host.raspberrypi object system.adapter.ble created
iobroker 2017-09-09 10:28:02.536 info upload [0] ble.admin /opt/iobroker/node_modules/iobroker.ble/admin/ble.png ble.png image/png
iobroker 2017-09-09 10:28:02.448 info upload [1] ble.admin /opt/iobroker/node_modules/iobroker.ble/admin/index.html index.html text/html
iobroker 2017-09-09 10:28:02.342 info upload [2] ble.admin /opt/iobroker/node_modules/iobroker.ble/admin/words.js words.js application/javascript
iobroker 2017-09-09 10:28:02.315 info got /opt/iobroker/node_modules/iobroker.ble/admin
iobroker 2017-09-09 10:28:02.246 info npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
iobroker 2017-09-09 10:28:02.246 info npm WARN optional SKIPPING OPTIONAL DEPENDENCY: usb@1.2.0 (node_modules/usb):npm WARN optional SKIPPING OPTIONAL DEPENDENCY: usb@1.2.0 install:node-pre-gyp install --fallback-to-build
iobroker 2017-09-09 10:28:02.244 info SKIPPING OPTIONAL DEPENDENCY: xpc-connection@~0.1.4 (node_modules/noble/node_modules/xpc-connection):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-connection@0.1.4: want
iobroker 2017-09-09 10:28:02.240 info WARN optional
iobroker 2017-09-09 10:28:02.238 info npm
iobroker 2017-09-09 10:27:43.500 info ^
iobroker 2017-09-09 10:27:43.500 info Local error = errorConstructor->NewInstance(1, constructorArgs);
iobroker 2017-09-09 10:27:43.500 info ../src/BluetoothHciSocket.cpp: In member function ‘void BluetoothHciSocket::emitErrnoError()’:../src/BluetoothHciSocket.cpp:275:72: warning: ‘v8::Local v8::Function::NewInstance(int, v8::
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! not ok
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! node-pre-gyp -v v0.6.30
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! node -v v6.11.2
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! cwd /opt/iobroker/node_modules/iobroker.ble/node_modules/usb
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! command "/usr/bin/nodejs" "/opt/iobroker/node_modules/iobroker.ble/node_modules/usb/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! System Linux 4.9.44-v7+
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:891:16)
iobroker 2017-09-09 10:27:36.135 info node-pre-gyp ERR! stack at ChildProcess.emit (events.js:191:7)
iobroker 2017-09-09 10:27:36.135 info at ChildProcess. (/opt/iobroker/node_modules/iobroker.ble/node_modules/usb/node_modules/node-pre-gyp/lib/util/compile.js:83:29)node-pre-gyp ERR! stack at emitTwo (events.js:106:13
iobroker 2017-09-09 10:27:36.133 info ERR! stack Error: Failed to execute '/usr/bin/nodejs /opt/iobroker/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/opt/iobroker/node_modules/iobroker.ble/n
iobroker 2017-09-09 10:27:36.129 info node-pre-gyp
iobroker 2017-09-09 10:27:36.117 info node-pre-gyp ERR! build error
iobroker 2017-09-09 10:27:36.108 info gyp ERR! not ok
iobroker 2017-09-09 10:27:36.106 info ERR! node -v v6.11.2gyp ERR! node-gyp -v v3.6.0
iobroker 2017-09-09 10:27:36.102 info gyp
iobroker 2017-09-09 10:27:36.102 info gyp ERR! cwd /opt/iobroker/node_modules/iobroker.ble/node_modules/usb
iobroker 2017-09-09 10:27:36.102 info gyp ERR! command "/usr/bin/nodejs" "/opt/iobroker/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/opt/iobroker/node_modules/iobroker.ble/node_modules/u
iobroker 2017-09-09 10:27:36.102 info gyp ERR! System Linux 4.9.44-v7+
iobroker 2017-09-09 10:27:36.102 info ERR! stack at ChildProcess.emit (events.js:191:7)gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
iobroker 2017-09-09 10:27:36.098 info gyp
iobroker 2017-09-09 10:27:36.096 info gyp ERR! stack at emitTwo (events.js:106:13)
iobroker 2017-09-09 10:27:36.093 info ERR! stack Error:make
failed with exit code: 2gyp ERR! stack at ChildProcess.onExit (/opt/iobroker/node_modules/npm/node_modules/node-gyp/lib/build.js:285:23)
iobroker 2017-09-09 10:27:36.092 info gyp
iobroker 2017-09-09 10:27:36.081 info ERR! build error
iobroker 2017-09-09 10:27:36.079 info
iobroker 2017-09-09 10:27:36.073 info gyp
iobroker 2017-09-09 10:27:36.058 info make: *** [Release/obj.target/libusb/libusb/libusb/os/linux_udev.o] Error 1
iobroker 2017-09-09 10:27:35.628 info compilation terminated.
iobroker 2017-09-09 10:27:35.626 info ^
iobroker 2017-09-09 10:27:35.626 info ../libusb/libusb/os/linux_udev.c:40:21: fatal error: libudev.h: Datei oder Verzeichnis nicht gefunden #include
iobroker 2017-09-09 10:27:18.862 info ERR! Tried to download: https://github.com/tessel/node-usb/releases/download/1.2.0/usb_bindings-v1.2.0-node-v48-linux-arm.tar.gz node-pre-gyp ERR! Pre-built binaries not found for usb@1.2.0 and node
iobroker 2017-09-09 10:27:18.806 info node-pre-gyp
iobroker 2017-09-09 10:26:39.288 info npm install --production (System call) in "/opt/iobroker/node_modules/iobroker.ble"
iobroker 2017-09-09 10:26:39.279 info host.raspberrypi install adapter ble
iobroker 2017-09-09 10:26:37.227 info add ble -
Dir fehlen ein paar Pakete:
sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev
-
Dir fehlen ein paar Pakete:
sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev ```` ` Danke dir., ich installiere diese nach … wurde - glaube ich - auch am Anfang dieses Threads schon einmal drauf hingewiesen 8-)
Ist im Anschluss eine Deinstalltion/Neuinstalltion empfohlen/notwendig oder reicht ein Neustart des Adapters?
-
Neuinstallation (bzw. drüberinstallieren) wird wohl notwendig, da ein paar der Abhängigkeiten nicht kompiliert wurden.
-
Mir sind zwei BLE Geräte "ins Netz gegangen", Flex 2 und Charge 2. Bei diesen Geräten wird auch ein Wert vom service 180a festgehalten, einmal 1800063703 und einmal 1604335603. Ist klar was diese Zahl bedeutet? Oder hat da jeder Hersteller einen eigenen Code dahinter?
-
Vorab: Die Dokumentation ist furchtbar, so richtig schlau werde ich draus nicht, was advertised werden kann und was nur nach Verbindung verfügbar ist.
Die Charakteristik 0x180A steht für "Device Information", hier "spezifiziert" https://www.bluetooth.com/specification … mation.xml
Wie die zugehörigen Daten in advertisement packets aussehen, scheint nirgends angegeben.
0x180F (Battery Service) hat hingegen einfach ein Byte mit dem Batteriestatus in %.
Deine Daten scheinen von Fitbit Armbändern zu kommen. Was da genau drin steht, finde ich nirgends. Könnte irgendeine Geräte-ID sein, die die zugehörige App auswertet.
-
Update:
Version 0.2.0 (auf NPM und Github) unterstützt jetzt Plugins, die Advertisements parsen und in lesbares Format umwandeln können. Eine kurze Beschreibung des Systems ist auf Github.
Als erstes Plugin existiert Mi-Flora zum Auslesen der Sensorwerte von https://www.amazon.de/kabelloser-Pflanzen-Sensor-Bluetooth-Moisture-N%C3%A4hrstoff/dp/B01LWYZUSJ
-
Hey @AlCazone,
ich hab jetzt mal Zeit gefunden und rum experimentiert immer noch wegen meinem Rasenmäher. Also die iOS App zeigt das hier an:
Der "Mo0085" … Ich hab diese UUID eingegeben aber er findet nix Oder wie müsste ich das angeben?
-
ServiceData ist der Schlüssel. Da steht bei dir nix, er sendet also keine Advertisements. Um spezielle Daten zu lesen/schreiben musst du dich leider noch etwas gedulden.
Gesendet von iPhone mit Tapatalk
-
Ok dann warte ich noch geduldig
Am Ende interessiert mich aktuell am ehesten der Rssi wert
-
Ich hatte die Updates geladen, jetzt läuft 0.3.1.
Die Werte sind alle seit dem eingefroren.
Einstellungen:
Gerät: USB
RSSI Update: 10000 ms
Überwachte Dienste: 0x2A19, 0x180F, 0x2902, 0x2A04, 0x1800, 0x180A
Aktive Plugins: -
-
Gibts irgendwelche Fehler im Log? Wenn du über die States gehst, was sagt die letzte Änderung? Auf welcher Version warst du, als noch Werte kamen? Zeigt der Adapter beim Start an, dass die genannten Dienste überwacht werden?
Kannst du mal debug aktivieren und schauen ob zu den Diensten Logs der Art "setting state […]" kommen?
-
Gibts irgendwelche Fehler im Log? Wenn du über die States gehst, was sagt die letzte Änderung? Auf welcher Version warst du, als noch Werte kamen? Zeigt der Adapter beim Start an, dass die genannten Dienste überwacht werden?
Kannst du mal debug aktivieren und schauen ob zu den Diensten Logs der Art "setting state […]" kommen? `
Habe mal log auf debug und dann nochmal gestartet, keine Fehler (siehe log).Letzte Aktualisierung aller Geräte ist/bleibt 28.09.17, 22:44 Uhr. Welche Version hatte ich vorher? Ich glaube 0.2.0.
connection: true
driverState: powerON
connection und driverState aktualisieren sich scheinbar nur wenn ich den Adapter neustarte.
ble.0 2017-09-29 12:53:56.744 info monitored services: 2a19, 180f, 2902, 2a04, 1800, 180a ble.0 2017-09-29 12:53:56.742 info enabled plugins: _default ble.0 2017-09-29 12:53:56.741 info loaded plugins: Mi-Flora, _default ble.0 2017-09-29 12:53:56.623 info starting. Version 0.3.1 in /opt/iobroker/node_modules/iobroker.ble, node: v6.11.3 ble.0 2017-09-29 12:53:56.575 debug statesDB connected ble.0 2017-09-29 12:53:56.525 debug objectDB connected ble.0 2017-09-29 12:53:53.163 info terminating ble.0 2017-09-29 12:52:46.916 debug sendTo "getHCIPorts" to system.adapter.admin.0 from system.adapter.ble.0 ble.0 2017-09-29 12:52:46.915 info {"index":0,"bus":"USB"} ble.0 2017-09-29 12:52:20.151 info monitored services: 2a19, 180f, 2902, 2a04, 1800, 180a ble.0 2017-09-29 12:52:20.149 info enabled plugins: _default ble.0 2017-09-29 12:52:20.148 info loaded plugins: Mi-Flora, _default ble.0 2017-09-29 12:52:20.057 info starting. Version 0.3.1 in /opt/iobroker/node_modules/iobroker.ble, node: v6.11.3 ble.0 2017-09-29 12:52:19.996 debug statesDB connected ble.0 2017-09-29 12:52:19.941 debug objectDB connected ble.0 2017-09-29 12:52:16.374 info terminating
-
Habe mal log auf debug und dann nochmal gestartet, keine Fehler (siehe log). `
Aber auch keine Daten, die reinkommen :?Die Änderung von 0.2.0 auf 0.3.1 ist eigentlich nur die RSSI-Aktualisierungsgeschwindigkeit, wundert mich etwas dass es nicht mehr funktioniert.
connection: true
driverState: powerON
connection und driverState aktualisieren sich scheinbar nur wenn ich den Adapter neustarte. `
Sieht ebenfalls gut aus. Was ändern sollte sich hier auch nur, wenn du von Hand den Bluetooth-Stack neu startest.Dann werde ich später mal den Log ergänzen.
-
Ich habe ein ähnliches Problem:
-
Radar-Adapter deaktiviert, damit er nicht BT verwendet
-
Beim Javascript-Adapter noble entfernt und neu gestartet
-
BLE 0.3.1 ganz frisch installiert und gestartet
-
Dienste 0x180a, 0x180f eingetragen
Nur
connection : true
driverState: powerON
Mehr kommt einfach nicht.
Sowohl der „BLE Scanner“ als auch „LightBlue“ (beides auf iPhone) sieht Geräte, der Adapter keine.
Das Log zeigt nicht viel, steht auf Debug, aber keine Fehler- oder Verbindungsmeldungen.
Gruß,
Eric
Von unterwegs getippert
-
-
Dann is da tatsächlich was faul. Mein Türsensor geht, vielleicht hab ich aber auch was verkackt
-
Hab paar debug logs hinzugefügt. Bitte von GitHub updaten und berichten!
-
Hi,
hier die Rückmeldung:
Adapter hat die gleiche Version 0.3.1
Adapter steht auf Debug
Screenshot der Objekte
Log
! ````
ble.0 2017-09-29 17:44:25.759 debug serviceData = []
ble.0 2017-09-29 17:44:25.758 debug has serviceData: true
ble.0 2017-09-29 17:44:25.758 debug has advertisement: true
ble.0 2017-09-29 17:44:25.755 debug discovered peripheral 7c:2f:80:98:b8:45
ble.0 2017-09-29 17:44:24.746 debug serviceData = []
ble.0 2017-09-29 17:44:24.746 debug has serviceData: true
ble.0 2017-09-29 17:44:24.745 debug has advertisement: true
ble.0 2017-09-29 17:44:24.742 debug discovered peripheral 7c:2f:80:98:b8:45
ble.0 2017-09-29 17:44:24.420 debug serviceData = []
ble.0 2017-09-29 17:44:24.419 debug has serviceData: true
ble.0 2017-09-29 17:44:24.419 debug has advertisement: true
ble.0 2017-09-29 17:44:24.407 debug discovered peripheral 7c:2f:80:98:b8:57
ble.0 2017-09-29 17:44:23.747 debug serviceData = []
ble.0 2017-09-29 17:44:23.746 debug has serviceData: true
ble.0 2017-09-29 17:44:23.746 debug has advertisement: true
ble.0 2017-09-29 17:44:23.744 debug discovered peripheral 7c:2f:80:98:b8:45
ble.0 2017-09-29 17:44:23.364 debug serviceData = []
ble.0 2017-09-29 17:44:23.363 debug has serviceData: true
ble.0 2017-09-29 17:44:23.363 debug has advertisement: true
ble.0 2017-09-29 17:44:23.359 debug discovered peripheral 7c:2f:80:98:b8:57
ble.0 2017-09-29 17:44:22.741 debug serviceData = []
ble.0 2017-09-29 17:44:22.740 debug has serviceData: true
ble.0 2017-09-29 17:44:22.740 debug has advertisement: true
ble.0 2017-09-29 17:44:22.738 debug discovered peripheral 7c:2f:80:98:b8:45
ble.0 2017-09-29 17:44:21.744 debug serviceData = []
ble.0 2017-09-29 17:44:21.744 debug has serviceData: true
ble.0 2017-09-29 17:44:21.743 debug has advertisement: true
ble.0 2017-09-29 17:44:21.741 debug discovered peripheral 7c:2f:80:98:b8:45
ble.0 2017-09-29 17:44:21.367 debug serviceData = []
ble.0 2017-09-29 17:44:21.367 debug has serviceData: true
ble.0 2017-09-29 17:44:21.366 debug has advertisement: true
ble.0 2017-09-29 17:44:21.348 debug discovered peripheral 7c:2f:80:98:b8:57
ble.0 2017-09-29 17:44:20.744 debug serviceData = []
ble.0 2017-09-29 17:44:20.742 debug has serviceData: true
ble.0 2017-09-29 17:44:20.742 debug has advertisement: true
ble.0 2017-09-29 17:44:20.735 debug discovered peripheral 7c:2f:80:98:b8:45
ble.0 2017-09-29 17:44:20.358 debug serviceData = []
ble.0 2017-09-29 17:44:20.358 debug has serviceData: true
ble.0 2017-09-29 17:44:20.357 debug has advertisement: true
ble.0 2017-09-29 17:44:20.356 debug discovered peripheral 7c:2f:80:98:b8:57
ble.0 2017-09-29 17:44:20.033 info starting scan for services ['2a24','2a26','2a29','180f']
ble.0 2017-09-29 17:44:19.662 info monitored services: 2a24, 2a26, 2a29, 180f
ble.0 2017-09-29 17:44:19.661 info enabled plugins: _default
ble.0 2017-09-29 17:44:19.659 info loaded plugins: Mi-Flora, _default
ble.0 2017-09-29 17:44:19.556 info starting. Version 0.3.1 in /opt/iobroker/node_modules/iobroker.ble, node: v6.11.3Gruß, Eric
-
Hmm, was sagt die App über die serviceData von 7c:2f:80:98:b8:45 und 7c:2f:80:98:b8:57 ?
Laut log steht da angeblich nix drin.