Did i just fry my odrive 3.2?

ooops, I wanted to take a photo of the reflash dongle near the board to document connected pins and i didn’t realise the board was powered on under 18V

As I was struggling with getting the focus right on my smartphone, the USB connector of the dongle accidently touched the board (near the squared component positionned on 45° angle with “U2” labeled nearby) and sticked to it (like some sort of magnet effect?!?). At this moment the power supplied made a crying beeep and automatically turned off (exactly like when there is a short or excesive current consuption above the PSU limit (10A)).

I immediately put the USB dongle far away. powered off and on again the board. the motor initialization sequence no longer works (motors do not move at all + no beep). I see -0.08A consumption from the board on the PSU?. and since odrive 3.2 got no LED activity i don’t really know what’s happening. that said the LED indicator on the USB does not flash at all…

I do see ST-LINK/V2 on lsusb so the dongle might not be dead yet (its LED does not flash though)

However the “make flash” commands immediately failed (see below). i’ll try with another usb reflash tool later.

Did I fry m odrive 3.2 for good? What can i do to fix it?


root@MTBD00694:~/ODrive/Firmware# make flash
openocd -f interface/stlink-v2.cfg -f target/stm32f4x.cfg -c init -c reset\ halt -c flash\ write_image\ erase\ build/ODriveFirmware.elf -c reset\ run -c exit
Open On-Chip Debugger 0.9.0 (2018-01-24-01:05)
Licensed under GNU GPL v2
For bug reports, read
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'.
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
adapter speed: 2000 kHz
adapter_nsrst_delay: 100
none separate
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : clock speed 1800 kHz
Info : STLINK v2 JTAG v17 API v2 SWIM v4 VID 0x0483 PID 0x3748
Info : using stlink api v2
Info : Target voltage: 3.240795
Info : stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints
target state: halted
target halted due to debug-request, current mode: Thread 
xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
auto erase enabled
Info : device id = 0x10076413
Warn : STM32 flash size failed, probe inaccurate - assuming 1024k flash
Info : flash size = 1024kbytes
Error: stm32x device protected
Error: failed erasing sectors 0 to 4

Makefile:13: recipe for target 'flash' failed
make: *** [flash] Error 1

Hm yes something is dead, but I can’t be sure if it’s the ODrive or the ST-Link.

using the same ST-Link, I managed to reflash another odrive 3.2. my system is back to normal. I guess my other 3.2 is dead now.

one advice: just remove the ST-Link once the board is flashed. and it seems all compile time params can be selected at runtime. I still need to figure out for the number of magnets pairs and the counter per revolution of the encoder => to make sure the calibration phase works as intented regardless of the encoder/motor actually used)

is anyone interested in my dead odrive? maybe it’s got nothing serious that a good eye could identify and fix?