Great that you got the bootloader flashed with the programmer. Did you erase the flash beforehand? If not, maybe there’s a dodgy patch causing the firmware to hang.
On a related note, I’ve been meaning to add IWDG functionality, ie set up the built-in watchdog so that if the firmware (or a patch) hangs, it reboots into bootloader mode. But first I need to verify that we can do it without breaking support for existing (and shipped) versions of the bootloader.
Soldering the header: if it will make it easier for you to contribute to the project, then I would say do it
.
The SWD pins are not used on the Magus analogue board, so you could even just remove the existing header pins and put new, regular ones in on the back. Just make sure that the ribbon cable that goes over the back of the digital board still fits.
Alternatively you could populate the little 5-pin PicoBlade connector, that is what we use here for debugging. Very handy for a small, removable connection. The connector breaks out VREF, SWCLK, GND, SWDIO and NRST pins.
btw have you tried debugging with gdb remotely, using the programmer? It’s really magical stuff, you can single step et c directly on the device, just like you would a locally running program.