intel Galileo - podsumowanie i uwagi
Po niecałych dwóch tygodniach testowania i sprawdzania intel Galileo postanowiłem podsumować moje spostrzeżenia i uwagi z testów i zabawy. Intel Galileo wywarło na mnie mieszane uczucia od początkowego zachwytu aż do małego rozczarowania.
W ramach testów powstały wpisy:
- Intel Galileo - wygląd i specyfikacja
- Start z intel Galileo - instalacja sterowników, firmware i dodatkowych...
- intel Galileo - programowanie i obsługa GPIO w Arduino IDE
- intel Galileo - programowanie i obsługa GPIO na systemie Linux
To co przeczytacie poniżej jest tylko moim zdaniem i spostrzeżeniami z testów i obserwacji i nie każdemu może się to spodobać. Zawsze możecie przedstawić swoje zdanie, pisząc o tym w komentarzu. Dobra dyskusja nie jest zła.
Pierwszy start
Pierwsze uruchomienie i podłączenie trochę mnie rozczarowało z powodu braku automatycznego instalowanego sterownika lub po prostu dołączonego instalatora sterowników dla płytki i tu na tym polu firma Intel się nie postarała. Po kilku zabiegach, o których pisałem udało mi się uruchomić i zacząć zabawę z intel Galileo. Mam nadzieję, że Intel doda prosty instalator sterowników albo dojdzie do porozumienia z Microsoftem i takie sterowniki trafią do bazy sterowników w systemie. Kolejnym rozczarowaniem jest informacja, że płytkę należy uruchamiać w jednej słusznej kolejności (bo inaczej może się uszkodzić) czyli najpierw zasilacz potem dopiero kabel USB do komputera. Czy ciężko byłoby zrobić jakieś zabezpieczenie tego (prosty tranzystor nie dający zasilania z USB, jeśli nie jest włączone główne zasilanie)? Myślę, że znajdą się tacy, którzy będą o tym zapominać i uszkadzać swoje płytki. Choć, póki co nie słyszałem o uszkodzeniu płytki w taki sposób.
Programowanie
Programowanie na intel Galileo daje nam kilka możliwości. Możemy programować zarówno w popularnym Arduino IDE jak na zwykłym Arduino, istnieje również możliwość programowania z poziomu systemu Linux, choć i tu nie ma szału.
Płytka daje możliwość nauki programowania dla Arduino za pomocą specjalnej wersji Arduino IDE. Samo programowanie nie różni się nic od tego jakbyśmy posiadali zwykłe Arduino. Programowanie w Arduino IDE i sterowanie urządzeniami nie sprawiało żadnych problemów, dlatego nie ma się do czego przyczepić i Galileo zdało ten egzamin na 5+.
Drugim moim zdaniem bardziej przydatnym sposobem jest programowanie za pomocą takich języków jak bash, C/C++ czy Python i nie tylko samymi pinami GPIO, ale również pisanie zwykłych programów konsolowych i skryptów. Niestety, ale dostępna jest tylko biblioteka dla Python-a do obsługi pinów GPIO z poziomu Linuksa. Intel nie zadbał o biblioteki dla C czy C++ co mnie bardzo rozczarowało i w tym wypadku jesteśmy zmuszeni w pozostałych językach operacje na pinach GPIO wykonywać na plikach z wykorzystaniem sysfs. Zaś kolejnym minusem jest brak programu git, który przydał by się do klonowania czy zarządzania repozytoriów bezpośrednio z urządzenia.
Właśnie brak jakiejś wspieranej biblioteki i Git‑a rozczarowywał mnie najbardziej. Choć od strony Arduino wszystko wygląda dobrze, to niestety, ale programowanie z poziomu Linuksa pozostawia wiele do życzenia. Wydaję mi się, że jest to taka proteza, która nie ma wiele funkcji. Mam nadzieję że czas to zmieni (czyt. społeczność) lub Intel.
Społeczność
Dzięki temu, że producentem jest tak duża firma jak Intel społeczność dostała wsparcie w postaci dokumentacji i forum, na którym znajdziemy przykłady oraz będziemy mogli wymienić się doświadczeniami i znaleźć pomoc, choć i tu poza dobrą dokumentacją i kilkoma wprowadzającymi Tutorialami (dla Arduino IDE) znajdziemy raczej wpisy użytkowników.
Z tego co piszą na fejsbukowej stronie Intela już kilka polskich uczelni wyższych otrzymało urządzenia intel Galileo, które mają zostać wykorzystane do prowadzenia zajęcia na owych uczelniach. Dzięki temu zainteresowanie samą płytką wzrośnie oraz zapewne powstanie wiele ciekawych bibliotek i rozwiązań, które prawdopodobnie zostaną udostępnione społeczności. Na pewno niektóre prace inżynierskie czy magisterskie będą pisane i tworzone z wykorzystaniem tej platformy.
Nie ma co porównywać ilości społeczności do chociaż by Raspberry Pi, ale dodając do tego społeczność Arduino to Raspberry Pi wypada blado. Zdania wśród społeczności Arduino są podzielone odnośnie intel Galileo, jednym takie urządzenie się podoba, lecz jest też część społeczności, która uważa, że jest to już przerost formy nad treścią.
Jak Galileo wygląda na tle innych?
Jak intel Galileo wygląda na tle Raspberry Pi czy Arduino? Ciężko jednoznacznie porównać to do samego Arduino skoro Galileo jest jedną z jej wersji i ma takie same możliwości a nawet i więcej. Moim zdaniem to kolejny krok milowy Arduino w rozbudowę platformy, czas pokaże czy takie rozwiązanie się sprawdzi. Dużym plusem Galileo jest złącze mPCI-E, karta ethernetowa, złącze kart microSD, jTag oraz USB Host.
Porównując Galileo do Raspberry Pi to tutaj uważam, że RPi jest ciekawszą platformą za sprawą wydajnego GPU głównie dla zwykłych użytkowników nie bawiących się samą elektroniką. W Galileo brakuje chociaż by wydajnego GPU i złącza HDMI. Co do użytkowników bawiących się elektroniką jest dobrą alternatywą, ale wydaje mi się, że platformą zainteresują się bardziej średnio zaawansowani użytkownicy. Raspberry Pi posiada sporą ilość bibliotek do zarządzania pinami GPIO w przeciwieństwie do Galileo.
Czy warto kupić?
No i musiało dojść do tego pytania. Na to pytanie powinien sobie odpowiedzieć każdy sam. Zależy to od naszego doświadczenia, potrzeb i możliwości i od tego, czego oczekujemy od urządzenia. Koszt ~320zł jest moim zdaniem dość wysoki i można sobie wykalkulować, że taniej można kupić chociaż by Raspberry Pi i osobno jeden z modeli Arduino.
Ja jednak bardziej wolę Raspberry Pi ze względu na duże możliwości no i sam system Debian, którego używam i który znam, a w którym mogę zainstalować łatwo potrzebne mi programy. Gdyby intel przygotował system Debian na swoja platformę (co raczej nie stanowiło by dla nich problemu), oraz jakieś biblioteki do sterowania GPIO dla popularnych języków lub chociaż jedną to myślę, że byłby to ciekawy kąsek dla mnie, o ile cena samego urządzenia była by poniżej 300zł. Mogli by odpuścić sobie maskotkę (choć jest fajna i pomaga przykręcać śrubki ;)) oraz grające pudełko i sprzedawać jako OEM.
Samo urządzenie jest jak najbardziej dobrą platformą do nauki i zapewne dzięki darmowemu rozdawaniu urządzeń na polskich uczelniach będzie bardziej spotykaną platformą na uczelniach aniżeli Raspberry Pi. Wraz ze wzrostem społeczności będzie powstawać coraz więcej ciekawych projektów i bibliotek. Tak jak w projekcie Raspberry Pi to właśnie społeczność odegrała największą rolę tworząc naprawdę ciekawy soft i rozwiązania, myślę, że w społeczności intela nie zabraknie takich ludzi. Warto też przypomnieć, że fundacja RPi od razu udostępniła bibliotekę Pythona dla RPi w przeciwieństwie do Intela, dlatego uważam że miał miejsce mały falstart ze strony Intela.
Tak czy owak myślę, że większą rewelacją będzie Intel Edison, którego już nie mogę się doczekać. A z czasem mam nadzieję powstanie więcej bibliotek oraz projektów dedykowanych Galileo.