BLE task completed that wasn't scheduled (3) refers to the fact it disconnected when it was in the middle of doing task 4 (which was 'Find primary service'). The new firmware should fix that error (it may still disconnect but I believe you'll get a disconnection error code that might help for debugging).
I'm not sure why it appears to have gone through the promises while the firmware still thinks it's searching for services. Still, it'd be worth trying with the new firmware. If your Bangle.js had the Nodeconf firmware I think that was before this got added.
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.
Can you try one of the latest builds from: http://www.espruino.com/binaries/travis/master/
BLE task completed that wasn't scheduled (3)
refers to the fact it disconnected when it was in the middle of doing task 4 (which was 'Find primary service'). The new firmware should fix that error (it may still disconnect but I believe you'll get a disconnection error code that might help for debugging).I'm not sure why it appears to have gone through the promises while the firmware still thinks it's searching for services. Still, it'd be worth trying with the new firmware. If your Bangle.js had the Nodeconf firmware I think that was before this got added.
edit: just for the curious, BLE task numbers are listed here: https://github.com/espruino/Espruino/blob/master/libs/bluetooth/jswrap_bluetooth.h#L22