SAMD21 Pro RF bricked?

A SAMD21 Pro RF board failed an upload (via BOSSAC 1.9) and now it appears unresponsive. The fatal error appears to have been:

Erase flash
chipErase(addr=0)

Done in 5.005 seconds
Write 32712 bytes to flash (512 pages)
[                              ] 0% (0/512 pages)write(addr=0x20004034,size=0x1000)
writeBuffer(scr_addr=0x20004034, dst_addr=0, size=0x1000)

SAM-BA operation failed

After this error, the board doesn’t register on USB and doesn’t react to double-reset command; it just sits there with the red PWR light solid on.

Did I brick the bootloader, and what’s the next step from here?

Hi thomask,

Based on your description, it definitely sounds like the bootloader was corrupted and the board is bricked. There’s not really an easy way to recover it unless you have an ICE/JTAG programmer to re-upload a bootloader to it. In order to get a better idea of what may have caused the problem, can you please provide more information about what exactly was going on when the error popped up? What development environment were you using and what code were you uploading?

Hi Mark, thanks for the reply even though it’s not great news.

When the error happened, I was using bossac 1.9 on Linux 3.10.0 (Centos 7), from command line, to install a closed-source image on the SAMD. The full command line that ended in the error above was:

bossac -d -i --port=/dev/ttyACM0 -e -w -v image.bin -R

It’s possible, though not 100% certain, that a USB-powered USB hub that I was using at the time may have contributed to this error.

I don’t have a JTAG programmer (only an AVR one), but should be able to borrow one if necessary. Can you please advise what the next steps will be with the JTAG?

Thanks again

Unfortunately, we do not have any specific information for restoring the bootloader on your Pro RF but this [ARM Programming Tutorial will go over the basics and we have the firmware and bootloader files hosted on the [Pro RF GitHub Repository.

I hope this helps!](SAMD21_Pro_RF/Firmware at master · sparkfun/SAMD21_Pro_RF · GitHub)](https://learn.sparkfun.com/tutorials/arm-programming)