Portál AbcLinuxu, 27. dubna 2024 22:18

Kinect pro Xbox 360 a GNU/Linux – rozlousknutí komunikace

9. 11. 2011 | Ladislav Hagara
Články - Kinect pro Xbox 360 a GNU/Linux – rozlousknutí komunikace  

V prvním dílu seriálu Kinect pro Xbox 360 a GNU/Linux bylo snímací zařízení Kinect představeno. V dnešní části se vrátíme k soutěži, jejíž cílem bylo vytvoření svobodného ovladače pro Kinect. Ukážeme si, jak se vývojářům pomocí reverzního inženýrství povedlo komunikaci mezi Kinectem a konzolí Xbox 360 rozlousknout. Řekneme si, kdo je Limor „Ladyada“ Fried a proč ke Kinectu potřebujeme speciální kabel.

Obsah

Poslední hodiny soutěže

link

Z minulého dílu víme, že Héctor Martín Cantero, vítěz soutěže pořádané společností Adafruit Industries o 3000 USD, zveřejnil požadované zdrojové kódy a důkazní video pouhé tři hodiny po otevření krabice s právě zakoupeným Kinectem. To samozřejmě neznamená, že se na Kinect nemohl připravit předem. Zaměstnanci Adafruit Industries se Kinectu také věnovali. Získané informace sdíleli spolu s ostatními zájemci na svém blogu.

Soutěž byla vyhlášena 4. listopadu 2010. Hned druhý den dorazil jeden Kinect také do Adafruit Industries. Tam jej hned připojili na přístroje.

Kinect Kinect

Několik dnů se nic pořádného nezjistilo, nebo to alespoň nebylo publikováno. Zvrat nastal 9. listopadu ve 13:28 (EST).

9. listopadu 13:28

link

Osoba jménem l45256 oznámila, že pomocí analyzátoru Beagle USB 480 odchytila data mezi Kinectem a konzolí Xbox 360. Reverzním inženýrstvím získala formát přenášených dat a zveřejnila kód pro zobrazení videa z Kinectu využívající knihovny beagle.so/beagle.dll (knihovna dodávaná s analyzátorem Beagle). Podmínkou soutěže ale bylo, že výsledný kód musí být postaven nad svobodnými knihovnami. Osobě l45256 bylo sděleno, že je blízko k vítězství, stačí jen místo knihovny beagle využít knihovny libusb. Od té doby se ale osoba l45256 neozvala.

9. listopadu 18:51

link

Zaměstnanci Adafruit Industries se také rozhodli Beagle USB 480 použít. Bez pořádného hardwarového USB analyzátoru by pravděpodobně nebylo možné komunikaci mezi Kinectem a herní konzolí Xbox 360 rozlousknout.

Kinect Kinect Kinect

9. listopadu 22:58

Adafruit Industries zveřejňuje na GitHubu přes 600 MB odchycených dat. Kdokoli si mohl (a pořád může) soubory s příponou .tdc stáhnout a začít je zkoumat. Zájemcům byl doporučen software společnosti Total Phase. Ta se svými analyzátory dodává Data Center. Software si lze volně stáhnout. Samozřejmě také pro Linux.

Kinect

10. listopadu 06:56

link

Héctor Martín Cantero zveřejňuje svůj kód a soutěž vyhrává.

Hacking Xboxu

link

Společnost Adafruit Industries se poté, co podpořila vývoj svobodného software pro Kinect, rozhodla 12. listopadu 2010 podpořit i prodej kontroverzní knihy Hacking Xboxu, úvod do reverzního inženýrství (Hacking the Xbox, An Introduction to Reverse Engineering) od Andrew „bunnie“ Huanga. Od 21. července 2011 si lze knihu zakoupit dokonce ve speciální, autorem podepsáné edici.

Vydavatelství John Wiley & Sons odmítlo domluvenou knihu po odevzdání poslední kapitoly vydat, protože se bálo případných soudních sporů souvisejících s DMCA (Digital Millennium Copyright Act). Autor se následně rozhodl vydat knihu ve vlastním nákladu. Založil vydavatelství Xenatera Press. Později se distribuce ujalo nakladatelství No Starch Press.

Kinect Kinect Kinect

Hacking Kinectu

link

V květnu 2011 zveřejnila Limor „Ladyada“ Fried článek DIY Kinect Hacking. V článku zpětně popisuje kroky, pomocí kterých se jim v Adafruit Industries povedlo Kinect rozblikat a rozpohybovat. Článek lze doporučit jako úvod do reverzního inženýrství.

Kinect

Kinect Kinect Kinect

Limor „Ladyada“ Fried

link

Limor Fried, známá pod přezdívkou Ladyada, je zakladatelkou a majitelkou společnosti Adafruit Industries. Ona osobně tedy stojí za svobodným softwarem pro Kinect. Časopis Fast Company ji představuje jako jednu z nejvlivnějších žen v oblasti technologií za letošní rok. V dubnu 2011 se objevila na obálce časopisu Wired.

Kinect

Napájecí kabel

link

Zpátky ke Kinectu. Kinect nelze k počítači připojit přímo. Přímo jej lze připojit pouze k novější konzoli Xbox 360 S. Ta je vybavena AUX portem. Jedná se o proprietární USB port. Abychom mohli Kinect připojit k počítači, nebo i k originální konzole Xbox 360, potřebujeme speciální napájecí kabel jež slouží také jako AUX / USB převodník. Kinect je nabízen v různých baleních. Pokud jste si koupili Xbox 360 v balení spolu s Kinectem, pravděpodobně napájecí kabel nemáte. Pokud jste si koupili Kinect v balení s některou hrou, je možné, že kabel také nevlastníte. Jistotu máte, pokud jste si zakoupili Kinect samostatně.

Pokud napájecí kabel nevlastníte, lze jej samozřejmě dokoupit. Nebo podomácku vyrobit.

Kinect Kinect Kinect Kinect Kinect

Příště

link

Příště už Kinect konečně k počítači s nainstalovaným Linuxem připojíme.

Seriál Kinect pro Xbox 360 a GNU/Linux (dílů: 5)

První díl: Kinect pro Xbox 360 a GNU/Linux – Úvod, poslední díl: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI.
Předchozí díl: Kinect pro Xbox 360 a GNU/Linux – Úvod
Následující díl: Kinect pro Xbox 360 a GNU/Linux – OpenKinect a libfreenect

Další články z této rubriky

HW novinky: podzimní přehled #2
HW novinky: podzimní přehled #1
HW novinky: návrat skleněných ploten v HDD
HW novinky: PCI Express 4.0 prý ještě letos
HW novinky: i Skylake-X s 12 jádry používá levnou teplovodivou pastu

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.