25
projekt iz PPIUS-a, FER 2013. Goran Macut ([email protected]) bez Kinecta

BeagleBoard and BeagleBoard XM

Embed Size (px)

DESCRIPTION

Presentation for exploration of Linux on BeagleBoard and BeagleBoard XM, made for the course Programming Industrial Embedded Systems on University of Zagreb Faculty of Electrical Engineering and Computing, held in 2012

Citation preview

Page 1: BeagleBoard and BeagleBoard XM

projekt iz PPIUS-a, FER 2013.

Goran Macut ([email protected])

bez Kinecta

Page 2: BeagleBoard and BeagleBoard XM

Zadatak: BeagleBoard + Kinect

• Nažalost, ipak ništa od Kinecta, 2 mjeseca nije dovoljno da se sinkroniziraju dva čovjeka i jedan komad opreme

Page 3: BeagleBoard and BeagleBoard XM

BeagleBoard

• OMAP3530

– 1,200 Dhrystone MIPS using the superscalar ARM Cortex-A8

• OpenGL© ES 2.0 capable 2D/3D graphics accelerator

• HD video capable TMS320C64x+ DSP

• DVI-D, S-VIDEO, Stereo audio in and out

• USB (host and device), MMC+/SD/SDIO

• 128MB RAM, 256MB Flash

Izvor: http://beagleboard.org/hardware

Page 4: BeagleBoard and BeagleBoard XM

• Nema etherneta

– samo emulirana veza preko USB-a

• Malo USB konektora

– nužno korištenje USB HUB-a

• Serijska veza sa RS-232 naponskim nivoima, a bez RS-232 konektora

– potreban adapter

• Prilikom izrade su bili preškrti

BeagleBoard

Page 5: BeagleBoard and BeagleBoard XM

Kako to upogoniti?

Page 6: BeagleBoard and BeagleBoard XM

BeagleBoard + Angstrom Linux

• Angstrom – „službeno podržana” distribucija * – Općenita embedded distribucija, nije vezana uz BeagleBoard

• Demo slika ima svoje probleme – Potrebna je dodatna ručna konfiguracija kako bi se osposobilo

serijsko sučelje prema sustavu

– USB emulacija mreže ne funkcionira

– Relativno star kernel

• Ipak, dobro je za naučiti kako to sve zajedno funkcionira. – Upute vrijede i za druge distribucije

* http://downloads.angstrom-distribution.org/demo/beagleboard/

Page 7: BeagleBoard and BeagleBoard XM

BeagleBoard + Angstrom Linux II

• Izgradnja novije verzije Angstroma, s novijim kernelom koji nema problema sa mrežom preko USB-a

• Koristi OpenEmbedded*

– radni okvir za izgradnju embedded Linux sustava

– skup dodatnih patcheva i skripti za izgradnju sustava

• Konačno osposobljena mreža preko USB-a

• Ne funkcionira izgradnja kernel modula

– teško je doći do valjanog izvornog koda kernela koji se trenutno koristi

* http://www.openembedded.org/wiki/Main_Page

Page 8: BeagleBoard and BeagleBoard XM

BeagleBoard - pristup mreži preko USB-a

reboot ≠ isključi pa uključi uređaj

USB mreža na BeagleBoardu koji sam imao na raspolaganju ne radi nakon reboota - potrebno je fizički isključiti uređaj iz struje i ponovno

ga uključiti

Page 9: BeagleBoard and BeagleBoard XM

BeagleBoard - pristup mreži preko USB-a

• Osim samog omogućavanja mreže potrebna je i malo kompleksnija mrežna konfiguracija *

• Da bi BeagleBoard spojen na računalo imao pristup Internetu potrebno je konfigurirati računalo (NAT, IP masquerade)

• BeagleBoard ne može na Internet bez nekog računala

* Hvala Andrei Samaržiji na pomoći oko mrežne konfiguracije

Page 10: BeagleBoard and BeagleBoard XM

Može možda bez hardvera?

Page 11: BeagleBoard and BeagleBoard XM

BeagleBoard - emulacija QEMU-om

• QEMU omogućuje emulaciju nekih ARM sustava, uključujući i BeagleBoard

• Implementacija bi mogla biti i bolja

• Prilikom emuliranja Angstroma na BeagleBoardu funkcionira grafičko sučelje i sustav se podiže bez problema, ali mrežno sučelje ne funkcionira

Page 12: BeagleBoard and BeagleBoard XM

A što dalje?

Page 13: BeagleBoard and BeagleBoard XM

BeagleBoard XM

• ARM Cortex TM-A8

• 512-MB LPDDR RAM

• On-board four-port high-speed USB 2.0 hub with 10/100 Ethernet

• DVI-D, S-video

• Stereo audio out/in

• microSD

Izvor: http://beagleboard.org/hardware-xm

Page 14: BeagleBoard and BeagleBoard XM

• Ima pravi ethernet

• Ima pravi serijski port

• Ima 4 USB host priključka + 1 USB on-the-go priključak

• Prilikom izrade nisu škrtarili, ovaj je BeagleBoard XM puno konkretniji proizvod od originalnog BeagleBoarda

BeagleBoard XM

Page 15: BeagleBoard and BeagleBoard XM

Softver?

Page 16: BeagleBoard and BeagleBoard XM

BeagleBoard XM + Debian

• Dostupne su skripte za vrlo laku pripremu sustava za pokretanje * – spoje se na web, skinu što treba i same konfiguriraju SD karticu

• Sustav se brzo i jednostavno priprema za podizanje

• Testirana je mreža i HDMI izlaz – funkcioniraju normalno

• Koristi se izmijenjen i vrlo nov kernel – do izvornog se koda može samo preko githuba – teška konfiguracija sustava za

izgradnju kernel modula

* http://elinux.org/BeagleBoardDebian

Page 17: BeagleBoard and BeagleBoard XM

BeagleBoard XM + Linaro

• Linaro je organizacija osnovana 2010 koja se bavi prilagodbom Linux softvera ARM arhitekturi *

– imaju 120 inženjera u različitim kompanijama

• Trenutno nude prilagođene Android, OpenEmbedded i Ubuntu distribucije

– ovo super funkcionira

• Isproban je Ubuntu

– sve funkcionira kao na x86 sustavima

* http://www.linaro.org/

Page 18: BeagleBoard and BeagleBoard XM

Linaro - članovi

Page 19: BeagleBoard and BeagleBoard XM

Emulacija?

Page 20: BeagleBoard and BeagleBoard XM

BeagleBoard XM + QEMU

• Na qemu-system-arm radi sam Linaro

• Sustav baziran na BeagleBoardu se bez problema podiže, ali bez grafičkog korisničkog sučelja

• Mreža funkcionira!

• Treba još istraživati, ovo ima potencijala

Page 21: BeagleBoard and BeagleBoard XM

Zaključak

• BeagleBoard XM je veliki napredak u odnosu na BeagleBoard

• Problem je velika segmentacija Linux distribucija

• Treba se držati hardvera uz koji stiže i službeni podržani softver

• Komercijalne Linux distribucije itekako imaju smisla

Page 22: BeagleBoard and BeagleBoard XM

A što dalje?

Page 23: BeagleBoard and BeagleBoard XM

A što dalje?

• Istraživanje Linaro QEMU podrške, treba naći emulirani QEMU hardver na kojem dobro funkcionira embedded Linux

• Osposobljavanje cross-compile lanca koji cilja na BeagleBoard platformu

• Razvoj aplikacija

Page 24: BeagleBoard and BeagleBoard XM

Pitanja?