Help to connect my chipwisperer

I am writing to you because I have a problem with my chipwisperer which I just received a few days ago.
I can’t connect to it. I’m using the virtual machine in virtual box (the last version) and last realses (here Releases · newaetech/chipwhisperer · GitHub) in windows 10
i make this test in 3 differents pc and always this same error when i want to connect :


OSError Traceback (most recent call last)
/tmp/ipykernel_926/1654912759.py in
1 import chipwhisperer as cw
----> 2 scope = cw.scope()

~/work/projects/chipwhisperer/software/chipwhisperer/init.py in scope(scope_type, name, **kwargs)
255
256 if scope_type is None:
→ 257 scope_type = get_cw_type(**kwargs)
258 scope = scope_type()
259 try:

~/work/projects/chipwhisperer/software/chipwhisperer/common/utils/util.py in get_cw_type(sn, idProduct, **kwargs)
503
504 cwusb = NAEUSB_Backend()
→ 505 device = cwusb.find(serial_number=sn, idProduct=possible_ids)
506 name = device.getProduct()
507 cwusb.usb_ctx.close()

~/work/projects/chipwhisperer/software/chipwhisperer/hardware/naeusb/naeusb.py in find(self, serial_number, idProduct)
109 def find(self, serial_number=None, idProduct=None):
110 # check if we got anything
→ 111 dev_list = self.get_possible_devices(idProduct)
112 if len(dev_list) == 0:
113 raise OSError(“Could not find ChipWhisperer. Is it connected?”)

~/work/projects/chipwhisperer/software/chipwhisperer/hardware/naeusb/naeusb.py in get_possible_devices(self, idProduct, dictonly)
216 if len(dev_list) == 0:
217 raise OSError(“Unable to communicate with found ChipWhisperer. Check that
→ 218 \nanother process isn’t connected to it and that you have permission to communicate with it.”)
219
220 return dev_list

OSError: Unable to communicate with found ChipWhisperer. Check that
another process isn’t connected to it and that you have permission to communicate with it.

if i scan usb with usb-devices, i have this info :

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=480 MxCh= 0
D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=2b3e ProdID=ace2 Rev=01.00
S: Manufacturer=NewAE Technology Inc.
S: Product=ChipWhisperer Lite
S: SerialNumber=50203220313038543130333239323030
C: #Ifs= 3 Cfg#= 1 Atr=80 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
I: If#= 1 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=01 Driver=cdc_acm
I: If#= 2 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm

and with dsmeg :

Bus 001 Device 003: ID 2b3e:ace2
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2b3e
idProduct 0xace2
bcdDevice 1.00
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 98
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
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 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Interface Association:
bLength 8
bDescriptorType 11
bFirstInterface 1
bInterfaceCount 2
bFunctionClass 2 Communications
bFunctionSubClass 2 Abstract (modem)
bFunctionProtocol 1 AT-commands (v.25ter)
iFunction 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 1 AT-commands (v.25ter)
iInterface 0
CDC Header:
bcdCDC 1.10
CDC ACM:
bmCapabilities 0x02
line coding and serial state
CDC Union:
bMasterInterface 1
bSlaveInterface 2
CDC Call Management:
bmCapabilities 0x03
call management
use DataInterface
bDataInterface 2
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 2
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
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 0x06 EP 6 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0

if i disconnect the usb i have this error :


OSError Traceback (most recent call last)
/tmp/ipykernel_1155/1654912759.py in
1 import chipwhisperer as cw
----> 2 scope = cw.scope()

~/work/projects/chipwhisperer/software/chipwhisperer/init.py in scope(scope_type, name, **kwargs)
255
256 if scope_type is None:
→ 257 scope_type = get_cw_type(**kwargs)
258 scope = scope_type()
259 try:

~/work/projects/chipwhisperer/software/chipwhisperer/common/utils/util.py in get_cw_type(sn, idProduct, **kwargs)
503
504 cwusb = NAEUSB_Backend()
→ 505 device = cwusb.find(serial_number=sn, idProduct=possible_ids)
506 name = device.getProduct()
507 cwusb.usb_ctx.close()

~/work/projects/chipwhisperer/software/chipwhisperer/hardware/naeusb/naeusb.py in find(self, serial_number, idProduct)
111 dev_list = self.get_possible_devices(idProduct)
112 if len(dev_list) == 0:
→ 113 raise OSError(“Could not find ChipWhisperer. Is it connected?”)
114
115 # if more than one CW, we require a serial number

OSError: Could not find ChipWhisperer. Is it connected?

Do you have any idea what I could do?
Thank you.

Hi,

Can you try the following code:

import chipwhisperer as cw
cw.naeusb_logger.setLevel(cw.logging.DEBUG)
scope = cw.scope()

and report the output?

Alex

Yes Thank Alex, that gives me this:

INFO:ChipWhisperer NAEUSB:Found NAEUSB devices [<usb1.USBDevice object at 0x7f910a342e50>]
INFO:ChipWhisperer NAEUSB:Found NAEUSB devices [<usb1.USBDevice object at 0x7f910a342e50>]
INFO:ChipWhisperer NAEUSB:Attempt to access ChipWhisperer failed, skipping to next


OSError Traceback (most recent call last)
/tmp/ipykernel_1185/3483345807.py in
1 import chipwhisperer as cw
2 cw.naeusb_logger.setLevel(cw.logging.DEBUG)
----> 3 scope = cw.scope()

~/work/projects/chipwhisperer/software/chipwhisperer/init.py in scope(scope_type, name, **kwargs)
255
256 if scope_type is None:
→ 257 scope_type = get_cw_type(**kwargs)
258 scope = scope_type()
259 try:

~/work/projects/chipwhisperer/software/chipwhisperer/common/utils/util.py in get_cw_type(sn, idProduct, **kwargs)
503
504 cwusb = NAEUSB_Backend()
→ 505 device = cwusb.find(serial_number=sn, idProduct=possible_ids)
506 name = device.getProduct()
507 cwusb.usb_ctx.close()

~/work/projects/chipwhisperer/software/chipwhisperer/hardware/naeusb/naeusb.py in find(self, serial_number, idProduct)
109 def find(self, serial_number=None, idProduct=None):
110 # check if we got anything
→ 111 dev_list = self.get_possible_devices(idProduct)
112 if len(dev_list) == 0:
113 raise OSError(“Could not find ChipWhisperer. Is it connected?”)

~/work/projects/chipwhisperer/software/chipwhisperer/hardware/naeusb/naeusb.py in get_possible_devices(self, idProduct, dictonly)
216 if len(dev_list) == 0:
217 raise OSError(“Unable to communicate with found ChipWhisperer. Check that
→ 218 \nanother process isn’t connected to it and that you have permission to communicate with it.”)
219
220 return dev_list

OSError: Unable to communicate with found ChipWhisperer. Check that
another process isn’t connected to it and that you have permission to communicate with it.

Can you try running the Getting Normal ChipWhisperer Update code in ChipWhisperer Updating.ipynb to update your ChipWhisperer software? Once that’s done, please rerun the code I posted. You should get additional error information.

Alex

if i try a update i have this message :

Already up-to-date.
M .gitignore
M LICENSE.txt
M hardware/capture/chipwhisperer-lite/sam3u_fw/SAM3U_CW1173.atsln
M hardware/capture/chipwhisperer-lite/sam3u_fw/SAM3U_VendorExample/SAM3U_CW1173.componentinfo.xml
M hardware/capture/chipwhisperer-lite/sam3u_fw/SAM3U_VendorExample/SAM3U_CW1173.cproj
M hardware/capture/chipwhisperer-nano/firmware/cwnano-firmware.atsln
M hardware/capture/chipwhisperer-nano/firmware/cwnano-firmware/cwnano-firmware.componentinfo.xml
M hardware/capture/chipwhisperer-nano/firmware/cwnano-firmware/cwnano-firmware.cproj
M hardware/capture/xmega/Atmel Studio/MouseHID/ChipWhisperer_XMegaADC.atsln
M hardware/capture/xmega/Atmel Studio/MouseHID/MouseHID/XPlainA3BU.cproj
M hardware/victims/cw305_artixtarget/fw/dmm/xmega_vcc_asf.atsln
M hardware/victims/cw305_artixtarget/fw/dmm/xmega_vcc_asf/xmega_vcc_asf.componentinfo.xml
M hardware/victims/cw305_artixtarget/fw/dmm/xmega_vcc_asf/xmega_vcc_asf.cproj
M hardware/victims/cw305_artixtarget/fw/sam3u/CW305_SAM3U_FW.atsln
M hardware/victims/cw305_artixtarget/fw/sam3u/CW305_SAM3U_FW/CW305_SAM3UFW.componentinfo.xml
M hardware/victims/cw305_artixtarget/fw/sam3u/CW305_SAM3U_FW/CW305_SAM3UFW.cproj
M hardware/victims/cw305_artixtarget/usb_driver/cw305_artix.inf
M hardware/victims/cw308_ufo_target/87c51/87c51_avr_fw/87c51_avr_fw.atsln
M hardware/victims/cw308_ufo_target/87c51/87c51_avr_fw/87c51_avr_fw/87c51_avr_fw.componentinfo.xml
M hardware/victims/cw308_ufo_target/87c51/87c51_avr_fw/87c51_avr_fw/87c51_avr_fw.cproj
M hardware/victims/firmware/87c51/avr/87c51_avr_fw/87c51_avr_fw.atsln
M hardware/victims/firmware/87c51/avr/87c51_avr_fw/87c51_avr_fw/87c51_avr_fw.componentinfo.xml
M hardware/victims/firmware/87c51/avr/87c51_avr_fw/87c51_avr_fw/87c51_avr_fw.cproj
M hardware/victims/firmware/simpleserial-aes - Copy/ide_projects/asf/sam4l-simpleserial-aes/sam4l-simpleserial-aes.atsln
M hardware/victims/firmware/simpleserial-aes/ide_projects/asf/sam4l-simpleserial-aes/sam4l-simpleserial-aes.atsln
M jupyter
Your branch is up-to-date with ‘origin/blackhat2021’.

and after if i retest a connect and debug already the same message :

INFO:ChipWhisperer NAEUSB:Found NAEUSB devices [<usb1.USBDevice object at 0x7f8a0437a890>]
INFO:ChipWhisperer NAEUSB:Found NAEUSB devices [<usb1.USBDevice object at 0x7f8a0437a890>]
INFO:ChipWhisperer NAEUSB:Attempt to access ChipWhisperer failed, skipping to next


OSError Traceback (most recent call last)
/tmp/ipykernel_603/3483345807.py in
1 import chipwhisperer as cw
2 cw.naeusb_logger.setLevel(cw.logging.DEBUG)
----> 3 scope = cw.scope()

~/work/projects/chipwhisperer/software/chipwhisperer/init.py in scope(scope_type, name, **kwargs)
255
256 if scope_type is None:
→ 257 scope_type = get_cw_type(**kwargs)
258 scope = scope_type()
259 try:

~/work/projects/chipwhisperer/software/chipwhisperer/common/utils/util.py in get_cw_type(sn, idProduct, **kwargs)
503
504 cwusb = NAEUSB_Backend()
→ 505 device = cwusb.find(serial_number=sn, idProduct=possible_ids)
506 name = device.getProduct()
507 cwusb.usb_ctx.close()

~/work/projects/chipwhisperer/software/chipwhisperer/hardware/naeusb/naeusb.py in find(self, serial_number, idProduct)
109 def find(self, serial_number=None, idProduct=None):
110 # check if we got anything
→ 111 dev_list = self.get_possible_devices(idProduct)
112 if len(dev_list) == 0:
113 raise OSError(“Could not find ChipWhisperer. Is it connected?”)

~/work/projects/chipwhisperer/software/chipwhisperer/hardware/naeusb/naeusb.py in get_possible_devices(self, idProduct, dictonly)
216 if len(dev_list) == 0:
217 raise OSError(“Unable to communicate with found ChipWhisperer. Check that
→ 218 \nanother process isn’t connected to it and that you have permission to communicate with it.”)
219
220 return dev_list

OSError: Unable to communicate with found ChipWhisperer. Check that
another process isn’t connected to it and that you have permission to communicate with it.

Ah sorry, can you try changing the update command to the following?

%%bash
cd ..
git checkout develop
git pull

I’m sorry but I can’t update it.
i have this message :

Already up-to-date.
error: Your local changes to the following files would be overwritten by checkout:
.gitignore
hardware/capture/chipwhisperer-lite/sam3u_fw/SAM3U_VendorExample/SAM3U_CW1173.cproj
hardware/capture/chipwhisperer-nano/firmware/cwnano-firmware/cwnano-firmware.cproj
hardware/capture/xmega/Atmel Studio/MouseHID/ChipWhisperer_XMegaADC.atsln
hardware/capture/xmega/Atmel Studio/MouseHID/MouseHID/XPlainA3BU.cproj
hardware/victims/cw305_artixtarget/fw/sam3u/CW305_SAM3U_FW/CW305_SAM3UFW.cproj
hardware/victims/firmware/simpleserial-aes - Copy/ide_projects/asf/sam4l-simpleserial-aes/sam4l-simpleserial-aes.atsln
Please commit your changes or stash them before you switch branches.
Aborting

I am not familiar with git

Try:

%%bash
cd ..
git stash
git checkout develop
git pull
git stash pop

yes its work, i have one additionnal line on debug :

INFO:ChipWhisperer NAEUSB:Found NAEUSB devices [<usb1.USBDevice object at 0x7f79f06dfad0>]
INFO:ChipWhisperer NAEUSB:Found NAEUSB devices [<usb1.USBDevice object at 0x7f79f06dfad0>]
INFO:ChipWhisperer NAEUSB:Attempt to access ChipWhisperer failed. Attempting interface claim
INFO:ChipWhisperer NAEUSB:Access failed with error LIBUSB_ERROR_ACCESS [-3]

If you run ls /dev/ | grep cw, do you see anything pop up? Additionally, when you ran usb-devices, did you run it as root, or as your regular user (i.e. sudo usb-devices or usb-devices)?

“ls /dev/ | grep cw” gives me this as an answer:
cw_serial0
usb-devices in user and root gime me same result :

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0002 Rev=04.09
S: Manufacturer=Linux 4.9.0-12-amd64 xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:00:0c.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 0
D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=2b3e ProdID=ace2 Rev=01.00
S: Manufacturer=NewAE Technology Inc.
S: Product=ChipWhisperer Lite
S: SerialNumber=50203220313038543130333239323030
C: #Ifs= 3 Cfg#= 1 Atr=80 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
I: If#= 1 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=01 Driver=cdc_acm
I: If#= 2 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=5000 MxCh= 6
D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1
P: Vendor=1d6b ProdID=0003 Rev=04.09
S: Manufacturer=Linux 4.9.0-12-amd64 xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:00:0c.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub