CW Nano Stuck in Bootloader Mode

Something seems to have failed in a firmware update on my CW Nano and it’s gotten stuck in bootloader mode. The USB and Error LEDs are dimly lit up and the device shows up on /dev/ttyACM0 as it’s supposed to.

lsusb shows me this: Bus 002 Device 004: ID 03eb:6124 Atmel Corp. at91sam SAMBA bootloader and the udev rules seem to work as I have a device /dev/cw_bootloader0 that links to `/dev/ttyACM0’.

I’ve tried to run cw.program_sam_firmware(hardware_type='cwnano') a few times and it seems to always run into a timeout error when trying to connect to the port almost immediately (seems like a very short timeout) and then if I try to run it again it just hangs on Connecting...

So far nothing seems to get through to it. I haven’t tried using another computer and probably won’t be able to for a few days, but I have to imagine that there’s a way to fix this with my current setup. I’m running Arch Linux, through everything up until now has worked perfectly with only minor modifications.

I was able to reprogram it using cw.program_sam_firmware(hardware_type='cwnano') on a friend’s setup which used Ubuntu. Not sure why it wasn’t working on Arch when everything seems to indicate that it should have worked, but oh well.

Good to hear you got it working. This is a bit of a known issue, but I’m not sure what the actual cause is, as we never get any sort of error code from PySerial and I haven’t been able to replicate it on any machines.


I’d be happy to try to replicate it again and aid in the efforts to solve this if anyone can point me in the direction of what to start looking at.

If you did want to look into it, can you try running dmesg | grep tty and posting the result? Maybe also try lsof /dev/ttyACM0 to see if anything else has the file open.