Potěšila mě zpráva, že s příchodem Androidu ICS byla přidána podpora MIDI USB kontrolerů. Tak jsem se rozhodl, že ji hned vyzkouším. Ale ouha! Na mém tabletu nic. To bylo zklamání. Midi Melody žádné USB zařízení připojené pomocí OTG kabelu nedetekovala. Začal jsem tedy pátrat na internetu a dozvěděl se následující. Zřejmě né uplně všechny systémy mají MIDI podporu zapnutu. Jak ji zapnout? Čtete dál.
Sledování TV na tabletu
Ke sledovaní televizního příjmu budete samozřejme potřebovat aplikaci, to je jasné. V zásadě to funguje takhle: nahrajete dvbt drivery viz. dřívější článek, připojíte se k tuneru a vytvoříte stream, který někde zobrazíte. Samozřejmě je poprvé třeba naladit programy. Aplikací pod Android které udělají všechno toto zmíněné moc není nebo jsem je zkrátka neobjevil. Naštestí jedna existuje a vratím se k ní později. Čeho existuje však spousta jsou video přehrávače, které umí přehrávat stream, který někdo vysílá a těch je vícero (BSplayer, MXplayer, KODI, XBMC atd). Nyní se však vraťme k prvně zmíněné skupině.
Automatické spouštění scriptů po bootu
Pořád mě vrtalo hlavou, jak u mého tabletu zavést mnou dodané moduly po startu zcela automaticky bez přeflashování kernelu. Jelikož není android jako android nelze napsat jeden obecný návod.
Co ale lze předpokládat u všech je to že při nabíhání androida spustí příkaz init skripty init.rc init.goldfish.rc a podobné umístěné v rootu. U některých androidů stačí umístit svůj skript do adresáře /system/etc/init.d a je hotovo, ale na mém kernelu tato vlastnost chyběla. Existují postupy jak ji zprovoznit na každém kernelu viz. zde, ale já se vydal trochu jinou cestou.
Otevřete postupně všechny init.rc soubory a najděte všechny příkazy které spouštějí shellovský skript. Typicky to bude vypadat nějak takto:
/system/bin/sh /system/etc/install-recovery.sh
U mě init.rc spouští za 1. /system/etc/install-recovery.sh a za 2. /system/bin/preinstall.sh. Přičemž 1. soubor na mém tabletu neexistuje 2. ano. Pokud 1. soubor vytvoříte bude se po každém startu spouštět také. Takže je na Vás který použijete. Důležité je, že se tyto skripty nepřepisují s každým restartem a Vámi udělané změny tak zůstanou zachovány.
Je nutné si, ale uvědomit že ve chvíli kdy se skript provádí není ještě namountovaná sd karta(y) a tak ji nelze použít jako úložiště pro případné použití.
V mém případě stačilo přidat nakonec souboru preinstall.sh řádek /system/bin/sh /system/vendor/modules/myscript.sh, kde jsou všechny nutné úkony pro zavedení modulů.
Extrahujeme Module.symvers a config
Pokud potřebujete kompilovat moduly do kernelu ke kterému nemáte zdrojový kód, budete potřebovat z tohoto kernelu získat určité informace. A právě o tom bude tento návod.
Návod jak na Android cross-compiling
Pokusím se zde vyjevit základní postup jak kompilovat (nejen) moduly pro Android. Pochopitelně tento postup není jediný možný a existuje mnoho variant téhož. Níže popsaný postup jsem použil já a dosáhl jsem uspěšného zavedení modulů na cílové platformě.
Jak z tabletu udělat televizi
Ještě než jsem sem si pořídil tablet, zajímalo mě, jestli na něm rozběhnu televizní příjem. Oslovil jsem tedy pana Googla, který mi potvrdil, že to možné bude. Přirozeně potřebujete tablet s USB konektorem, přístup k rootu, USB DVB-T klíčenku a hlavně správné ovladače. V následujícím textu se pokusím popsat postup jak televizi na tabletu zprovoznit. Budu se snažit popisovat vše obecně, ale musíte chápat že mám zkušenosti jen s mým tabletem a s mým tunerem. Také zde nechci popisovat strastiplnou cestu na získaní správného Toolchainu pomocí kterého můžete kompilovat zdrojaky na PC pro Androida. (koukni sem).Taktéž získání zdrojaků pro mou verzi kernelu mě stálo nejeden šedivý vlas. Dost bylo kecání, pusťme se do práce.