Intel Galileo by Arduino – czyli edukacja wg Intela (pierwsze wrażenia)

Nowość? Super – lubię nowości! Jak tylko dostałem info od Nettigo, że będą mieć Arduino Galileo w sprzedaży, to od razu stanąłem w kolejce. Zestaw kupiłem, kilka dni poużywałem (dość powierzchowne działania testowe) i jestem mądrzejszy o nową platformę oraz bez 300zł w kieszeni:)

arduino-galileo

Pierwsze wrażenia, czyli ‚unboksing’ Intel Galileo

Wielkość pudełka wskazywała, że będzie to całkiem pokaźny zestaw. Niestety w środku oprócz samej płytki Galileo znajduje się tylko zasilacz z wymiennymi końcówkami – chyba na wszelkie światowe standardy. Zasilacz 2A na 5V – standard. Niestety chyba do mojego zestawu zapomniało się komuś włożyć kabla USB, albo po prostu go nie dają. Przydałoby się też zamiast tych super końcówek do zasilania dać przelotkę z microUSB na gniazdo USB-A – niby na płytce jest host USB, ale właśnie z gniazdem microUSB. Adaptery takie można za 5-10zł kupić w sieci, ale z przesyłką to dodatkowe 15-20zł. Za 300zł oczekiwałem bardziej rozmyślnego podejścia do użytkownika. Zestaw ponoć nazywany jest edukacyjnym.

A co ma w środku?

Dużo. I to dość mocno ratuje ten zestaw. Takie trochę słabsze Raspberry Pi, ale z wieloma gadżetami od Arduino. Pełną specyfikację znajdziecie na stronie Arduino Certified – Intel Galileo. Mnie zainteresowały następujące:
– procek hiper-super-wypas Quark SoC1000 – 32bit, Pentium Class, ~1,2DMIPS, rdzeń taktowany 400MHz,
– pełna kompatybilność wyprowadzeń i napięć z Arduino (oparta o Arduino UNO R3),
– wbudowany RTC (zegar czasu rzeczywistego) z wyprowadzeniem goldpinów na płytce dla baterii,
– złącza RJ45, microSD, dodatkowy port RS232 (w złączu mini-jack), 2 x USB (jeden host, drugi client), 256KB SRAM, 256MB DDRAM, 8MB flash, mini-PCIe.

Najciekawsze złącze Galileo, czyli mini-PCIe

W pierwszym odruchu powiedziałem – po cholerę! Ale chwilę po tym przypomniałem sobie jak tanie są karty sieciowe, modemy 3G czy dyski SSD na to złącze i zapiałem z zachwytu. To jest tak przewaga Galileo względem innych rozwiązań Arduino – nie dość, że prawie wszystko jest pod ręką, to do tego za kilka zł można mieć jeszcze więcej.

Rzeczy dziwne i niezrozumiałe, czyli wady zestawu

Złącze host USB w postaci gniazda mikroUSB oraz brak przelotki do tego. Rozumiem oszczędność miejsca, na płytce, ale zdecydowanie bardziej wolałbym zamiast tysiąca standardów wtyczek zasilania jedną, dodatkową, tanią przejściówkę.

(niepotwierdzone) Programowanie do pamięci SRAM. Programuję – działa, resetuję – nie działa. Po uruchomieniu zestawu z linuksem na karcie SD działa OK. Zdecydowanie muszę to zweryfikować.

Procesor SoC nachodzący na powierzchnię przestrzeni dla shieldów. Niestety w przypadku montowania jakiś dodatkowych płytek nie wchodzi w grę użycie większego radiatora, a ten zdecydowanie jest potrzebny. Procesor w trybie jałowym (uruchomiony linuks Poky z karty SD, bezczynny) nagrzewa się do około 70st.C. Niewiele pomaga założenie malutkiego radiatorka widocznego powyżej. Schłodzenie sprężonym powietrzem na chwilę obniżyło temperaturę o kilkadziesiąt stopni.

galileo-temp

Kolejnym problemem jest dedykowana wersja środowiska programistycznego IDE dla niniejszego zestawu. Obecnie dostępne jest w wersji 1.5.3 i można je pobrać ze strony Intela. Trochę dziwi fakt potrzeby uruchamiania z sudo tego IDE, ale cóż – z zaleceniami producenta się nie dyskutuje:)

Podsumowanie – czy warto kupić Arduino Intel Galileo?

Póki co mam mieszane uczucia. Niby wypas, dużo na pokładzie, ale jakoś tak wszystko niezorganizowane, słabo opisane oraz z wsparciem, ale chyba nie najlepszym na stronie producenta. Trochę żałuję wydanych pieniędzy (tak, dałem się zakupom impulsywnym), aczkolwiek skoro już jest, to w końcu trzeba nauczyć się prostych środowisk embedded linux i zacząć efektywnie używać VI oraz OPKG zamiast NANO i APT-GET:)

Z czasem też pojawi się więcej opracowań na platformę i będzie zdecydowanie łatwiejsze dotarcie do przykładów i rozwiązań. Trzymam kciuki.

Przydatne miejsca / linki

http://arduino.cc/en/ArduinoCertified/IntelGalileo – oficjalna strona projektu w domenie Arduino

http://www.intel.com/content/www/us/en/intelligent-systems/galileo/galileo-overview.html – oficjalna strona projektu w domenie Intel

https://communities.intel.com/community/makers/demosprojects/content?itemView=thumb – galeria projektów opartych na Galileo na stronie Intel

https://communities.intel.com/message/208564#208564 – włączenie telnetu (putty/console) za pomocą prostego programu z poziomu Arduino IDE (bez potrzeby uruchamiania większej wersji linuksa z karty SD)

https://learn.sparkfun.com/tutorials/galileo-getting-started-guide/bigger-linux-image – opis uruchomienia „dużego” linuksa z poziomu karty SD (dodam od siebie, że karta ma być sformatowana na system plików fat32)

https://communities.intel.com/docs/DOC-22272 – przykłady dla „dużego” linuksa

https://communities.intel.com/thread/48009 – tutorial do przykładów dla Arduino IDE

http://www.yoctoproject.org/docs/current/ref-manual/ref-manual.html#usingpoky – bardzo dużo o „dużej” wersji linuksa na Galileo (Yocto Project – Poky)

http://www.malinov.com/Home/sergey-s-blog/intelgalileo-programminggpiofromlinux – opis jak sterować GPIO z poziomu linuksa

BeagleBone – to takie proste, czyli Raspberry Pi z dużą ilością GPIO

Dość długo zastanawiałem się, czy na pewno chcę zaopatrzyć się w kolejne mikro-cudo dostępne na rynku. W końcu nie wytrzymałem i rozpocząłem procedurę zakupu BeagleBone. Przejrzałem kilka źródeł i uznałem, że chyba najrozsądniejszym będzie zakup bezpośredni w Farnell/element14. Razem z kabelkiem mikroHDMI i przesyłką wyszło w okolicy 260zł brutto (dodam, że Farnell ma rewelacyjną jakość obsługi i mimo oddziału w UK bez problemu można załatwić wszystko po polsku.

beagleboard

Unpacking, czyli co w pudełku siedzi – na BeagleBone pierwsze spojrzenie

Paczka przyjechała (ciężko nawet nazwać to paczką, gdyż była to koperta bąbelkowa), a w środku: małe pudełeczko kartonowe, zafoliowany kabel miniUSB, zafoliowany kabel mikroHDMI (zamówiony dodatkowo) oraz faktura. Pudełko odrobinę większe, niż to, w którym dostarcza RS Raspberry Pi.

Po otwarciu ukazała się malutka płytka (powierzchnia zbliżona do karty kredytowej i chyba odrobinę mniejsza od Raspberry Pi) zapakowana w folię antystatyczną oraz mały kartonik z bardzo skróconą instrukcją pierwszego uruchomienia.

raspberry pi & beaglebone

Co siedzi w środku BeagleBone?

Zamówiłem BeagleBone Black w wersji A5B. Jest to wersja mocniejsza od standardowego BeagleBone (procek 1GHz via 720MHz). Oto główne parametry:

– procesor RISC A8 od TI: AM3359AZCZ100 (wydajność 2000MIPS, taktowany zegarem 1GHz),
– układ graficzny o wydajności 20M Polygonów (czyli 3D),
– 512MB pamięci RAM DDR3 taktowanej 400Mhz oraz 2GB wbudowanej (z preinstalowanym systemem) pamięci flash,
– dwa złącza USB: mini USB – pasywne i host USB-A o wydajności 500mA,
– mikroHDMI ze wsparciem Audio (stereo),
– ethernet 10/100,
– złącze mikroSD,
– 65 portów GPIO mogących obsługiwać i2c, spi, lcd, 4 x RS, 4 timery, CAN – wszystko w standarcie TTL 3,3V (+ kilka mniej znanych standardów),

całość zasilana jest poprzez mikroUSB lub dedykowane złącze zasilania 5V i pobiera w przedziale 210-460mA.

beaglebone black

Pierwsze uruchomienie BeagleBone Black – nie spodziewałem się tak prostego startu

Instrukcja zawarta w pudełku nazywa się Quick Start i zdecydowanie odpowiada objętością swojej nazwie. Zawarte w niej punkty (dla uruchomienia bez klawiatury, myszy i monitora hdmi) to:

– podłącz USB mini do portu w BBB,
– podłącz drugi koniec kabla do komputera,
– otwórz nowozainstalowane urządzenie pamięci masowej,
– uruchom START.htm,
– podążaj za instrukcją na ekranie.

W zasadzie równie dobrze po uruchomieniu (podłączeniu USB) i podłączonym kablu sieciowym wystarczy wpisać w przeglądarce adres 192.168.7.2, żeby otrzymać ten sam efekt. Reszta to zabawa (i pewnie kolejny wpis).