Unreliable connection

Posted on
  • I got my Bangle.js 2 today, and the first thing I did was to head to the app loader to do a firmware update, and set the time.

    The Bluetooth connection seems to be very unreliable. I have the device paired, at least it shows that way in the app loader popup, and the button top right shows "Disconnect", implying it's got a connection.

    However clicking on the hamburger to configure and upload either produces a popup warning me that this is only good on the Bangle.js 2, never mind that I already told the web page that I have a Bangle.js 2, or it just turns into a spinning icon that spins forever and does nothing.

    I'm getting the same results in both Chrome and Edge, so it's not a browser issue.

    Before you ask, Bluetooth is turned on and working on both the computer and the Bangle.js 2. I can see both my computer and the Bangle.js 2 advertising when I scan for devices on my phone. Plus the app loader page does show a "Disconnect" button, and the fact that it's paired with the watch, so everything should be working.

  • Maybe try both the main and development app loaders:

    And if you want to you can try mine as well, but should be the same as the development one above:

  • Are you talking about connecting to the Espruino IDE or to the app repository? Have you tried connecting to a smartphone? The connection to the app repository is very reliable for me with several android devices.

    I know that in many USB3 wifi dongles BT is disabled, even if the chipset inside supports it, and for many dongles that don't disable it the connection is very unreliable. It seems that designing the circuit so USB3 and BT don't affect the other is quite tricky (for the frequencies that USB2 uses there is no problem).

    Also, I don't know how good the BLE support is with BT devices in computers. Is that the reason why many BT mouses have their own usb dongle?

  • This is the app repo at https://banglejs.com/apps/ . I'm not yet to the point of connecting to the IDE. I need to get the firmware up to date on the watch before I'll even consider putting a custom watch face on it.

    There's no issue with the computer Bluetooth. It's a laptop with wifi built in. Device manager shows all the necessary devices, all claim to be working correctly, and driver update tells me the best drivers are already installed.

    And if you note in the last paragraph of my message

    1) my phone can see both the computer and the Bangle.js when I have it scan for Bluetooth devices, proving that Bluetooth is working on the computer.

    2) The computer does pair with and connect to the Bangle.js, becayuse the popup says "paired", and the button shows "Disconnect" which kinda implies we've got a connection.

    It's just that the actual firmware upload fails. 

    -- LATER --

    Doing a little research, it looks like BLE support on the laptop may be a bit dodgy. I tried browsing to the app loader on my smartphone and got a bit further. I got it connected, and the hamburger in the Firmware Update now reports I'm on 2.18, and that 2.19 is available.

    Update is in progress now, we'll see how this goes. Thinking ahead, this seems to indicate that I'll have to use my phone to upload apps to the watch. This will be a bit of a pain vs direct upload from the IDE, but any port in a storm, I guess.

    -- EVEN LATER --

    Yeah, it definitely looks like BLE is pooched on the laptop. I tried it again on the laptop this time from within the IDE. Similar result to App Loader: it sees the Bangle.js claims it's paired, but then hangs at "Connecting".

  • However nothing I could do would actually make the upload happen. I may be a bit stupid here, but why isn't there a big friendly "UPLOAD" button on the page?

    From memory, I think that you have to touch the version you want to upload (the development version is at the end). Then an UPLOAD button appears at the end, you touch it and the upload starts. Yes, maybe not very intuitive. I hope this works for you.

  • Yeah. I got that when I tried it on the phone. The laptop never even got to the point of showing me the available versions to upload. So I'd guess that you're correct that BLE is broken. Which is kinda a surprise, since it's a builtin Bluetooth chip, not a USB dongle, which supposedly has BLE. At least it can see the watch and pair with it. it just can't actually talk once it's connected.

  • Doing a little research, it looks like BLE support on the laptop may be a bit dodgy.

    What is impressive is in smartphones, with all the high speed signals (memory, storage, usb3, sdio, mipi dsi, mipi csi), wifi, bt (including ble), gps, several antennas etc. all that cramped in a small volume and everything works so well. As Gordon said a few days ago, we are so used to have a gps in the smartphone that works so well and gets connection pretty much everywhere, that we forgot how unreliable was pre-smartphone gps.

  • @dgnuff have you tried a reboot of your PC (or even turning Bluetooth off and on again)? It's surprising how often PC bluetooth adaptors get themselves confused.

    You could also try going to More... in the App Loader and enabling Bluetooth Compatibility mode (limit to 20 byte writes) and trying to reconnect again?

    I know a while back there were some folks that had an issue when they attempted to connect to the Bangle while they were also connected to a Logitech bluetooth keyboard. It was totally a PC bluetooth adaptor driver issue, and I'm not sure if it ever actually got resolved - but in that case I seem to recall the Bluetooth Compatibility mode fixed it

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Unreliable connection

Posted by Avatar for dgnuff @dgnuff

Actions