You are reading a single comment by @AkosLukacs and its replies. Click here to read the full conversation.
One thing you may try: try to put it into bootloader mode with the DSD6 app. Absolutely no idea whether that clears the watchdog, or what might happen, but may work. Probably wait for you watchdog timeout, before trying to reflash, so it doesn't restart the watch while flashing, and bricks it even more :)
Just a big warning related to watchdog. I just managed to brick HX03W while doing upload from Espruino WebIDE. The default is calling reset() before upload, which is normally sane thing to do but it interacts with watchdog in unfortunate way. reset() clears your watchdog pinging routine but not the watchdog itself as it is not real CPU reset and then starts upload. If upload does not finish in time you get watchdog reboot in the middle of upload. For me this causes my HX03W to not start properly now.
I see nothing in serial console and bluetooth device can be seen but cannot be connected to UART service. So now I need to open it or wait until battery dies and then try to hold the button while powering on. Hopefully it will skip loading the partially saved code.
So just beware it is not that easy with the watchdog. One safe way to upload is first clear code via require("Storage").erase(".bootcde") and then call reset() manually, then wait for watchdog reboot and only then upload new code. Or run everything in RAM until code is finished and stable.