I'm now stuck at the same position as the one described at the top.
My Bangle.js 2 got very slow after the last firmware update, which is why I tried to compact the storage. Afterwards half of the apps were gone. Therefore I've reinstalled all the default applications and then did a factory reset. After the factory reset I got stuck at the DFU screen.
Pressing the button only takes me back to the DFU screen.
I've tried to do a firmware update on my Mac (macOS v12.1) with the WebIDE in Google Chrome, but it just fails with the "Uncaught (in promise) Error: The state of the DFU process does not allow this operation" error message.
I've also tried to do a firmware update with the nRF Connect app on my iPhone (iOS 15.1), but I just got a "XYZ bytes were sent while 0 bytes were reported as received" error message followed by a "Disconnected by the remote device" log message.
Now I'm just watching how the DFU screen slowly drains the battery as I don't know how to turn off the watch.