kofec Opublikowano 1 godzinę temu Udostępnij Opublikowano 1 godzinę temu Cześć, przez ostatnie tygodnie zrobiłem dla nBoxa ADB 5800 (BSLA i BSKA) na GraterliaOS pełne HDMI-CEC — moduł jądra plus wtyczkę enigmy. Działa od października na czterech boxach z telewizorami LG i Sony, więc się dzielę. Po co Graterlia ma cec_ctrl.ko (pakiet kernel-modules-cec-gos), ale on tylko nadaje — odbiór jest w źródle wyłączony, a /proc/stb/hdmi/cec przy odczycie zwraca pusto. Box nie wie więc, czy TV jest włączony i jakie wejście pokazuje, a TV nie widzi boxa na liście źródeł. Co robi kernel-module-nbox-cec — moduł nbox_cec zamiast cec_ctrl: odbiór ramek CEC, potwierdzanie (ACK), odpowiedzi na pytania TV (nazwa „nBox” na liście źródeł, adres fizyczny, stan zasilania), nadawanie z arbitrażem, klawisze pilota TV. nBox CEC (wtyczka) — Menu → Ustawienia → System → nBox CEC: box budzi się, gdy TV przełączy się na wejście nBoxa, box zasypia N sekund po wyłączeniu TV albo przełączeniu na inne wejście, przy budzeniu pilotem nBoxa włącza TV i przełącza wejście, przy usypianiu wyłącza TV (opcjonalnie tylko wtedy, gdy TV pokazuje nBoxa), pilot TV steruje nBoxem (to, co TV przepuszcza — Sony np. tylko strzałki i OK). Domyślnie wtyczka jest wyłączona i wszystkie reakcje ustawione na „nic” — sama instalacja niczego nie zmienia. Ustawia się profil TV (jak rozpoznać, że TV działa) i reakcje w obie strony. Log: /tmp/nboxcec.log. Sprawdzone z / próbowane z LG plazma 50PJ250 — profil zdarzenia LG webOS — profil odpytywanie (w standby dalej nadaje, więc „cokolwiek od TV” nie wystarcza) Sony BRAVIA 8, Sony z soundbarem HT-A3000 — profil cisza Samsung LE40C650 — potwierdza ramki, ale nic nie odpowiada (może Anynet+ wyłączony) Instalacja Oba pakiety wrzuć do /tmp (FTP albo scp -O) i przez telnet/SSH: opkg install /tmp/enigma2-plugin-systemplugins-nboxcec_2.0.2_all.ipk opkg remove kernel-modules-cec-gos opkg install /tmp/kernel-module-nbox-cec_2.0.1_adb5800xx.ipk reboot Jeśli opkg remove odmawia, bo od kernel-modules-cec-gos zależy wtyczka HDMI-CEC Graterlii (a od niej na niektórych obrazach graterlia-e2gui), użyj opkg remove --force-depends kernel-modules-cec-gos — znika tylko cec_ctrl.ko. Wtyczki HDMI-CEC Graterlii nie włączaj razem z nBox CEC. Restart jest potrzebny: cec_ctrl po rmmod nie oddaje nóżki ani przerwania. Po restarcie cat /proc/nbox_cec powinno pokazać nozka nasza. Wycofanie: opkg remove kernel-module-nbox-cec, opkg install kernel-modules-cec-gos z feedu Graterlii, restart. Źródła i budowanie Wszystko jest na GitHubie, na GPL v2: github.com/kofec/nbox-sh4 wtyczka: enigma2/NBoxCEC moduł: sh4/nbox_cec jak to działa (linia CEC na PIO 4.4, czasy z TMU2, zachowanie telewizorów) i pełna instrukcja: README Moduł buduje się w Dockerze na Linuksie x86_64 — w repo jest toolchain STLinux 2.4 (gcc 4.8.4, tym samym zbudowano jądro Graterlii) i skrypt przygotowujący drzewo jądra z vermagic zgodnym z boxem: docker build -t nbox-sh4:4.8.4 sh4 docker run --rm -v "$PWD":/work nbox-sh4:4.8.4 sh /work/sh4/przygotuj_jadro.sh docker run --rm -u $(id -u):$(id -g) -v "$PWD":/work -w /work/sh4/nbox_cec nbox-sh4:4.8.4 \ make -C /work/build/linux-2.6.32.61_stm24_0217 ARCH=sh CROSS_COMPILE=sh4-linux- \ M=/work/sh4/nbox_cec modules python3 pakiety/zbuduj_ipk.py --nbox-ko sh4/nbox_cec/nbox_cec.ko --wyj wynik Sama wtyczka nie potrzebuje Dockera: python3 pakiety/zbuduj_ipk.py --wyj wynik. Sumy kontrolne załączników (md5) 9d85d856e6a54fa006dc49c50827f23b enigma2-plugin-systemplugins-nboxcec_2.0.2_all.ipk 4700799c555dfbecb1dead94d4972a4c kernel-module-nbox-cec_2.0.1_adb5800xx.ipk Uwagi, logi z /tmp/nboxcec.log i cat /proc/cec_rx z innymi telewizorami mile widziane — szczególnie Samsung i Philips. enigma2-plugin-systemplugins-nboxcec_2.0.2_all.ipk kernel-module-nbox-cec_2.0.1_adb5800xx.ipk Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.