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

Hello, I am using a CW305 Target and CW-Lite Capture Board. Whenever I try to run cw.scope(), I receive an “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.”

I am running on a RedHat system and have followed the instructions described at https://chipwhisperer.readthedocs.io/en/latest/prerequisites.html#prerequisites-linux on adding the appropriate rules.d entry and user group permissions to dialout as follows:

sudo printf “SUBSYSTEM==“usb”, ATTRS{idVendor}==“2b3e”, ATTRS{idProduct}==“ace[0-9]|c[3-6][0-9][0-9]”, TAG+=“uaccess”” >> /etc/udev/rules.d/50-newae.rules
sudo udevadm control --reload-rules
sudo usermod -a -G dialout $USER

As further insight, the ChipWhisperer has a blinking blue light when it is plugged in.
I have also tried restarting the entire system, replugging in my the ChipWhisperer, and only having the ChipWhisperer plugged in without the CW305 target to no avail with the same error.

This is the same error as was encountered by another as described in Scope = cw.scope() command is not running with CW305, which was resolved by re-downloading drivers. However, that user was running on a Windows machine, whereas the instructions state that “The driver for Linux is built in; however, you need to allow your user account to access the peripheral.”, which I have done as described above.

Any insight as to what could be causing this issue and potential resolutions would be very appreciated. Thank you.

Hi,

Can you post the output of lsusb -v and cat /etc/udev/rules.d/50-newae.rules?

Alex

Hi Alex,

lsusb -v:

Bus 003 Device 006: ID 2b3e:c305
Couldn’t open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2b3e
idProduct 0xc305
bcdDevice 1.00
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
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

Bus 003 Device 012: ID 2b3e:ace2
Couldn’t open device, some information will be missing
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 32
bNumInterfaces 1
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

There were a lot of entries as the result of lsusb -v since there are many devices on the system, so I have just pasted the entries containing ID 2b3e. Please let me know if this is insufficient, and I can provide the entire output in a file.

cat /etc/udev/rules.d/50-newae.rules:

## NewAE .rules file to enable ChipWhisperer to easily take control
#
# To use this file
# 1) Unplug all NewAE hardware
# 2) Copy to /etc/udev/rules.d/
# 3) Reset the udev system:
# $ sudo udevadm control --reload-rules
# 4) Log in/out again for changes to take effect
# 5) Connect hardware
#
# Match all CW devices
SUBSYSTEM==“usb”, ATTRS{idVendor}==“2b3e”, ATTRS{idProduct}==“ace[0-9]|c[3-6][0-9][0-9]”, TAG+=“uaccess”

From lsusb, it seems there is some issue in opening the devices.
Here is some additional information from dmesg yielded from plugging in the devices in case it is of relevance:

[ 3.673832] usb 3-4.1: new high-speed USB device number 6 using xhci_hcd
[ 3.759520] usb 3-4.1: New USB device found, idVendor=2b3e, idProduct=c305, bcdDevice= 1.00
[ 3.759525] usb 3-4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3.759529] usb 3-4.1: Product: ChipWhisperer CW305
[ 3.759533] usb 3-4.1: Manufacturer: NewAE Technology Inc.
[ 3.759537] usb 3-4.1: SerialNumber: 50203120355448513130353237313031
[ 3.831832] usb 3-3.2: new high-speed USB device number 7 using xhci_hcd

[ 4.831891] usb 3-4.4: new high-speed USB device number 12 using xhci_hcd
[ 4.918595] usb 3-4.4: New USB device found, idVendor=2b3e, idProduct=ace2, bcdDevice= 1.00
[ 4.918602] usb 3-4.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4.918606] usb 3-4.4: Product: ChipWhisperer Lite
[ 4.918610] usb 3-4.4: Manufacturer: NewAE Technology Inc.
[ 4.918614] usb 3-4.4: SerialNumber: 50203220313038543330313237323030
[ 5.455879] usb 3-3.3.4: new high-speed USB device number 13 using xhci_hcd

Thank you for the prompt follow up.

Hi,

Can you try using this file instead and adding yourself to the plugdev group? https://raw.githubusercontent.com/newaetech/chipwhisperer/cw305_ecc_in_progress/hardware/99-newae.rules

Once that’s done, reload the udev rules and log out + log back in

Alex

Hi Alex,

It seems like that worked! Now I am getting a ChipWhisperer found with an out of date firmware warning, which I am currently working on rectifying.

The “Couldn’t open device, some information will be missing” error in lsusb -v is also gone.

lsusb -v:

Bus 003 Device 015: ID 2b3e:c305
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2b3e
idProduct 0xc305
bcdDevice 1.00
iManufacturer 1 NewAE Technology Inc.
iProduct 2 ChipWhisperer CW305
iSerial 3 50203120355448513130353237313031
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
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
Binary Object Store Descriptor:
bLength 5
bDescriptorType 15
wTotalLength 33
bNumDeviceCaps 1
** UNRECOGNIZED: 1c 10 05 00 df 60 dd d8 89 45 c7 4c 9c d2 65 9d 9e 64 8a 9f 00 00 03 06 9e 00 01 00
Device Status: 0x0000
(Bus Powered)

Bus 003 Device 014: 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 NewAE Technology Inc.
iProduct 2 ChipWhisperer Lite
iSerial 3 50203220313038543330313237323030
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
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
Binary Object Store Descriptor:
bLength 5
bDescriptorType 15
wTotalLength 33
bNumDeviceCaps 1
** UNRECOGNIZED: 1c 10 05 00 df 60 dd d8 89 45 c7 4c 9c d2 65 9d 9e 64 8a 9f 00 00 03 06 9e 00 01 00
Device Status: 0x0000
(Bus Powered)

Thank you for your help and prompt follow-up! It is much appreciated.

- Mustafa

Hi Alex
I am new with ChipWhisperer.
I am trying to run CW303 Target and CW-Lite Capture Board on windows10 laptop.
I tried both windows installer and the virtual box version from

I have the same problem of (Unable to communicate with found ChipWhisperer. Check that another process isn’t connected to it and that you have permission to communicate with it.) when running
PLATFORM=“NOTHING”
%run Setup_Scripts/Setup_Generic.ipynb
in the ChipWhisperer Setup Test.
Do you know how can I fix this problem?

Thank you very much.
Best regards,
Anh Tuan Hoang

Hi Anh,

What operating system are you running on? If it’s Windows, can you check Device Manager and see if ChipWhisperer-Lite shows up anywhere?

Alex

Thank you Alex

I am working with windows10.
In Device manager, ChipWhisperer Lite is shown up in the “Other devices” item with an exclamation (!) mark in a yellow rectangular.
If the ChipWhisperer Jupiter virtual machine (in Virtual Box) boots, it will disappear.
Running the (windows) installed ChipWhisperer, it will keep appeared.

Some error found in the cell:


NotImplementedError: Operation not supported or unimplemented on this platform


NameError Traceback (most recent call last)
in
5 try:
----> 6 if not scope.connectStatus:
7 scope.con()

NameError: name ‘scope’ is not defined

During handling of the above exception, another exception occurred:

NotImplementedError Traceback (most recent call last)


Tuan

Hi Tuan,

If you’re on the Blackhat 2021 release, you can follow the instructions here: https://github.com/newaetech/chipwhisperer-jupyter/blob/blackhat2021/ChipWhisperer-Lite%20Firmware%20Upgrade.ipynb to get your firmware upgraded.

Alex

Hi Alex

As the ChipWhisperer Lite appear under Other devices but not Universal Serial Bus devices, I will need to install the driver.
I found zadig-2.5.exe in the folder.

Best regards,
Tuan

You can grab Zadig from https://zadig.akeo.ie/

Hi Alex

Thank you very much.
After installing the driver manually and rebooting, ChipWhisperer installed on Windows works over the test (I am not yet update the firmware) but the one in virtual box is not.
Do you know how can I make it work on virtual box also?

Best regards,
Tuan

Do you have virtualbox extensions installed?

Hi Alex

I have virtual box extensions installed.
In the Device \ USB of VBox, I can also see the NewAE ChipWhisperer ticked.

By the way, I tried to update firmware using

import chipwhisperer as cw
scope = cw.scope()
scope.upgrade_firmware()

in jupyter environment comes with the ChipWhisperer (windows installation) but this error appears:

AttributeError Traceback (most recent call last)
in
1 import chipwhisperer as cw
2 scope = cw.scope()
----> 3 scope.upgrade_firmware()

AttributeError: ‘OpenADC’ object has no attribute ‘upgrade_firmware’

What should I do for firmware upgrade or should I try it on Linux system?

Best regards,
Tuan

The upgrade firmware thing is pretty new, it’s only in the Blackhat 2021 pre-release so far. You can follow https://chipwhisperer.readthedocs.io/en/latest/firmware.html if you don’t want to update

Hi Alex

Thank you

Regards,
Tuan