Have you tried holding the button a bit longer? It looks to me like you're releasing is as soon as the screen changes, but as a result you're not holding it long enough for the watch to actually do a full reboot.
Also, it looks from that like somehow the contents of storage have been erased - in which case you'd have to go into the app loader, about, and install default apps
Hi Gordon, thank you for answering. Yes, I have tried pressing in the button for much longer. Then it just keeps cycling back to the screen you see in the video. There are apps on it. When, 1 in 50 times, it actually gets to the clock, I can click the button and get the menu, settings, about app and so on.
The reason I immediately release the button when the screen changes in the video, is that I figured out that that gave me the best chances of it getting past that "Storage OK" screen.
EDIT: Hang on, I'll upload a video where I keep the button pressed and also, after several cycles, manage to get it to the clock and can show the menu.
Here's the video showing a much longer press, and eventually getting to the clock:
Maybe @Gordon has some ideas, but I'd try a full reset:
Followed by an update to the latest cutting edge firmware:
It looks like the firmware is corrupted. It is possible to do this if you upload a file to FLASH using the Web IDE. Its a bit too easy to do this. If you can connect through the IDE try typing 'Bangle.factoryReset();' in the left hand side. See what happens. Then try reflashing the latest firmware. To do that you need to be able to get your Bangle to reboot to the DFU screen. Gordon has done a good video on this.
Dont worry - its pretty hard to brick these watches and as long as you can get Bluetooth connectivity you can usually recover them.
Thanks - that is really helpful. It looks to me like somehow the bootloader has been corrupted - I have no idea how!
Luckily there should be an easy fix for that - I'll update properly in an hour
Sounds great, looking forward to that. No idea myself. All I've done is connect to it through Chrome from my smartphone and also through Gadgetbridge. Yesterday I read about the firmware upgrade but never got anywhere with it. But I only did that after this problem occurred so...
Ok, so I've just deliberately erased the bootloader on a Bangle and I see exactly what you're getting (no blocky 'DFU' screen). So I guess what happened is somehow when programming yours we messed up - programming got as far as doing Bangle.js but not the bootloader at the end of memory.
But there's a fix - please nobody else try this without consulting me first!
- Download the attached file
- Open https://banglejs.com/apps
- Click on 'Firmware Update' - the first app, and connect to your Bangle when prompted
- Click on 'Choose File', choose the '.hex' file you downloaded, and click 'Upload'
- It'll take about 30s and will stay at 100% for a further ~10 sec
- Then it'll say 'hold button to reload'. Hold it for 10s or so and this time if all is well you should see the bootloader screen. Keep holding until '=====' goes across the screen and you re-enter Bangle.js though.
Now, it's probably best to update your firmware just in case as well - you can use the same Firmware Updater for this. Just go into it the same way but this time click the 'Cutting Edge build' link, then
Upload. That'll take a much longer time, but once done the watch should auto-restart into the new firmware.
You can then go into the App Loader again, go to 'About' and 'Install default apps' and finally it'll be sorted.
Sorry for all the hassle!
- Download the attached file
Thank you for the precise intructions. I followed them very closely, alas, no luck.
The attached firmware uploaded successfully and I was presented with the "Hold button to reload" message. So I pressed the button and kept pressing it. The boot screen came up with the "Storage ok" message, and I kept pressing it. But it was again stuck in that cycle. It never gets to the clock or the "=====" as you've mentioned. I've never seen those on the screen at any time.
So I decided to go ahead and open up the https://banglejs.com/apps link and connect to the watch while it was displaying the "Storage OK" screen. That works, and I can connect to the watch. I then went to "About" on the website on my phone and chose "Install default apps" (I chose "Remove all apps" first, which also went well). This worked, and it reinstalled all apps and I once again got the "Hold button to reload". Again, it got stuck at the "Storage OK" screen. I then reconnected through https://banglejs.com/apps on my phone again, and decided to try and upload the "Cutting Edge build" firmware as you mentioned through the "Firmware update" app. This took a while, but it got uploaded just fine and I again got the "Hold button to reload" message and it would load the clock, seemingly just fine. But when I pressed the button again for 10 seconds, I am right back in that loop where it gets stuck at "Storage OK", just like before. Nothing seems to have changed, unfortunately...
I've tried keeping it pressed for a minute, it just keeps cycling back to that "Storage ok" screen.
EDIT: Just noticed it still says "2v10.219" on the "Storage OK" screen, so I guess it didn't actually update the firmware although it uploaded something. The version chosen in the updater was "2v10.244".
@Gordon Might be that @Muldjord isn't seeing any results with the described method since it doesn't seem like the firmware updater in the App loader works. I just now tested updating to 2v10.244, and the fwupdater seems to get uploaded to the watch but when it reboots there's a quick "no new fw" before it boots up to 2v10.243 that I already had installed.
Hello! I have exactly the same problems as described here. Interestingly enough if I load or delete or change an app using the web interface the device becomes unbricked and I can do everything fine. However after each reset (10s buttonpress) the Storage Ok screen is up again and I have to do it again.
Using the firmware flasher does nothing (yes it uploads but thats it).
Also after uploading it doesn't wait the mentioned 10 seconds but just immidiatly goes to press to reload whereafter again I am on firmware 219 with the storage ok screen.
Also there seems to be no way to enter the ===== screen no matter how long or not I press the button.
today I received my Bangle.js 2 and I'm running into similar problems.
First I noticed that the screen goes black and a SW Reset is performed everytime I tried to access the "Set Time", "LCD" or "Theme" only using the touches and not the button. (Highlighting the desired entry and pressing the button works, though).
This is reproducible.
I then tried to reboot the watch with a 10s button press and got stuck at "Storage ok". Now and then it's possible to get past this but ending up in the behavior described earlier in this post.
Any help is appreciated. Thanks!
Ok, wow - sorry about this. I'm extremely surprised so many of these have had issues.
I realised later in the evening after I wrote this on friday that the bootloader is actually made of two parts - the bootloader and a few bytes at the end of memory that tell the device that there is a bootloader and where it is.
I'm still working my way through all the messages I got over the weekend, but I'll get back to this in a few hours, will do some more tests and get back to you - it should just be a single line to paste into the Web IDE needed to fix this (after the bootloader has been installed using the above steps).
I updated default apps and downloaded a few ones and some widgets something like 30 minutes ago, and I since have the same stuck-at-"checking storage... Storage ok"-screen issue (2v10.219)
I also can't find anything wrong with the apps, so I'll wait for a fix. Just wanted to mention this for more feedback :)
Edit : even if set to "stay connectable", the watch is now unable to connect to my smartphone. I didn't have this problem before the changes I did earlier, I don't know if it's linked to the main problem at hand here tho
@Camo if you long-press the button do you see the low-res 'DFU' text and the '=====' going across the screen? If so I don't think it's this issue, and it could be related to you just having held the button for too long - eg effectively you just accidentally followed these steps: https://www.espruino.com/Bangle.js2#resetting-without-loading-any-code
I tried holding the button when stuck on storage ok screen until the screen changes, and it worked, the reboot ended on the clock this time
My watch seems to work pretty well again- at least the whole storage ok screen process didn't reappear yet
Now the only issue that I'm aware of, is that I can't connect my phone to the watch (my phone can connect with other Bluetooth devices just fine, I just double checked that) and I'm a bit confused about that unexpected turn of event and new problem I admit ^^'
@Camo probably best start a new thread for that one, but 2nd entry in the FAQ could be some help: https://github.com/espruino/BangleApps/wiki
@Muldjord the firmware update needs the bootloader to work (it copies the file over while the Bangle is still running normally, then reboots and lets the bootloader update). As it seems the bootloader update didn't work, it didn't run and then couldn't update the firmware.
Please could I remotely access your Bangle? If you go to https://www.espruino.com/ide/relay/ in your PC/phone/whatever, then connect and send me a personal message with the displayed 8 digit key in, I should be able to connect to it from here and have a look and try and figure out what's happened.
I'm not sure what time it is there but I'll be around here for the next 3 hours at least - you'll have to leave the window open while I'm connected though so I can still access the Bangle
Sure, I can do that. It's 14:50 here right now. I'll probably be home in about an hour. Then I'll connect it up and update this message and PM you the code. Thanks.
I tried what's in the 2nd entry of the FAQ , but nothing works
Connecting from the App Loader gets stuck at this step :
(Also I'm fine with making a new thread if necessary of course !)
@fanoush I'm not sure if you'be got any ideas, but I'm really stumped now. I've connected to the phone, dumped the entire contents of flash and UICR and copied it to a device here - and I can reproduce the bootloader not working on my watch.
However I then fixed it by changing what's written at 0xFF000 and verified the bootloader worked on my watch. I then made the changes on @Muldjord's watch and verified with a CRC that flash on both was identical.
... but it's still not working on his watch, even though my presumably identical device works fine.
@Gordon So I am having the same issue. If you want to try another watch hit me up.
Is the updated bootloder always downloaded to the same address? Maybe you have a different bootloader address because of different apps and therefore need to point it to a different address? I am not familiar with the internal firmware yet but I will try to read up on it.
Hi. I'm around for a couple of hours as well. :-)
I just received my Bangle Js.2 a couple of days ago and I've had nothing but issues with it, from bluetooth constantly disconnecting, the watch freezing completely at random times (press, long press does nothing, I have to reboot it), and whenever I reboot it (press for 10 seconds) 49/50 times it will get stuck at "Storage OK" and nothing more happens. Then, seemingly random, sometimes it will actually get past that and show the clock.
I've made a short video showing this. I assume this isn't normal, right?