Jak uruchomić pilota od nboxa w dekoderze Pace PVR @ElektrodaBot (dekoder przerobiony na E2)
Kiedyś było, ale nie mogę znaleźć.....
Krótka odpowiedź (co zrobić od ręki) - Sprawdź, czy dekoder „widzi” pilota nbox: uruchom w konsoli ir-keytable -t i naciskaj klawisze na pilocie. - Jeśli są wypisy „scancode … / KEY_…”, załaduj właściwą mapę: najpierw spróbuj gotowej rc6_mce: ir-keytable -c -p rc6 -w rc6_mce. - Jeśli po tym pilot działa, zapisz na stałe: w /etc/rc_maps.cfg dodaj wiersz: * * rc6_mce i zrestartuj GUI (init 4; init 3) lub dekoder. - Jeśli w teście widać tylko „scancode” bez KEY albo brak mapy, użyj własnego pliku keymapy (np. /etc/rc_keymaps/nbox) i załaduj go: ir-keytable -c -w /etc/rc_keymaps/nbox, a następnie dopisz go do /etc/rc_maps.cfg: * * /etc/rc_keymaps/nbox. - Gdy ir-keytable -t nic nie pokazuje: sprawdź sterownik odbiornika IR i czy image nie używa LIRC/eventlircd zamiast rc-core (patrz sekcja diagnostyka).
Uwaga: „Kiedyś było” zwykle oznacza, że po aktualizacji/zmianie image zniknął wpis w rc_maps.cfg lub odinstalowała się wtyczka „Remote control type/code”. Da się to przywrócić ręcznie jak wyżej.
---
Szczegółowa analiza i procedura
1) Warstwa sprzęt/sterownik vs. warstwa Enigma2 - Warstwa 1 (kernel, rc-core): surowe kody IR (scancode) mapowane są na standardowe kody klawiszy Linux (KEY_OK, KEY_MENU, itp.). Tym steruje ir-keytable i pliki keymap (rc_maps). - Warstwa 2 (Enigma2): plik keymap.xml mapuje KEY_* na akcje w GUI. Jeśli warstwa 1 nie działa, sama edycja keymap.xml nic nie da.
2) Szybka diagnostyka (3 minuty) - Zaloguj się SSH (root) i sprawdź, co masz: - ir-keytable (wyświetli znalezione urządzenia RC, np. rc0) - ir-keytable -p all -t - Naciśnij kilka klawiszy na pilocie nbox. - Jeśli widzisz linie z „scancode = 0x…”, to odbiornik działa. - Jeśli dodatkowo pojawia się „key_down: KEY_…”, to masz już jakąś (być może złą) mapę. - Brak reakcji? Sprawdź: - dmesg | grep -i rc lub ls /sys/class/rc – czy istnieje rc0? - Czy nie działa LIRC: ps | grep -E 'lircd|eventlircd'. Jeśli tak, zatrzymaj na test (systemctl stop lircd lub killall eventlircd), włącz rc-core: modprobe gpio_ir_recv (nazwa sterownika bywa inna, zależy od image).
3) Najpierw spróbuj gotowca: rc6_mce Spora część pilotów nbox (zwłaszcza „czarne” NC+/n) nadaje w RC6 (rodzina MCE). Jeśli w teście scancody zaczynają się od 0x800f04… jest duża szansa, że zadziała: - ir-keytable -c -p rc6 -w rc6_mce - Test: ir-keytable -t (czy przyciski pokazują KEY_OK, KEY_MENU itd. i czy E2 reaguje). - Utrwalenie: edytuj /etc/rc_maps.cfg i dodaj: - wariant 1 (nazwa tabeli): * * rc6_mce - albo wariant 2 (pełna ścieżka): * * /etc/rc_keymaps/rc6_mce - Restart GUI: init 4; init 3 (lub pełny reboot).
4) Gdy rc6_mce nie pasuje – własna mapa „nbox” Jeśli w teście masz scancode, ale bez poprawnych KEY, zrób własną mapę: - Stwórz plik /etc/rc_keymaps/nbox o strukturze: - Pierwsza linia (opcjonalnie komentarz): # table nbox, type: RC6 (lub NEC – zgodnie z tym, co pokazał ir-keytable -t) - Każdy wiersz: 0xSCANCODE KEY_NAZWA Przykład szablonu (uzupełnij według odczytów z ir-keytable -t): 0x........ KEY_OK 0x........ KEY_MENU 0x........ KEY_EXIT 0x........ KEY_UP 0x........ KEY_DOWN 0x........ KEY_LEFT 0x........ KEY_RIGHT 0x........ KEY_VOLUMEUP 0x........ KEY_VOLUMEDOWN 0x........ KEY_MUTE 0x........ KEY_CHANNELUP 0x........ KEY_CHANNELDOWN 0x........ KEY_INFO 0x........ KEY_RED 0x........ KEY_GREEN 0x........ KEY_YELLOW 0x........ KEY_BLUE - Załaduj i testuj: ir-keytable -c -w /etc/rc_keymaps/nbox ir-keytable -t - Zapis na stałe: dopisz do /etc/rc_maps.cfg wiersz: * * /etc/rc_keymaps/nbox - Restart GUI.
Wskazówki: - Jeśli widzisz tylko scancody, ale brak KEY, to dobieraj moduł protokołu: ir-keytable -p rc6,nec,rc5 (czasem trzeba ograniczyć do właściwego). - Po każdej zmianie pliku łatwo testować bez restartu systemu – wystarcza ponowne ir-keytable -c -w …
5) Gdy nic nie dochodzi do systemu (ir-keytable -t milczy) - Sprawdź, czy odbiornik IR nie jest w innym urządzeniu (czasem /dev/input/event1 zamiast event0 – ir-keytable samo wskaże rcX). - Upewnij się, że frontowy odbiornik IR w ogóle działa (kamera w telefonie: dioda pilota powinna „świecić” na biało/fioletowo; sprawdź też oryginalny pilot Pace). - Niektóre image dla starych Pace używają eventlircd (mostkuje IR → /dev/input). Wtedy: - Albo konfigurujesz LIRC (lircd.conf dla nbox) i Enigma2 „widzi” to przez eventlircd, - Albo wyłączasz LIRC i przechodzisz w 100% na rc-core + ir-keytable (zalecane na nowszych kernelach).
6) „Kiedyś to było w menu…” - W części image’ów (OpenATV/PLi, niektóre PKT/Hyperion) bywa pozycja typu: Menu → Ustawienia → System → Urządzenia wejściowe / Pilot → Typ pilota (Remote control type/code). Jeśli jej nie ma po aktualizacji, zwykle zniknęła wtyczka systemowa odpowiadająca za wybór pilota. - Rozwiązanie: ręczna konfiguracja rc_maps (jak wyżej) lub doinstalowanie wtyczki odpowiedzialnej za zarządzanie pilotami (nazwa różni się między image’ami; bywa to „remotesetup”, „inputdevicemanager”, „remotecontrolcode”). Ręczne rc_maps działa niezależnie od GUI, więc jest najpewniejsze.
7) Dalsze dopracowanie w Enigmie2 (opcjonalne) - Jeśli na poziomie systemu KEY_* są poprawne, ale w GUI nie wszystkie funkcje robią to, czego oczekujesz, dopracuj keymap.xml: - Plik zwykle w /usr/share/enigma2/keymap.xml (czasem w /usr/share/enigma2/keymaps/…). - Mapuje np. KEY_INFO → „info”, KEY_EXIT → „cancel” itp. - Zrób kopię zapasową i edytuj rozważnie. Zmiany działają po restarcie GUI.
---
Najczęstsze pułapki - Aktualizacja image nadpisała /etc/rc_maps.cfg lub wyczyściła /etc/rc_keymaps – objaw: „kiedyś działało”. - Jednoczesne użycie LIRC i rc-core potrafi się gryźć. Na czas diagnozy używaj jednego toru (preferuj rc-core + ir-keytable). - Niewłaściwy protokół (rc6 vs nec) – wymuś właściwy listą w -p. - Zmiana działa do restartu, bo nie zapisano rc_maps.cfg.
---
Prośba o dane (żeby przygotować gotowy plik nbox dla Twojej konfiguracji) Podaj proszę: - Model Pace PVR (np. TDS850/865/…). - Image i wersję (np. OpenATV x.y, OpenPLi x.y, PKT Hyperion n). - Wynik ir-keytable (bez parametrów) oraz kilka linii z ir-keytable -t po wciśnięciu OK, MENU, STRZAŁKA GÓRA. - Zawartość /etc/rc_maps.cfg (jeśli istnieje) oraz listę plików w /etc/rc_keymaps/.
Na tej podstawie przygotuję gotowy plik /etc/rc_keymaps/nbox dopasowany do Twojego pilota i podpowiem, co dokładnie wpisać do rc_maps.cfg.
Możesz mnie wywołać w każdym temacie pisząc @ElektrodaBot. Zastrzeżenie: Niektóre odpowiedzi udzielone przez ElektrodaBota mogą być niedokładne. Elektroda nie ponosi odpowiedzialności za dokładność, rzetelność ani kompletność prezentowanych informacji. Wszystkie odpowiedzi ElektrodaBota powinny być zweryfikowane przez użytkownika. OpenAI może monitorować i zapisywać informacje wprowadzane po wywołaniu ElektrodaBota.