HAos nie wykrywa TPU coral

Witam
Mam problem z wykrywaniem TPU coral na m.2 jak i usb. System HAos postawiony z oryginalnego image na Fujitsu Q556 i5 6gen nvme. Niestety gdy zaglądam do urządzeń to mam tylko eventy i porty szeregowe ttyS.
Nie wygląda to na słabe zasilanie corala z usb ponieważ gdy wkładam m.2 również ciemo.
Doradzi ktoś w jakim kierunku się udać?

Zapomniałem dodać:

  • Core2025.4.1
  • Supervisor2025.03.4
  • Operating System15.1
  • Interfejs użytkownika20250404.0

1.Port powinien być w wersji USB3, zapotrzebowanie to 900 mA
2. Jeżeli port nie wyrabia, użyj zewnętrznie zasilanego koncentratora USB.
Polecenie lsusb coś ci pokazuje? Pytanie czy twój HAos posiada sterowniki dla PCI-E (m2). Po podłączeniu coral restartowałeś Fujitsu Q556?

Tak. Restart był.
Narazie widzę że corala wykryło

[ 0.769181] usb 1-7: New USB device found, idVendor=1a6e, idProduct=089a, bcdDevice= 1.00
[ 0.769202] usb 1-7: New USB device strings: Mfr=0, Product=0, SerialNumber=0

lsmod

Bus 001 Device 002: ID 1a6e:089a
Bus 001 Device 001: ID 1d6b:0002 Linux 6.12.20-haos xhci-hcd xHCI Host Controller
Bus 002 Device 001: ID 1d6b:0003 Linux 6.12.20-haos xhci-hcd xHCI Host Controller

kurde w /dev nie ma apex

lsmod

Module Size Used by Not tainted
bluetooth 806912 0
ecdh_generic 16384 1 bluetooth
ecc 40960 1 ecdh_generic
xt_set 20480 0
ip_set 57344 1 xt_set
nft_chain_nat 12288 21
nft_compat 20480 45
nf_tables 360448 547 nft_chain_nat,nft_compat
xfrm_user 57344 1
cfg80211 1290240 0
snd_hda_codec_hdmi 81920 1
snd_hda_codec_realtek 196608 1
snd_hda_codec_generic 98304 1 snd_hda_codec_realtek
snd_hda_scodec_component 12288 1 snd_hda_codec_realtek
sch_fq_codel 20480 2
snd_soc_avs 196608 0
snd_soc_hda_codec 16384 1 snd_soc_avs
snd_hda_ext_core 28672 2 snd_soc_avs,snd_soc_hda_codec
snd_soc_core 348160 2 snd_soc_avs,snd_soc_hda_codec
snd_compress 20480 2 snd_soc_avs,snd_soc_core
snd_hda_intel 49152 1
snd_intel_dspcfg 32768 2 snd_soc_avs,snd_hda_intel
x86_pkg_temp_thermal 16384 0
snd_hda_codec 180224 6 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_codec_generic,snd_soc_avs,snd_soc_hda_codec,snd_hda_intel
snd_hwdep 12288 1 snd_hda_codec
snd_hda_core 131072 8 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_codec_generic,snd_soc_avs,snd_soc_hda_codec,snd_hda_ext_core,snd_hda_intel,snd_hda_codec
i915 4112384 1
snd_pcm 172032 7 snd_hda_codec_hdmi,snd_soc_avs,snd_soc_core,snd_compress,snd_hda_intel,snd_hda_codec,snd_hda_core
coretemp 16384 0
ttm 98304 1 i915
drm_buddy 20480 1 i915
drm_display_helper 200704 1 i915

Mi to wyglada na to że nie ma modułu załadowanego. Czy może się ktoś orientuje czy TPU jest wkompilowany na stałe w jądro HAos?
Może ktoś kto ma tpu coral zerknąć w powłoce “lsmod” jakie ma moduły załadowane?

Sorki ale wydaje mi się że m.2 nie potrzebuje żadnych dodatkowych sterowników.

Wejdź w logi hosta i poszukaj ciągu 089a, a dobra to już masz…


w pliku frigate.yml musisz mieć sekcję odpowiedzialną za uruchomienie corala (wersja uniwersalna dla 1 TPU) warto zauważyć, że rozszerzenie pliku to .yml a NIE .yaml

detectors:
  coral:
    type: edgetpu
    device: ''

ewentualnie dla wersji m.2 A+E, m.2 B+M lub minipcie

detectors:
  coral:
    type: edgetpu
    device: pci

wtedy w logach dodatku powinieneś zobaczyć coś takiego

2025-04-07 23:07:50.351894895  [2025-04-08 01:07:50] detector.coral                 INFO    : Starting detection process: 434
2025-04-07 23:07:50.365610580  [2025-04-08 01:07:50] frigate.detectors.plugins.edgetpu_tfl INFO    : Attempting to load TPU as pci
2025-04-07 23:07:50.377845157  [2025-04-08 01:07:50] frigate.detectors.plugins.edgetpu_tfl INFO    : TPU found

hint - Dodatek z podwyższonymi uprawnieniami Frigate (Full Access) zwykle nie działa poprawnie (co manifestuje się brakiem wykrycia corala), więc zamiast niego zalecam wersję zwykłą Frigate

UWAGA wersja z podwójnym akceleratorem (dual) nie działa na każdej płycie głównej!

Jeżeli jest zaimplementowana obsługa w HA to nie potrzebuje.

Zajrzyj tutaj: https://github.com/blakeblackshear/frigate/issues/9436#issuecomment-1916983348

W HAOS-generic jest obsługa (nie pamiętam od jakiej wersji systemu, ale od 13.0 w górę raczej tak), jak jest w innych wersjach (SBC czy OVA - tylko w wirtualizacji to trzeba ogarniać udostępnienie sprzętu hosta - passthrough do VM ! ale chyba nie mówimy o wirtualizacji tylko o HAOS bare-metal???) nie wiem, ale zwyczajowo są wkompilowane te same sterowniki i moduły na każdą platformę.

HAOS w wersji 15.0 miał jakieś niedoróbki (nie wiem czy dotyczyły też corala, ale zalecam ją mijać), więc warto sprawdzić na 14.2 albo 15.1

Od jakiegoś czasu ta sekcja w GUI jest kompletnie zwalona. edit - ale nie aż tak by nie było widać kluczowych komponentów komputera.


Natomiast niektóre BIOSy (zależnie od budowy płyty głównej) mają możliwość rekonfiguracji wybranych portów m.2, więc w szczególności jeśli to m.2 key B przeznaczony dla dysków sata to może wymagać włączenia w BIOSie trybu pcie i wyłączenia trybu sata, natomiast w przypadku portu key A lub E może być konieczne włączenie karty sieciowej m.2 (mimo, że montujemy właśnie zamiast niej).

Logi poszły pierwsze wiec wiem na sto procent ze TPU się nie ładuje.

hint - Dodatek z podwyższonymi uprawnieniami Frigate (Full Access) zwykle nie działa poprawnie (co manifestuje się brakiem wykrycia corala), więc zamiast niego zalecam wersję zwykłą Frigate

Mówiąc mi że wersja Full Access nie działa poprawnie wezmę to pod uwagę i sprawdzę czy ruszy jeśli podmienię na zwykłą. Dzięki za info.

w pliku frigate.yml musisz mieć sekcję odpowiedzialną za uruchomienie corala (wersja uniwersalna dla 1 TPU) warto zauważyć, że rozszerzenie pliku to .yml a NIE .yaml

Co do pliku konfiguracyjnego .yml / .yaml nie rozumie tego. Na stronie frigate jest że obie wersję działają.
Wersje TPU nie zawsze będą działać bo wykorzystują dwie linie PCIe a nie każda płyta ma je dostępne jak wspomniałeś. Ja natomiast mam A+E x1 i USB 3.1.

ale chyba nie mówimy o wirtualizacji tylko o HAOS bare-metal???)

Tak. Wrzuciłem cały kompletny obraz systemu. Nie mam czasu się uczyć docker’a i stwierdziłem że taniej wyjdzie kupić komputer tylko pod HA i frigate.

HAOS w wersji 15.0 miał jakieś niedoróbki (nie wiem czy dotyczyły też corala, ale zalecam ją mijać), więc warto sprawdzić na 14.2 albo 15.1

Sprawdzę to w drugiej kolejności. Dzięki

Natomiast niektóre BIOSy (zależnie od budowy płyty głównej) mają możliwość rekonfiguracji wybranych portów m.2, więc w szczególności jeśli to m.2 key B przeznaczony dla dysków sata to może wymagać włączenia w BIOSie trybu pcie i wyłączenia trybu sata, natomiast w przypadku portu key A lub E może być konieczne włączenie karty sieciowej m.2 (mimo, że montujemy właśnie zamiast niej).

Sorki, ale wersja USB też nie działa.

Na koniec…
Czy masz może HA na x86 i możesz zrobić mi “lsmod”? Zobaczę czego mi brakuje. Niestety jestem u klienta i mam trochę ręcę związane bo nie mam nawet monitora.
Być może wystarczy tylko wrzucić moduł i go załadować.

EDIT:
ok już wiem. Brak modułów apex.ko i gasket.ko
Niestety w apline nie ma make i trzeba doinstalować.
Chyba że ktoś mi je wrzuci na architekturę x86?

Nie jestem na bieżąco (wręcz nie używam Frigate - kamery zostały zdemontowane na czas remontu i do tej pory nie odbudowałem instalacji, ale sprawdziłem działanie Addona dla Ciebie i FA nadal nie działa), kiedyś plik z rozszerzeniem .yaml się nie wczytywał, widać ktoś jednak pomyślał o użytkownikach.

Jeśli chodzi o USB to nie wiem, bo takiej nigdy nie miałem i nie mam , ale wtedy sekcja powinna być taka (lub uniwersalna, ale nie wiem czy działa z usb)

detectors:
  coral:
    type: edgetpu
    device: usb
~ $ lsmod | grep apex
apex                   20480  0 
gasket                110592  1 apex,[permanent]

Swoją drogą u mnie działa, więc nie ma cudów jeśli to jest HAOS-generic to MUSI być identyczny z moim, bo tam niczego nie doinstalujesz do systemu.

Może należało zacząć od tego, bo jak na razie to nikt nie wie jak tam jest zainstalowany HA
Jak podzielić się informacjami o swojej instalacji Home Assistant na forum lub githubie

W pierwszym poście napisałem wersję i jaki obraz jest, jak jest zainstalowany i skąd.
Na stronie HA nie ma innego image na x86_amd64. Jest też opis jak wrzucić.

Nie szukam już nawet innego problemu bo szkoda czasu. Musze dorzucić moduły i powinno być ok.
Problem jest też w próbie w skompilowania “braków”, ponieważ brakuje gcc, dodatkowo trzeba dociągnąć kilka programów no i brakuje bibliotek. Obraz zapewne jest robiony ze środowiska roboczego dlatego teraz cokolwiek zainstalować to walka z zależnościami. Dlatego też wolałbym by ktoś mi podrzucił ze starszych wersji te moduły i powinno być po temacie.

Rób co chcesz… moim zdaniem grubo błądzisz, nawet nie napisałeś czy to generic czy ova.
(Właśnie po to są maszynowo generowane raporty, by uniknąć potencjalnego niezrozumienia, skoro świadczysz usługi z zakresu IT to chyba powinieneś to wiedzieć…)
Oczywiście nigdy nie wykluczam własnych błędów, ale mi się już nie chce walczyć z wiatrakami. Odpuszczam tracenie czasu tutaj.

A widzisz tam pełną nazwę twojego TPU, czy tylko krótki ciąg 089a?

089a i nie ma nic z coral lub TPU

Na moje oko nie ładuje żadnych sterowników, powinien zgłosić się jako Global Unichip Corp a potem jako Google Inc ale niech to potwierdzi ktoś kto ma TPU.

Prośba. Jeśli ktoś ma HA na x86 to potrzebuje by zetknął czy ma w folderze ‘/etc/modules-load.d’ pliki ‘apex.ko’ i ‘gasket.ko’.

Proponował bym spowrotem przenieść wątek do home assistant. Nie dotyczy on innego tematu lecz home assistant

Jeśli wkleisz raport o który prosiłem (może warto zaznaczyć, że on nie zawiera żadnych danych wrażliwych! i jest to pierwszy standardowy krok zalecany przy zgłaszaniu każdego issue dotyczącego HA i Dodatków), to będzie wiadomo gdzie naprawdę to trzeba przenieść…


Mam TPU, ale z braku kamer nie mogę potwierdzić czy tak jest istotnie.
(teoretycznie przed załadowaniem oprogramowania powinien się zgłaszać jako VID 1a6e =GUC, a po udanym przebiegu rozpoznawania 18d1 =Google, ale nigdy nie sprawdzałem tego, a u mnie obecnie para VID+PID się nie zmienia, a z tego co widzę w sieci to czasem się zmienia, a czasem nie, więc to nie jest warunek działania, wręcz możliwe, - to moja prywatna teoria - że zrezygnowano z programowej zmiany identyfikatorów, bo to utrudnia wykorzystanie sprzętu w wirtualizacjach), VID nie musi być w każdym systemie zamieniany na nazwę (i HAOS raczej nie zamienia, w każdym razie nie widziałem tłumaczenia VID w żadnym z kluczowych miejsc).

Na niemal identycznej sprzętowo innej instalacji HAOS-generic, ale bez zamontowanego corala moduły się nie ładują, więc przy wywołaniu

~ $ lsmod | grep apex

mam po prostu pusto (brak pasujących wyników), co jest sytuacją normalną w braku sprzętu.

Moduły możesz zawsze załadować insmod albo modprobe. Jeśli dobrze pamiętam to udev sam sobie lądował moduły i dlatego nie są automatycznie ładowane.
Trochę też rozmawiamy o tym pod jaka nazwa ma się wyświetlić. To nie ma najmniejszego znaczenia na chwilę obecną bo jak nie ma modułów apex.ko i gasket.ko to udev nie załaduje urządzenia i go nie pokaże w /dev
Już szukam o jaki raport Ci chodzi bo w HA to nie zbyt jestem ogarnięty. Rozumie że to gdzieś w systemie się generuje.

Jeśli masz w przeglądarce skonfigurowany MyHA (jeśli nie to skonfiguruj) klikasz w ten guzik poniżej (to jest lokalny redirect w przeglądarce)
Open your Home Assistant instance and show information about your system.
otwórz sobie z tego linka GUI tej instalacji HA i tam w wyświetlonym popupie weź kliknij w KOPIUJ i wklej to do posta jak leci

i na chwilę zapomnij o swojej całej linuxowej wiedzy - HAOS to jest taka czarna skrzynka, która działa (buildroot), ma wkompilowane wszystko co potrzeba, a jeśli czegoś nie ma (ale to co nas interesuje to akurat ma), to jest wtedy walka z wiatrakami.

System Information

version core-2025.4.1
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.13.2
os_name Linux
os_version 6.12.20-haos
arch x86_64
timezone Europe/Warsaw
config_dir /config
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 15.1
update_channel stable
supervisor_version supervisor-2025.03.4
agent_version 1.7.2
docker_version 28.0.4
disk_total 116.7 GB
disk_used 14.0 GB
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization
board generic-x86-64
supervisor_api ok
version_api ok
installed_addons ESPHome Device Builder (2025.3.3), Mosquitto broker (6.5.0), Grafana (10.5.0), Node-RED (19.0.2), Studio Code Server (5.18.4), Advanced SSH & Web Terminal (20.0.2), Frigate (Full Access) (0.15.0), File editor (5.8.0)
Dashboards
dashboards 2
resources 0
views 0
mode storage
Network Configuration
adapters lo (disabled), enp1s0 (enabled, default, auto), docker0 (disabled), hassio (disabled), veth1abe13d (disabled), vethb16fcdf (disabled), veth2aeb9c1 (disabled), veth0218b4a (disabled), vethc38f3ec (disabled), veth32cbfa9 (disabled), vethb7c0327 (disabled), veth2ebced6 (disabled), veth043cf8e (disabled)
ipv4_addresses lo (127.0.0.1/8), enp1s0 (192.168.1.156/24), docker0 (172.30.232.1/23), hassio (172.30.32.1/23), veth1abe13d (), vethb16fcdf (), veth2aeb9c1 (), veth0218b4a (), vethc38f3ec (), veth32cbfa9 (), vethb7c0327 (), veth2ebced6 (), veth043cf8e ()
ipv6_addresses lo (::1/128), enp1s0 (fd23:e2f8:fb71::42b/128, fd23:e2f8:fb71:0:ce5a:cf13:3282:4fb4/64, fdeb:f70f:7a22:0:2125:15bf:15ec:700c/64, fe80::d66c:f2f:8241:4f6f/64), docker0 (fe80::c808:89ff:fe69:b8cb/64), hassio (fe80::fc31:d6ff:fef1:fa6/64), veth1abe13d (fe80::accc:cbff:fefc:e2d/64), vethb16fcdf (fe80::101a:8ff:fe2a:9715/64), veth2aeb9c1 (fe80::40b0:16ff:fec7:4029/64), veth0218b4a (fe80::6435:ffff:fe5f:9795/64), vethc38f3ec (fe80::dcd4:4eff:fec4:7303/64), veth32cbfa9 (fe80::1cd2:40ff:fef5:4cf2/64), vethb7c0327 (fe80::d42d:99ff:feb9:38c8/64), veth2ebced6 (fe80::44c4:8aff:fe95:34fc/64), veth043cf8e (fe80::3c06:4bff:fe30:87c6/64)
announce_addresses 192.168.1.156, fd23:e2f8:fb71::42b, fd23:e2f8:fb71:0:ce5a:cf13:3282:4fb4, fdeb:f70f:7a22:0:2125:15bf:15ec:700c, fe80::d66c:f2f:8241:4f6f
Recorder
oldest_recorder_run 5 kwietnia 2025 13:33
current_recorder_run 9 kwietnia 2025 20:34
estimated_db_size 2.50 MiB
database_engine sqlite
database_version 3.48.0

Chyba o to chodzilo