I think the underlying problem is something is not right in your Debian install… if you don’t get the second part of this output… it doesn’t matter what version of PIO you use… something is stopping the STM32s from enumerating as a serial device.
I don’t pretend in any way to fully understand the process, but I am in the belief that once a sketch is on the device (hence why we’re told to upload the blink sketch so that a sketch is loaded after the DFU bootloader is written), it will enumerate as a usb serial device, with a VID:PID of 1eaf:0004
. When that is the case, when you program the device, it resets the 1eaf:0004
device, which triggers the bootloader, which enumerates as 1eaf:0003
for about 2 seconds, and then starts the user program, hence 1eaf:0004
appears. In other words, I have merely plugged in the usb lead, and first the DFU bootloader has been detected, and then the blink sketch that was programmed started up after about 2-3 seconds without touching the device. If I run the maple-reset
command… it should cycle through those two states without me even touching it.
I probably won’t have time to look at this tomorrow, so it maybe Sunday before I can look into this further. It might be worth seeing if you’re suffering from the same problem I was with a Arduino Micro, which is that the ModemManager service was stopping it resetting properly. You can do a sudo systemctl stop ModemManager
and that will simply stop the service. If the device properly enumerates, you’ve found your culprit. If you don’t use a USB modem, you can probably just disable that service using sudo systemctl disable ModemManager
as stopping it will only last until you reboot.