Jednym pilotem – czyli zmuszenie do współpracy telewizora z dekoderem satelitarnym.

Jednym pilotem – czyli zmuszenie do współpracy telewizora z dekoderem satelitarnym.

Witam.

Dzisiaj mały projekcik, który przy odrobinie szczęścia można zrealizować w ciągu jednego wieczora z użyciem części znalezionych w szufladzie (zakładam tu oczywiście, że każdy szanujący się majsterkowicz ma w szufladzie co najmniej jeden egzemplarz Arduino – ot tak, na wszelki wypadek). Ale najpierw geneza projektu.

Jako że mój dekoder Polsatu zaczął chorować na dyskopatię oraz zdradzać objawy rychłego przejścia do Krainy Wiecznych Zakłóceń postanowiłem sprawić sobie coś nowego, a przede wszystkim nowocześniejszego. Jedynym sensownym wyborem był EVOBOX PVR – i po paru przygodach z paniami z Polsatu (pasujących niestety bardziej do Piekielnych niż Majsterkowa) nowiutki dekoder stanął na honorowym miejscu pod telewizorem.

Na pierwszy ogień poszła oczywiście konfiguracja tego, czego poprzedni dekoder nie miał – a mianowice CEC. Po kilku kliknięciach wydawało się, że dekoder świetnie się dogaduje z moim telewizorem i z nadzieją, że nie będę już musiał bawić się dwoma pilotami na raz spróbowałem skonfigurować regulację głośności. I tu zonk… okazało się, że mój telewizor nie ma najmniejszego zamiaru reagować na sygnał głośności z dekodera.

Dlatego postanowiłem zrobić coś, co przetworzy sygnał pilota Polsatu na kody Samsunga.

Przeszukanie szuflady dało nastęujące rezultaty:

Arduino Pro Mini (bez wlutowanych pinów)
Odbiornik podczerwieni (nie mam pojęcia jaki typ, z demontażu ze startymi oznaczeniami)
Dioda nadawcza
Uszkodzona ładowarka do e-papierosa (wykorzystałem kabel USB)
Różnej maści tranzystory, oporniki i kondensatory.

Zacząłem od prób z moim dyżurnym Arduino Uno. Początkowo spróbowałem podłączyć diodę nadawczą przez rezystor bezpośrednio do pinu wyjścia Arduino – niestety, okazało się że przy 220Ω dioda ledwo świeci i telewizor w ogóle na nią nie reaguje. Dlatego końcowy układ wygląda tak:

 

 

Można zastosować tu dowolny tranzystor przełączający NPN wytrzymujący co najmniej 100 mA. Pojemność kondensatora nie jest krytyczna (nie powinien być po prostu mniejszy niż 4.7µF, ja miałem pod ręką 10µF i taki zastosowałem). Rezystor R1 również może być dowolny – od 200Ω do 2kΩ powinien działać.

Zamówiłem obudowę Z-85 (korzystając z tego, że sąsiad wybierał się akurat do sklepu) i w międzyczasie zacząłem eksperymentować z programem. Już na wstępie okazało się, że bezpośrednia translacja jest niemożliwa. Telewizor reagował tylko na pierwszy impuls (nie powtarzanie), po wprowadzeniu półsekundowego odstępu natomiast impulsy z pilota przychodziły za często, i w efekcie telewizor albo głupiał, albo zmieniał głośność w tempie wyścigowym. Trochę prób – i wszystko zaczęło grać, telewizor zaczął reagować dokładnie tak jak chcę. Kod nie jest długi, chociaż pisany trochę “na kolanie” – ale działa bezbłędnie i mogę go tu z czystym sumieniem zamieścić.

Trzeba tu pamiętać o odpowiednim skonfigurowaniu dekodera. W normalnej sytuacji telewizor powinien przejąć sygnał od trzech przycisków (V+, V-, Mute) i po włączeniu sterowania telewizorem dekoder na te klawisze nie reaguje. Na szczęście udało mi się znaleźć konfigurację, w której Mute obsługiwany jest bezpośrednio przez dekoder, natomiast V+ i V- o prostu są ignorowane. W tym celu należy wyłączyć sterowanie telewizorem i włączyć dźwięk przestrzenny.

Po odebraniu obudowy zacząłem przymierzać się do zmieszczenia tego wszystkiego wewnątrz. Początkowo myślałem o montażu “na pająka”, ale po dokładnym zmierzeniu uciąłem kawałek płytki uniwersalnej (cztery rzędy). Płytka trzyma się Arduino na kawałku druciku (ucięta końcówka od kondensatora) połączonym do GND i rezystorze R1 (od bazy tranzystora do D3). Teoretycznie w takiej sytuacji odbiornik powinien być również wlutowany w plytkę (wtedy trzecią łączówką byłoby połączenie płytki do D5) – niestety jak wspomniałem odbiornik miał bardzo krótko obcięte końcówki, i postanowiłem przykleić go po prostu do obudowy od wewnątrz, wiercąc uprzednio odpowiedni otwór.

Ponieważ do Arduino wlutowałem cztery piny kątowe służące do programowania, wykorzystałem je do umocowania całego układu wewnątrz. W tym celu z kawałka spienionego PCV 4mm wyciąłem prostokąt odpowiadający ścianie obudowy i wywierciłem w nim otworki (0.6mm) odpowiadające rozstawowi owych czterech pinów. Musiałem oczywiście wyciąć w nim jeszcze otwór na diodę (jak się później okazało jeszcze drugi na przeprowadzenie kabelka zasilającego), ale po złożeniu okazało się, że wszystko trzyma się znakomicie. W obudowie wywierciłem więc oprócz otworów na odbiornik i LEDę mały otworek na przedniej ścianie przez który prześwieca dioda sygnalizująca działanie pilota, złożyłem wszystko do kupy, obudowę okleiłem czarną taśmą izolacyjną (bo denko w Z-85 trzyma się na słowo honoru) i zadowolony z siebie zacząłem bawić się pilotem…

…no i na razie na zabawie się, skończyło, bo moje urządzenie przestało reagować na sygnał pilota Polsatu.

Powód okazał się trywialny. Otóż kabelki łączące odbiornik z płytką mają swoją określoną sprężystość, i po zamknięciu po prostu dociskały Arduino do denka, przy okazji wciskając reset. Pomogło doklejenie dwóch dodatkowych kawałeczków PCV do denka, aby utrzymać Arduino we właściwej odległości.

Po ponownym zmontowaniu całości przykleiłem urządzenie do stolika od telewizora taśmą dwustronna, aby nikomu nie przyszło do głowy przestawienie go w inne miejsce, podłączyłem zasilanie (w moim przypadku do huba, ale można podłączyć je do dowolnego nieużywanego gniazda USB w telewizorze – np. kamery) i teraz mogę cieszyć się obsługą obu urządzeń z jednego pilota.

Oczywiście taka obsługa jest możliwa tylko wówczas, gdy korzystamy z sygnału satelitarnego. W pozostałych przypadkach oryginalny pilot od telewizora może się przydać!

Obudowę Z-85 zamówiłem tylko dlatego, że nie miałem żadnego ładnego pudełeczka – te, które miałem nie bardzo nadawały się na wystawianie na widok. Samo umiejscowienie urządzenia podyktowane było w moim przypadku takim a nie innym ustawieniem telewizora – jest to sprawa indywidualna i w wielu przypadkach może się okazać, że obudowa może być dowolna bo urządzenie jest całkowicie schowane, lub zgoła nie jest w ogóle potrzebna.

Przepraszam za fatalną jakość zdjęć, ale nic lepszego od komórki nie mam, a mój model nie ma trybu makro.

Przyjemnego oglądania życzy
ethanak

Ocena: 4.55/5 (głosów: 11)

Podobne posty

6 komentarzy do “Jednym pilotem – czyli zmuszenie do współpracy telewizora z dekoderem satelitarnym.

  • Nie tylko, również zmniejsza ;)

    W mojej sytuacji nic więcej nie jest potrzebne – poza regulacją głośności reszta działa przez CEC. Można powiedzieć, że to po prostu taka proteza.

    Odpowiedz
  • Widzę że autor obcykany w temacie pilotów. Mógł by autor umilić ludziom żywot i stworzyć jakiś poradnik dot. programowania pilotów? Mam tu na myśli coś nad czym zaczynam właśnie pracować. Już mnie wnerwiqa milion pilotów. Chciał bym stworzyć cos co udało by się przeprogramować kodami zczytanymi z innych pilotów tak by używac jednego pilota do dekodera tvsat, do tv i np. dekodera dvbt. Zczytać kody za pomocą irdy i Arduino już umiem ale nie umiem zaprogramować ich do jakiegokolwiek innego pilota.

    Odpowiedz
  • Dzięki twojemu projektowi wpadłem na pomysł chcem użyć modulu Ethernet sheild i podłączyć to do sieci i za pomocą przeglądarki w smartfonie obsługiwać parę funkcji pilota.

    Odpowiedz

Odpowiedz

anuluj

Masz uwagi?