Having my Seeduino XIAO bricked (aka it did not show as a COM device on my computer), I did some research on how to fix it.
There are some good helpers in the seeduino forum, on medium or on by leo, but I did not have an ST-Link, any luck with the double-tap-resetting or a BlackMagic Probe.
But I did have a WiFi DevBoard for the Flipper Zero which infact is a BlackMagic Probe accordign to their website.
Besides the broken XIAO and a BlackMagic Probe, you need a gdb (usually somewhere new your Arduino locations where it is already available with the Seeduino package) and the firmware for the XIAO. Get the latter from their github here.
Prepare the cabling:
- USB-C for computer to devboard
- Attach jumper wires to IO1 (SCLK, orange), GND (grey), IO2 (SWDIO, red) and 5V (green)
- Connect 5V and GND to VCC and GND on the XIAO and plug in the USB-C
- Figure out the COM port for your devboard
And now, to the gdb-mobile:
- Convert the bin file to elf format:arm-none-eabi-objcopy --input-target=binary --output-target=elf32-little.\bootloader-XIAO_m0-v3.7.0-33-g90ff611-dirty.bin xiao.elf
- Connect SCLK and SWDIO to the pins on the bottom of the XIAO like so:
- Start gdb and follow those commandos:
arm-none-eabi-gdb.\xiao.elf(gdb) target extended-remote COM8(gdb) monitor swdp_scan(gdb) attach 1(gdb) load(gdb) compare-sections(gdb) kill
Now plugging in the XIAO directly into your computer should have revived it, showing up in the COM devices and again being able to load something via the Arduino IDE or similar. :)
Comments