I flashed a program via JTAG which hibernates almost as soon as the program starts. In retrospect, this was a very stupid thing to do. I'm trying to figure out how to flash a different program on it now.
If I try to normally flash, I get a debugger error that the probe can't connect - the device is hibernating. If I try to toggle the GPIOHIBWAKE line, that doesn't work either though the exact error message varies. I've tried driving the GPIOHIBWAKE line from another microcontroller using a PWM output (frequencies 10 khZ - 100 kHz) and never could get the device out of hibernate long enough for the debugger to connect. I've also tried toggling the RST line though that was just by manually grounding it.
I don't think my debugger uses the JTAG_NTRST line which I thought might bring the chip out of hibernation.
My last thought was to try to lift GPIO 84 (boot mode pin 0). Unfortunately, both the boot pins are connected to 3.3V and the traces can not be cut because they come from underneath the processor. I've tried lifting the pin, but didn't have much luck.
Has anyone been able to re-flash a device after loading such a program?