PCIe adapter for Google Coral

I didn’t change anything other than uninstalling Frigate full access and using regular frigate. I also rebooted once or twice but now it seems to be working.

1 Like

On the Proxmox server, I get the following for the Coral Card, which implies that the server is not grabbing the card other than to pass it through to the guest OS (“Kernel driver in use: vfio-pci” instead of apex):

04:00.0 System peripheral: Global Unichip Corp. Coral Edge TPU (prog-if ff)
        Subsystem: Global Unichip Corp. Coral Edge TPU
        Physical Slot: 1-1
        Flags: bus master, fast devsel, latency 0, IRQ 29, IOMMU group 58
        Memory at f9300000 (64-bit, prefetchable) [size=16K]
        Memory at f9200000 (64-bit, prefetchable) [size=1M]
        Capabilities: [80] Express Endpoint, MSI 00
        Capabilities: [d0] MSI-X: Enable+ Count=128 Masked-
        Capabilities: [e0] MSI: Enable- Count=1/32 Maskable- 64bit+
        Capabilities: [f8] Power Management version 3
        Capabilities: [100] Vendor Specific Information: ID=1556 Rev=1 Len=008 <?>
        Capabilities: [108] Latency Tolerance Reporting
        Capabilities: [110] L1 PM Substates
        Capabilities: [200] Advanced Error Reporting
        Kernel driver in use: vfio-pci

The home assistant VM’s version of lspci does not provide much information. Copy and past isn’t working but it is just a bunch of lines like the following.

02:1b.0 Class 0c03: 1033:0194

I do see the following on the “All Hardware” page of the web interface.

DEVNAME: /dev/apex_0
DEVPATH: /devices/pci0000:00/0000:00:10.0/apex/apex_0
MAJOR: '120'
MINOR: '0'
SUBSYSTEM: apex

Not sure I have enough experience to be much help.
One thought, in proxmox can you spin up a separate vm with Debian or Ubuntu, move the coral from the HA vm to that vm. Then see if you can do anything with with coral there?

I may have misread this thread, but I bought an M.2 Coral Dual TPU and an HP WN7004 PCI-E card thinking I could use it as a riser card.

Should have spotted this, but the HP WN7004 that I’ve bought is actually Mini PCI-E, not M.2.

Is there an M.2 version out there or have I not followed the thread on here correctly?!

I seem to have basically an identical issue. Did you ever get the Coral working in frigate?

I have Proxmox > HAOS with Frigate Add On. Coral is passed through from Proxmox and shows up in the “All Hardware” page in HAOS just like you. But when I add the edgetpu detector type, I get the “No EdgeTPU was detected” log in the Frigate log files.

Thanks!

Actually, I think I solved it. I disabled “protection mode” on the Frigate Add on (Settings > Add Ons > Frigate (Full Access) > Protection mode off. Then I restarted the Add on, and updated my Frigate config to have:

detectors:
  coral_pci:
    type: edgetpu
    device: pci:0

Now it works!

2023-06-23 18:32:38.988909908 [2023-06-23 14:32:38] frigate.detectors.plugins.edgetpu_tfl INFO : Attempting to load TPU as pci:0
2023-06-23 18:32:38.995715447 [2023-06-23 14:32:38] frigate.detectors.plugins.edgetpu_tfl INFO : TPU found

4 Likes

I let this sit for a while since things work okay with just a CPU detector.

I just tried the suggestion from @jghake of using the regular Frigate, and now everything is working. Maybe disabling protection mode would also do the trick in the full-access version.

Many thanks, toddritt. I couldn’t get my A+E key TPU to work in an M.2 to pcie adapter. Tried your fix and now it’s up. Thanks again.

Finally found the magic post :slight_smile:
Thanks!

now trying to figure out why processing is still on CPU not the EdgeTPU

What adapter did you buy? I have a single TPU m.2 E-key coral and want to migrate to a full PCIe slot. Do you think any m.2 wifi to PCIe adapter should work?

I got the Ableconn PEXM2150E. The Amazon reviews said it worked with Coral.
Not sure just any adapter would work so that’s why I got this one.
https://www.amazon.com/dp/B07D6ZCBHY

1 Like

It helped me.

The minipcie coral is fairly picky about what adapters they work with. Make sure that someone has reported success with the specific adapter before purchasing.

After a very long delay I have now rebuilt my home server migrating from ESXi 6 to PVE 8.1.
I can confirm that coral PCIe is working with no issues after PCI passthrough was enabled.
(Also nvidia passthrough to VM and then to docker container for FFMPEG GPU assissted decode/encode)

The mini PCIe to PCIe x1 adaptor I used was a HP INTEL WN7004 PCI-E Dual Antenna WIFI PCI Express Card from ebay for £10

So I have just bought the mini M2 A+E tpu and wifi pcie tpu. Wifi pcie fits and works perfectly in my lenovo thinkcenter tff i5.

But now I want to adapt the mini M2 A+E card into my dell tower 3240 pcie slot.

What adaptor do I need? Something cheap please.

Is this the one? Is there a cheaper one available?
Thanks!

https://www.amazon.com/dp/B07D6ZCBHY

Does anyone know if my coral tpu mini M.2 A+E card will work with this adaptor?
Accepts 2230 E cards.

https://www.amazon.com/-/es/Adaptador-Interface-2230-2280-Velocidad-completa/dp/B07PXWGZ56

And will such a bundle work if corel thu mini M.2 B+M is inserted into a USB adapter for SSD drives?

Is there anyone that was able to use the Coral AI TPU M.2 B+M with a PCIe adapter? I bought this one on amazon:

https://www.amazon.it/gp/product/B0BYMRFY3Z/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

but after installing the gasket driver the Coral TPU doesn’t show up on lspci -nn command

I got this https://www.amazon.com/dp/B07D6ZCBHY
maybe 4 years ago.
Still working well

@juan11perez thanks for the reply but this adapter is only compatible with
M.2 Accelerator A+E key but I have this one: M.2 Accelerator B+M key

For anyone has the same issue, I was able to work it out simply buying a PCI Express Adapter for M Key (like this one on amazon https://www.amazon.it/dp/B09P3HY3P3?psc=1&ref=ppx_yo2ov_dt_b_product_details).

It can be recognised because it has just 3 pins in the right corner.