2013. július 15.

Érintőképernyő beépítése egy DVD játékosba a Raspberry Pi-hoz

A Raspberry Pi mini szervert általában terminál vagy vnc segítségével kezelem. Azonban a kompozit videó kimenetére is szükségem volt már, pl mikor nem látta a hálózatot egy elállítás miatt. Ehhez egy használaton kívül lévő hordozható DVD TV videó bemenetén át meghajtott alacsony sorfelbontású LCD megjelenítőt használok. Erre szereltem rá egy érintő panelt, így érintőképernyős lett a Raspberry Pi.


Egy a DX.com által elrontott rendelésben érkezett egy Eee PC 901-hez rendelet érintő panel, ami sajnos a 701-hez jó csak (ezt rendeltem: SKU: 19653, ezt kaptam: SKU: 16124). A visszaküldést kockázatosnak tartottam, hiszen csak akkor fizeti vissza a DX terméket és annak szállítási díját, ha át is vették. Így a két panel árkülönbözetével is beértem; csak jó lesz valamire... Aztán leesett, hogy lenne mibe beleszerelni. Mivel Linux alatt plusz driver nélkül is felismerte az eszközt két disztró is, ezért már csak idő kellet. Na, most a hétvégén volt egy kicsi.

Az ATD PD-768 DVD játékos kijelzőjének szétszerelése volt az első akadály. Ugyanis sehol sem láttam róla szétszedést, nem tudtam, hogy hány műanyag pöcköt török el, míg bontom. Végül két pöcök eltörése után okosabb lettem, így a többi épségben maradt. Egy harmadik akkor látta kárát, mikor összerakáskor negyedszer szedtem szét a gépet, mert valamit nem jól pakoltam vissza.


Mielőtt valaki kérdezné, nem, nem akarom a Raspberry Pi-t beleépíteni a DVD játékosba, mert nem hordozni akarom, hanem szerverként üzemeltetni. Nem rossz ötlet a későbbiekben, hogy az ATD házába valami belekerüljön, de egyelőre csak opció szinten marad meg.

Összeszedtem a szerelés közben készített képeket egy slideshow-ba (lassan tölt be):


A képek elérése direkt: kattints ide... A képekhez kommentárt fűztem, így nem szaporítom nagyon a szót.

A Raspberry Pi-on egy rá szabott Debian 7.0 fut. Azonnal felismerte az érintőpanelt. Korábban Ubuntu 12 alatt is ment. A kalibráláshoz azonban kellett az xinput_calibrator, melynek telepítése egyszerű a linkelt anyagból terminál alatt:
$ wget --no-check-certificate http://github.com/downloads/tias/xinput_calibrator/xinput_calibrator-0.7.5.tar.gz
$ tar xvzf xinput_calibrator-0.7.5.tar.gz
$ cd xinput_calibrator-0.7.5
$ ./configure
$ make
$ sudo make install
A kalibráció még egyszerűbb, négy pontra kell bökni, azt annyi. Elsőre és másodikra sem ment, melynek két triviális oka volt:
  1. A képernyő körüli keretben kivágott felső él sorja ottmaradt, és ez nyomta a kijelzőt. Azaz azt érezte a panel, hogy már érinti valami. Ezt szépen lesorjáztam, és utána már nem volt gond összerakás után.
  2. A panelből kilógó szalagkábel fordítva is bedugható a gyári csatlakozóba, így elsőre az X/Y irányok felcserélődtek. Ez úgy ellenőrizhető, hogy felfelé húzva a képen az ujjam, balra ment az egérkijelölés. Illetve kalibrálás során az utolsó negyedik kijelöléskor nem volt a negyedik pont közelében az egérmutató, hanem egy másikhoz ugrott átellenesen.
Frissítve 2013..07.17: A kalibrációt elfelejti reboot után a gép. Ezért azt el kell menteni egy konfig fájlba. Az xinput_calibrator ezt adta vissza kalibráció után:
Section "InputClass"        Identifier      "calibration"        MatchProduct    "eGalax Inc. Touch"        Option  "Calibration"   "1964 80 276 1814"EndSection
Ezt az alábbi helyre másoltam be, a fájl előtte nem létezett, sem a könyvtár:
$ sudo nano /usr/share/X11/xorg.conf.d/99-calibration.conf
Mivel az érintőpanel fényes, és a DVD játékos LCD-je matt, ezért az érintőpanel fényessége érvényesül. Így jobban látszik a kompozit videójel fos minősége. :) A panel felbontása nagyobb, mint a látott kép felbontása, így elég jól használható a kis panel egy toll vagy műanyag tompán hegyes tárgy segítségével. Az ujjra nem reagál, csak körömre (klasszikus PDA kijelző működéshez hasonlít). A wireless egeret le is húztam a Raspberry PI HUB-járól, így nem kell keresnem, hogy hová raktam, ott a kijelzőn, amire bökni akarok.

Még annyi érdekesség, hogy az ATD-ben találtam két USB aljzatot, mely egy magasabb tudású verzióban plusz két IC-vel valamiféle játékkonzolkodásra alkalmassá teszi. Ebben a változatban csak az aljzat van, melynek helyét kivágtam a hátlapon, jó lehet a jövőben. Azonban jelenleg ebben az +5V sincsen ott, így dísznek jó. Meg majd valaminek, ami nem tudom, mi lesz... :) A fenti képek között ott van róla a fotó, ha érdekel.

A projekt sikerült, a beépítés során a helyes bekötés volt csak macera, a mechanikus hack-elés egyszerű volt. Ha van kérdés, bővítem a bejegyzést.