// This is a DataView, but:
{"buffer":[72,101,108,108,111,32,87,111,114,108,100,33,10],"byteOffset":0,"byteLength":13}
// Converting it to a String gives:
var dv = {"buffer":[72,101,108,108,111,32,87,111,114,108,100,33,10],"byteOffset":0,"byteLength":13};
print(E.toString(dv.buffer))
// Hello World!
Could the Softdevice error BLE error 0x11 (BUSY) error be because you might have been trying to connect when a device was already in the process of connecting? That does seem a bit strange.
But in general you would expect the connection to fail sometimes, especially as you'll be connected to Bangle.js via Bluetooth already so it's trying to juggle connecting, but also doing communications with the host PC at the maximum datarate it can handle.
Also Bangle.js's bluetooth range isn't actually that great, so I guess that could cause you issues as well.
I'd be interested to know whether it's actually any more reliable when you're not connected by PC, or if you run NRF.setConnectionInterval(100) to force bangle.js to use a lower-datarate connection to the PC (the default is NRF.setConnectionInterval(7.5))
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
What's the unexpected response you're getting?
Could the
Softdevice error BLE error 0x11 (BUSY)
error be because you might have been trying to connect when a device was already in the process of connecting? That does seem a bit strange.But in general you would expect the connection to fail sometimes, especially as you'll be connected to Bangle.js via Bluetooth already so it's trying to juggle connecting, but also doing communications with the host PC at the maximum datarate it can handle.
Also Bangle.js's bluetooth range isn't actually that great, so I guess that could cause you issues as well.
I'd be interested to know whether it's actually any more reliable when you're not connected by PC, or if you run
NRF.setConnectionInterval(100)
to force bangle.js to use a lower-datarate connection to the PC (the default isNRF.setConnectionInterval(7.5)
)