CW1173 is stuck in bootloader mode after firmware update

Hi.

Yesterday I tried to update firmware using chipwhisperer/jupyter/ChipWhisperer Firmware Upgrade python file in the folder. After that, my PC can’t detect the device and the light on the capture board is gone. I tried to re-plug, but nothing changed.

Is there any way to reset my device or escape bootloader mode?

Thank you :slight_smile:

Hi,

Do you not see any lights on your device at all? Generally you should see a dim blue and a dim red LED.

Also, what operating system are you running on? Are you running natively or in a VM?

Alex

Thank you for reply Alex,

Yes I can see dim red and dim blue light on the capture board.
I use Linux and Windows by dual booting on my PC, and it doesn’t work on both systems.

kkt

If you go into Device Manager in Windows, can you see anything under Ports (COM & LPT)?

Yes, several devices are here, but I’m not sure whether one of them is the capture board.

By the way, I can see ‘STM32 STLink’ port.

Does one disappear when you unplug your chipwhisperer?

Nothing changed :frowning:
I unplug and put it back repeatedly, nothing appear or disappear in Device Manager.

Also, I tried to update firmware again using ChipWhisperer example jupyter notebook file, but it said USB device not found.

Thank you for helping me TT

Can you try shorting the erase pins while plugged in, then try unplugging + replugging? (CW1173 ChipWhisperer-Lite - NewAE Hardware Product Documentation).

If that doesn’t work, can you boot into Linux and send me the result of lsusb -v?

Alex

Alex, This below is the result of lsusb -v in Linux. I found two of them except my speaker, web cam, etc.

I tried short the erase pins, but it doesn’t work.

Thank you.

Bus 001 Device 012: ID 03eb:6124 Atmel Corp. at91sam SAMBA bootloader
Couldn’t open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x03eb Atmel Corp.
idProduct 0x6124 at91sam SAMBA bootloader
bcdDevice 1.10
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0043
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 0
iInterface 0
CDC Header:
bcdCDC 1.10
CDC ACM:
bmCapabilities 0x00
CDC Union:
bMasterInterface 0
bSlaveInterface 1
CDC Call Management:
bmCapabilities 0x00
bDataInterface 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 16
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0

Bus 001 Device 008: ID 0483:3748 STMicroelectronics ST-LINK/V2
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0483 STMicroelectronics
idProduct 0x3748 ST-LINK/V2
bcdDevice 1.00
iManufacturer 1 STMicroelectronics
iProduct 2 STM32 STLink
iSerial 3 UÿopRW02g
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0027
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 4 ST Link
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
can’t get device qualifier: Resource temporarily unavailable
can’t get debug descriptor: Resource temporarily unavailable
Device Status: 0x0000
(Bus Powered)

Can you try adding this line to /etc/udev/rules.d/50-newae.rules: SUBSYSTEM=="tty", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="6124", MODE="0664", GROUP="plugdev", SYMLINK+="cw_bootloader%n".

If you’re not already a part of the plugdev group, add yourself, then log out/in.

Alex

I added the line as the capture below,

but after that, the command sudo udevadm control --reload-rules results the error.

image

Thank you.

I don’t think I’ve seen that error before. Does that command work if you replace that rules file with the one at chipwhisperer/50-newae.rules at develop · newaetech/chipwhisperer · GitHub?

Alex