Most recent activity
Someone correct me if I'm wrong... but I believe what's happening here is that during the bootloader the bluetooth hardware is initialised before espruino starts to run, the fact that your other device had stored the bluetooth mac address means that it detects, recognises and shows up the device during this process. Then once it boots the bluetooth is disabled.
This is how you can flash and update the device when it powers up/doesn't boot. I expect the bootloader code could be changed to not activate bluetooth at all, but would make it less user friendly if it needed to be bootable to be able to flash.
I guess/expect that code could be added to set a permanent flag that the bootloader could read during initialisation (although I've not looked at the bootloader code), but again that would open the possibility of ending up with a non-flashable device.
I've not tried/done it from espruino... but in my nrf code the steps to get to DFU are:
- disable softdevice
- disable interrupts (NVIC->ICER & NVIC->ICPR [0&1] = 0xffffffff)
- write 0x57 into GPREGRET
- call NVIC_SystemReset()
Superb! and welcome!
and it's quite weird to not have to reverse engineer a device for a change
bah, but that's half the fun. 😉
So.... this will be "half a guide" reasons at the end. ☹
Disassembly was relatively straightforward if a little tricky, if I was more organised and had the setup I should have made a video, so I will try to describe. Can't see how to re-order pictures so attached show (pic 3) the black tape peeled away, (pic 4) the screen with the tape removed, (pic 5). all the backlight parts.
I used a soldering hot-air gun to soften the glue, but I expect a hair-dryer could be used instead just as effectively, firstly on the screen itself and then used a suction cup to pull the screen away.
The back of the screen is covered in a black plastic tape, this is very sticky and needs patience to remove, again - used the hot-air to soften the glue and peeled away from the top holding the screen back as it peeled, this tore where it joined the LCD cables at the base, I was assuming I'd just cut a strip of tape to replace it with, but it you're careful you could probably re-use this.
Next I used tweezers to pull the black plastic cover away, this seemed to be clipped around the edges.
Next (more warming) and the thin white plastic sheet is glued around the edges and needs pulling away again from the top, this should come away with the solid clear diffuser.
Now all the parts ready to fit to the new screen in reverse, place the white sheet into the black frame with the black edging upwards, LED's down (pic 2), then clip the frame onto the back of the LCD (pic 1), finally clip the diffuser into the back of the frame and connect the ribbon cable into the screen socket.
And now the failure. Connecting up the new screen discover that the watch was indeed destroyed in the accident and is completely dead, so I can't add a guide to finishing the reassembly and confirming that the backlight works.
Indeed, will take some pics and describe how it goes (assuming it's not an abject failure) 😁 also hoping the watch is still ok, it took quite a drop. 😬
Lifesaver Gordon! I just dropped my Q3 and smashed the screen. Hunted everywhere for matching/compatible/spare screens but finally found this. Fingers crossed.
Thanks! lots of jsiConsolePrintf's and using Bluetooth logging was just the ticket! (couldn't get RTT working, might try that again sometime).
All up and running now, going to be really handy having a permanently SWD connected unit to tinker with.
It only needs minor changes to work with this model (disabling GPS and IO expander, oh and speaker! and redirecting the IO lines).
Is there any interest/value in making a pull request for this? since I can't imagine there's going to be many people with one of these! or what it would be called either, it was just branded as F18, and was very cheap. It has a squarer edged case and metal strap.)
Perfect thanks, lots of ideas cheers! will give it a spin tonight. Having a huge amount of fun with these.