Coral PCIe Driver error on step 6 "No such file or directory"

Getting the below error that I think is to do with headers from searching the web but I don’t understand how to fix.

jimmy@jimmy-NUC12:~$ ls /dev/apex_0
ls: cannot access '/dev/apex_0': No such file or directory

All other steps worked up to that point. coral-linux
NUC12 PRO
OS - Ubuntu 22.04.2 LTS
Docker version 24.0.4, build 3713ee1
I’m very new to Linux.
This is a new setup and only being used for Frigate at this point.
Thank you

“ls” the /dev directory and see what shows

ls /dev

jimmy@jimmy-NUC12:~/Documents/frigate$ ls /dev
autofs           drm_dp_aux0  hugepages  i2c-6    loop13  loop-control  port    sg0       tty12  tty25  tty38  tty50  tty63      ttyS17  ttyS3    vcs    vcsu
block            drm_dp_aux1  hwrng      i2c-7    loop14  mapper        ppp     shm       tty13  tty26  tty39  tty51  tty7       ttyS18  ttyS30   vcs1   vcsu1
bsg              drm_dp_aux2  i2c-0      i2c-8    loop15  mcelog        pps0    snapshot  tty14  tty27  tty4   tty52  tty8       ttyS19  ttyS31   vcs2   vcsu2
btrfs-control    drm_dp_aux3  i2c-1      i2c-9    loop16  mei0          psaux   snd       tty15  tty28  tty40  tty53  tty9       ttyS2   ttyS4    vcs3   vcsu3
bus              ecryptfs     i2c-10     initctl  loop17  mem           ptmx    stderr    tty16  tty29  tty41  tty54  ttyprintk  ttyS20  ttyS5    vcs4   vcsu4
char             fb0          i2c-11     input    loop18  mqueue        ptp0    stdin     tty17  tty3   tty42  tty55  ttyS0      ttyS21  ttyS6    vcs5   vcsu5
console          fd           i2c-12     kmsg     loop2   net           pts     stdout    tty18  tty30  tty43  tty56  ttyS1      ttyS22  ttyS7    vcs6   vcsu6
core             full         i2c-13     kvm      loop3   ng0n1         random  tpm0      tty19  tty31  tty44  tty57  ttyS10     ttyS23  ttyS8    vcsa   vfio
cpu              fuse         i2c-14     log      loop4   null          rfkill  tpmrm0    tty2   tty32  tty45  tty58  ttyS11     ttyS24  ttyS9    vcsa1  vga_arbiter
cpu_dma_latency  gpiochip0    i2c-15     loop0    loop5   nvme0         rtc     tty       tty20  tty33  tty46  tty59  ttyS12     ttyS25  udmabuf  vcsa2  vhci
cuse             hidraw0      i2c-2      loop1    loop6   nvme0n1       rtc0    tty0      tty21  tty34  tty47  tty6   ttyS13     ttyS26  uhid     vcsa3  vhost-net
disk             hidraw1      i2c-3      loop10   loop7   nvme0n1p1     sda     tty1      tty22  tty35  tty48  tty60  ttyS14     ttyS27  uinput   vcsa4  vhost-vsock
dma_heap         hidraw2      i2c-4      loop11   loop8   nvme0n1p2     sda1    tty10     tty23  tty36  tty49  tty61  ttyS15     ttyS28  urandom  vcsa5  zero
dri              hpet         i2c-5      loop12   loop9   nvram         sda2    tty11     tty24  tty37  tty5   tty62  ttyS16     ttyS29  userio   vcsa6  zfs

Do you have dual TPU version?

I would reboot.
Check again
If still no good go through coral instructions steps again

Thanks for the reply.
Did the coral instruction again, restarted multiple times. Removed the card, boot up/down, reinstalled it, did the coral install and still same error.
It is a M.2 A+E key single TPU.
One of the requirements is " *All systems require support for MSI-X as defined in the PCI 3.0 specification" how can this be checked?

Not sure but i am certain the nuc will be Ok with coral

Are you certain it is properly installed physically? Have you tried power off/remove/reseat/power on?

I forget command but there should be linux command to check for mounted devices. I will look for it.

Just FYI, “man” is handy command. It provides a manual for a linux command

“man ls” provide details of ls command for example

“man cat” provides details of cat command

Try the lshw command. This may show you if coral is mounted and seen by system i think. I will test this on my system later today. I imagine you will see some device with google or some other obvious indication of it being the coral

EDIT

“sudo lshw” shows below for coral. I believe it will show device even if driver is not present.

           *-pci:0
                description: PCI bridge
                product: ASM1182e 2-Port PCIe x1 Gen2 Packet Switch
                vendor: ASMedia Technology Inc.
                physical id: 3
                bus info: pci@0000:83:03.0
                version: 00
                width: 32 bits
                clock: 33MHz
                capabilities: pci normal_decode bus_master cap_list
                configuration: driver=pcieport
                resources: irq:43 ioport:fbc00000(size=2097152)
              *-generic
                   description: Non-VGA unclassified device
                   product: Coral Edge TPU
                   vendor: Global Unichip Corp.
                   physical id: 0
                   bus info: pci@0000:84:00.0
                   version: 00
                   width: 64 bits
                   clock: 33MHz
                   capabilities: bus_master cap_list
                   configuration: driver=apex latency=0
                   resources: irq:42 memory:fbd00000-fbd03fff memory:fbc00000-fbcfffff
           *-pci:1
                description: PCI bridge
                product: ASM1182e 2-Port PCIe x1 Gen2 Packet Switch
                vendor: ASMedia Technology Inc.
                physical id: 7
                bus info: pci@0000:83:07.0
                version: 00
                width: 32 bits
                clock: 33MHz
                capabilities: pci normal_decode bus_master cap_list
                configuration: driver=pcieport
                resources: irq:44 ioport:fba00000(size=2097152)
              *-generic
                   description: Non-VGA unclassified device
                   product: Coral Edge TPU
                   vendor: Global Unichip Corp.
                   physical id: 0
                   bus info: pci@0000:85:00.0
                   version: 00
                   width: 64 bits
                   clock: 33MHz
                   capabilities: bus_master cap_list
                   configuration: driver=apex latency=0
                   resources: irq:42 memory:fbb00000-fbb03fff memory:fba00000-fbafffff

Missed your reply. Thanks for the man command
I have started over, install Debian and same error.
here are the results for the command. It shows the Coral on pci:2, looks to be missing the driver=apex? Does the Unclaimed mean anything?
Thanks

        *-pci:2
             description: PCI bridge
             product: Alder Lake PCI Express x1 Root Port #10
             vendor: Intel Corporation
             physical id: 1d.1
             bus info: pci@0000:00:1d.1
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:124 ioport:6000000000(size=2097152)
           *-generic UNCLAIMED
                description: Non-VGA unclassified device
                product: Coral Edge TPU
                vendor: Global Unichip Corp.
                physical id: 0
                bus info: pci@0000:03:00.0
                version: 00
                width: 64 bits
                clock: 33MHz
                capabilities: pciexpress msix msi pm cap_list
                configuration: latency=0
                resources: iomemory:600-5ff iomemory:600-5ff memory:6000100000-6000103fff 

The coral instructions explain how to install apex driver. I’m completely guessing here but i believe the driver is bit being install or used. That also may be reason for unclaimed by hardware and linux is still something i dont clearly understand.

Not sure where to point you other then telling you to go through install instruction for coral and its drivers. I believe the answer is there.

Just realized but did you update linux?

sudo apt update
sudo apt upgrade
sudo reboot

I read somewhere that the unclaimed means device isnt recognized by kernel. I presume you update already but gotta verify.

Also try disable secure boot in bios

I was just logging on to say that. It now displays.
Thank you so much for your help.

What was the cause/fix?

Cause great question. Everything is new, might be a NUC thing.
Solution was disable secure boot in bios. Have no clue what is does but hope it doesn’t bite me in the rear later.

Secure boot I think validates drivers and software at boot.

Maybe it requires signed software and coral drivers not signed or cannot be validated. According to the link it was a NUC thing

I still can’t get the access to /dev/apex_0.
Safe Boot is also deactivated and all steps to this point went without failure.

My goal is to use my Coral m-2 single TPU in Scrypted (as LXC in Proxmox).

UPDATE: I am sorry, I finally managed by using this instruction and also with the comment “go into the /home folder” before that “git clone” command.