Bad hardware / bootloader problem on banglejs 2?

Posted on
  • Greetings! I booted up my Bangle.js 2 yesterday for the first time, and after a bit of time with things essentially working, the screen started "scrambling". Generally it looks like complete lines are being drawn, but sometimes it skips them or draws them out of order.

    Hoping that a firmware update would fix it, I upgraded to v15, which appeared to install correctly, but the scrambling continued. And today it's barely able to do anything, e.g. booting tends to not even reach the (scrambled) clock face. Though oddly, when it does, the (default) settings app tends to render perfectly until I tap a few too many times.

    Since I can't even get to the settings screen to pair with the website, I've got the nRF toolbox / firmware updater installed on my phone and can boot to DFU and get an update installed that way (it fails ~immediately from the IDE)...

    ... but as you can see in the screenshots, it's even scrambling while showing the reboot progress bar. In DFU mode, the third or fourth line of text (e.g. "connect" and I forget the next one when uploading) also consistently has the top line of pixels chopped off and displayed ~1.5 lines further below.

    And now after a few more reboots, it seems kinda persistently stuck before even showing the bangle boot screen / the clock (last picture, with "booting...", hopefully these appear in the order I uploaded them).
    (edit: nope! backwards. bah. is there a way to display them inline?)

    Is there something else I should try to recover this? E.g. could the bootloader / its storage be corrupt somehow, and is there a way to rewrite it? Previously I'd consistently get a "check storage" line while booting, but it's either not reaching that state now, or one of the firmware updates fixed that part.

    Or could this be a sign that the hardware is bad?

    4 Attachments

    • PXL_20220816_191959023.MP.jpg
    • PXL_20220816_191950839.jpg
    • PXL_20220816_190509017.MP.jpg
    • PXL_20220816_190247234.MP.jpg
  • Hi,

    Sorry to hear it's stopped working - that's amazingly strange behaviour. I haven't seen anything like that before!

    While some of the garbling you see there could be a bad connection to the screen (maybe the connector came off partially in transit) the screen itself should only be capable of displaying 8 colors (no greyscale) so the fact you seem to be seeing a pretty convincing grey on there is itself a bit of a worry!

    Apart from it being a complete hardware failure (in which case of course we'd replace it for you) there's a small chance that the LCD hardware itself has experienced a 'lock up' (I've seen LCDs turn on 'inverted' in the past, but not this!).

    Unfortunately LCD power is connected straight to the battery, so the only way to power cycle it is to flatten the battery. Please could you:

    • Hold the button down for around 10 seconds. This should be enough to cause the watch to reboot, exit the bootloader, and boot back into Espruino with the button still held, which will stop it loading any code or any of your saved settings
    • You should now be able to go to on your laptop and connect (top left)
    • Now paste the following into the left-hand side:

      if (Bangle.setGPSPower) Bangle.setGPSPower(1,"flat");
      if (Bangle.setHRMPower) Bangle.setHRMPower(1,"flat");
      if (Bangle.setCompassPower) Bangle.setCompassPower(1,"flat");
      if (Bangle.setBarometerPower) Bangle.setBarometerPower(1,"flat");
      if (Bangle.setHRMPower) Bangle.setGPSPower(1,"flat");
      setInterval(function() { var i=1000;while (i--); }, 1);

    This should turn pretty much everything on in the Bangle and will hopefully flatten its battery in a few hours.

    Then after it turns off, put it on charge (don't turn it on yet) for a few hours, and then try and restart it. And fingers crossed it might work again after that

  • I've gotta admit, I'm pretty entertained that the advice is essentially "turn it off and on again. harder, [faster,] better[, stronger]."

    Or maybe the Kylo Ren meme is more appropriate

    It really is a magical fix.

    I will give that a try, thanks :) In retrospect, the grays really are strange aren't they? I hadn't thought about that. Kinda seems to imply it's not just a flaky connection or something, particularly with how consistent they are.

    At the moment the backlight is stuck "on", so it might get there pretty quickly on its own. Or will toggling everything be substantially more power draw?

  • Yes, it's a pain but since all the hardware is always powered, it's pretty much the only fix for anything outside of the CPU :(

    Or will toggling everything be substantially more power draw?

    It should be at least double... The backlight is a huge power hog, but so is GPS :)

    In retrospect, the grays really are strange aren't they?

    Yes! If we could figure out how to get that to happen reliably it'd make a lot of people very happy!

    The greys can happen as kind of a 'ghosting' effect where you get (temporary) burn-in if a certain wire to the LCD isn't toggled often enough, but I'm not entirely sure that's the issue here.

  • The images are not that clear, but could it be that the gray is just an interlaced black (i.e. some pixles of the black don't work)?

  • Unfortunately it's still scrambling even at boot, after a full drain + sitting dead for a while.

    re gray vs black: it's visibly less-gray after the drain, so in some ways it's improved, though perhaps less interesting now :) The mis-placed lines are still somewhat less black than normal ones though.

    2 Attachments

    • PXL_20220822_072837053.MP.jpg
    • PXL_20220822_072839346.jpg
  • Hi @Groxx,

    please send me an email to We'll sort out a replacement.


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

Bad hardware / bootloader problem on banglejs 2?

Posted by Avatar for Groxx @Groxx