Bricked Photon/P0 boards - JTAG to the rescue?

Hello there lovely forum! I do believe I’ve bricked a few of my boards, and any help in rescuing them would be appreciated. They cannot be put into listening mode, safe mode, DFU mode, or any other mode by pressing and holding buttons. They’re also drawing very little current. My assumption here based on digging around the forums is that I may be able to rescue at least a couple of them via JTAG.

I have a J-Link, and while the software provided (Ozone, OSX) doesn’t seem terribly robust, it has allowed me to, at the very least, connect to one of the Photons via JTAG; I can probably dump the entirety of flash to a bin file as well. I can also reload the bootloader - which I have done, and which does not change the behavior.

Has anyone had any experience unbricking P0 modules with this tool (or others)? FWIW, I can’t seem to find expanded resources on this. Several mentions of bricking P0s in this forum has resulted in a dev saying “message me for help” - which is phenomenal, but I don’t want to bother them every time one of these boards stops responding! With other MCUs (Atmels, to be specific) I can get directly into registers and fuse bits and properly unbrick. I just can’t seem to find where any of this is located within these STM chips.

Update: I actually just sorted this out via embedded SWD rather than JTAG.

Hey @aldenderfer,

Just like to understand more on how the units got bricked!

I’m not entirely sure, @kennethlimcp. It happened somewhere in the time between [1] entering wifi credentials via the CLI and [2] being able to see the device connected to the cloud in Dev or Build. Perhaps some fuse bits weren’t set or cleared properly during a reset? One of the goofy [read: foolish] decisions we made when designing the P0 boards was not to include the RGBLED, which means much of our initial debugging of these devices has been blind, so to speak. Sorry that I can’t be more insightful.

1 Like