Coral USB not detected on Raspberry Pi 5 with Home Assistant

Hi everyone,

I recently purchased a Coral USB Accelerator to use with my Raspberry Pi 5 running Home Assistant OS. However, I can’t seem to get it working—Frigate logs show the following error:

ERROR : No EdgeTPU was detected. If you do not have a Coral device yet, you must configure CPU 

I am using a powered USB hub to connect the Coral USB, as recommended by many.

I checked with lsusb to see if the device is recognized, but no luck: it’s not listed.

image

Any ideas?

Reboot and check again?

Thank you for the suggestion. I’ve already tried restarting multiple times, but unfortunately, it didn’t solve the issue.

What’s the output if you

ls /dev

Here you go

Try another usb port for kicks

USB coral should have own drivers

I tried connecting the hub to both USB 3.0 ports on the rpi and tested all the ports on the hub, but nothing changed :frowning:

p.s. I also tried a different usb cable

You have another PC to verify the coral on? Just that it connects

Anyway to verify usb power on PI?

I have a Windows 11 machine, and I was not able to see the USB Coral in the Device Manager after following the installation procedure from the Coral website for Windows. I’m starting to think that my device might be defective (although the power LED does turn on)

Hi I’m having the same problem. Not yet solved, in my opinion the trouble is due to incompatible python version which (must be <3.10) to run the PyCoral library. I’ve been able to solve the problem with the image provided by Raspberry Pi OS 64-bit and the pyenv as suggested in Coral DOC. At that point (after some manual compilation of some modules) Coral USB has been detected in the Raspberry USB port and has worked fine. Unfortunately with the homeassistant image provided by raspberry. I’ve no idea on how to instal pyenv and recompile the modules …

@tmjpugh My Coral USB unit was indeed defective, and after replacing it, my Raspberry Pi seems able to detect it.

However, when I run the lsusb command, it shows up as 1a6e:089a, which seems to be the ID of an uninitialized device. From what I understand, it should appear as 18d1:9302.

image

Does anyone know what might cause this or how to properly initialize the device?
@Andy63 this might be the same problem you are reporting about

EDIT:

ERROR : No EdgeTPU was detected. If you do not have a Coral device yet, you must configure CPU

is actually disapperead from logs, so maybe the Coral USB is now working despite the 1a6e:089a ID

according to here this is normal and only after first inference changes. The drivers are not loaded is my assumption and dont get loaded until after first inference. I use PCI version so I loaded drivers manually. This is guess based on linked info.

reloading udev rules was recommended but If you already reboot (?) with usb inserted I wouldnt expect a different result.
sudo udevadm control --reload-rules && sudo udevadm trigger

post the output of below ls /dev
maybe you have it mounted as wrong path

EDIT
The acutal recommendation was to add rules. This was what I was thinking and what I do as well

foo@bar:~$ lsusb -d 1a6e:089a
Bus 002 Device 004: ID 1a6e:089a Global Unichip Corp.
foo@bar:~$ echo 'SUBSYSTEMS=="usb", ATTRS{idVendor}=="1a6e", ATTRS{idProduct}=="089a", MODE="0664", TAG+="uaccess"' | sudo tee -a /etc/udev/rules.d/71-edgetpu.rules > /dev/null
foo@bar:~$ echo 'SUBSYSTEMS=="usb", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="9302", MODE="0664", TAG+="uaccess"' | sudo tee -a /etc/udev/rules.d/71-edgetpu.rules > /dev/null
foo@bar:~$ sudo udevadm control --reload-rules && sudo udevadm trigger

I am unclear why they did this. maybe this is appending changes into /etc/udev/rules.d/71-edgetpu.rules.
you can check that file before changes. if it exists it would have rules for the vendor/product numbers you expeted above. I dont have usb or that file so I have no way to confirm.

EDIT2
I believe mode is granting access to USB for user but correct way would be to give user access to apex group I believe. For now this is OK since I dont understand users on your system. I have created individual user specifically for frigate (for example) and added that user to apex group. Long details that I forget but for now I think the mode is fine. this is not my wheelhouse so take that with grain of salt

uaccess I just dont know anything about. temporarily I dont think it matters but that seems unneeded.

Today the device is showing as 18d1:9302, so I guess everything is fine now. Thanks a lot for your advice!