CANDY-LINE / node-red-contrib-generic-ble

A Node-RED node set for providing access to generic BLE peripheral GATT characteristics.
Apache License 2.0
24 stars 22 forks source link

cannot receive notification from Bluetooth device #39

Open sameerapip1 opened 4 years ago

sameerapip1 commented 4 years ago

When we try to get the notification we receive the following error. When using the same command in the NRF command it gives the data correctly.

(node:4511) UnhandledPromiseRejectionWarning: DBusError: Operation failed with ATT error: 0xff at _methodReturnHandlers.(anonymous function) (/home/pi/.node-red/node_modules/dbus-next/lib/bus.js:339:27) at handleMessage (/home/pi/.node-red/node_modules/dbus-next/lib/bus.js:98:11) at EventEmitter.MessageBus.conn.on (/home/pi/.node-red/node_modules/dbus-next/lib/bus.js:147:9) at EventEmitter.emit (events.js:198:13) at /home/pi/.node-red/node_modules/dbus-next/lib/connection.js:112:14 at Socket. (/home/pi/.node-red/nodemodules/dbus-next/lib/message.js:63:9) at Socket.emit (events.js:198:13) at emitReadable (_stream_readable.js:555:12) at process._tickCallback (internal/process/next_tick.js:63:19) (node:4511) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4) (node:4511) UnhandledPromiseRejectionWarning: DBusError: No notify session started at _methodReturnHandlers.(anonymous function) (/home/pi/.node-red/node_modules/dbus-next/lib/bus.js:339:27) at handleMessage (/home/pi/.node-red/node_modules/dbus-next/lib/bus.js:98:11) at EventEmitter.MessageBus.conn.on (/home/pi/.node-red/node_modules/dbus-next/lib/bus.js:147:9) at EventEmitter.emit (events.js:198:13) at /home/pi/.node-red/node_modules/dbus-next/lib/connection.js:112:14 at Socket. (/home/pi/.node-red/nodemodules/dbus-next/lib/message.js:63:9) at Socket.emit (events.js:198:13) at emitReadable (_stream_readable.js:555:12) at process._tickCallback (internal/process/next_tick.js:63:19) (node:4511) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 5)

Does anyone have any suggestions? Thank you

dbaba commented 4 years ago

The error was thrown by BlueZ's gatt_client.c module, which means the issue is related to raw packet problem and out of Node-RED/Node.js process scope. So you may want to check the connection between your BLE device and your Node-RED host device by using BlueZ CLI commands such as bluetoothctl, or other dbus CLI tools to test the packets and commands.