https://github.com/lancaster-university/microbit-dal/blob/master/source/bluetooth/MicroBitDFUService.cpp#L105
printf(" ACTIVATING BOOTLOADER.\n");
This causes an out-of-memory panic if doing DFU with debug enabled.
I added a SERIAL_DEBUG->printf each side of it - only the first gets sent before the panic.