Dzięki udostępnieniu do przetestowania płytki Banana Pi przez sklep elty.pl miałem możliwość przetestowania - jak mi się wydaje - ogniwa pośredniego pomiędzy Raspberry Pi, Cubietruck i Marsboard.
"Banan" jest owocem pracy grupy Lemaker, a jego dokumentacja i oprogramowanie są dostępne na zasadach licencji otwartej. Wygląd zestawu przedstawia rysunek 1. Już na pierwszy rzut oka widać, że podstawowym założeniem było zapewnienie zgodności sprzętowej z Raspberry P. Sugerują to podobne wymiary płytki, zbliżone ułożenie złącz... i na tym podobieństwa się kończą, ponieważ ten komputerek jest znacznie bardziej rozbudowany, o czym łatwo przekonać się przeglądając listę parametrów:
- Dwurdzeniowy procesor AllWinner A20 z wbudowaną grafiką ARM Mali 400MP2.
- Pamięć RAM mieszcząca 1024 MB.
- Dwa porty USB 2.0 i jeden USB OTG.
- Kontroler Ethernet 1 Gb RTL8211.
- Interfejs SATA z wyprowadzonym zasilaniem 5 V dla dysków 2,5".
- Złącze GPIO IDC26, zgodne z Raspberry PI.
- Złącze HDMI i AV.
- Wyjście audio Jack 3,5 mm oraz wbudowany mikrofon.
- Złącze kamery CSI oraz interfejsu LVDS dla wyświetlacza LCD.
- Trzy przyciski funkcyjne: PWR, RES, UBOOT.
- Odbiornik podczerwieni.
- Energooszczędne zasilacze impulsowe dla bloków funkcjonalnych Banana PI.
Warto dokładnie przyjrzeć się zgodności z Raspberry Pi. Od strony mechanicznej płytka jest nieznacznie większa od pierwowzoru. Ma cztery otwory mocujące umieszczone w nieco bardziej przemyślanych, jeśli porównać ich położenie z tymi w płytce Rasberry Pi. Niewielkim korektom poddano położenie złącz oraz dodano nowe złącza, min. dla SATA, USBOTG. Nie można więc bezpośrednio wykorzystać dostępnych dla Pi obudów, jednak nie stanowi to najmniejszego problemu, ponieważ producent przygotował obudowy dla Banana Pi i dostarcza je wraz z płytką!
Zmieniono standard mechaniczny złącz kamery i wyświetlacza. O ile ten drugi nie ma większego znaczenia, bo od dwóch lat nie można doczekać się sensownego wyświetlacza LCD przeznaczonego dla Raspberry Pi (np. takiego, jak opisanego w EP 10/2014 dla Marsboard), o tyle zmiana złącza kamery wynikająca z zastosowania procesora A20 ma swoje konsekwencje.
Niestety, nie będą pasowały kamerki przeznaczone dla Pi, a szkoda, bo jest sporo osób wykorzystujących je w swoich projektach. Co prawda, opracowano prototypową kamerę dla Banana Pi, ale jej wersja testowa z procesorem Omnivision 5640 (5 Mpix) wyprzedała się w kilka dni i nie pozostaje nic innego, jak czekać na następną partię produkcyjną.
Rozmieszczenie wyprowadzeń złącza rozszerzeń GPIO26 jest identyczne, jak w Raspberry Pi "A" i "B". Mogą jednak pojawić się pewne problemy ze zgodnością płytek rozszerzeń. Jeżeli płytki rozszerzeń mają wysokie złącze GPIO, to nie będzie problemów z mocowaniem, jeżeli nie, to mogą kolidować ze złączem Video i kołkiem montażowym. Każdorazowo należy więc sprawdzić czy nie napotkamy problemów mechanicznych przy próbie wykorzystania modułów dla Raspberry.
Takie są konsekwencje niezbyt przemyślanej konstrukcji "maliny", ale trudno mieć o to pretensje do twórców Banana Pi. W skrajnym wypadku pozostaje najbardziej elastyczna metoda połączeniowa, czyli taśma IDC26 z modułem pośrednim. Na szczęście większość kart rozszerzeń opracowanych przez EP dla Raspberry PI będzie pasowała bez problemów, jedynie moduły wyświetlacza LCD i do transmisji GSM wymagają wymiany złącza GPIO na wysokie.
Znacznie większe zmiany dotyczą złącza P5 dostępnego w Raspberry Pi, ponieważ usunięto je z Banana Pi. Amatorzy dobrego dźwięku, niestety, muszą korzystać z kart audio USB lub dźwięku HDMI. A szkoda, bo wbudowane SATA i odbiornik podczerwieni znacząco ułatwiają stworzenie niewielkiego odtwarzacza muzycznego.
W miejscu, w którym "malina" ma złącze P5 są dostępne dwa złącza: J11, J12. Na każde z nich wyprowadzono sygnały portu szeregowego (UART7 i UART0), pomocne przy obsłudze BananaPi z konsoli lub przy realizacji układów transmisji szeregowej. Złącze J12 ma doprowadzone 3,3 V/5 V, które można wykorzystać do zasilania przejściówek UART. Przyporządkowanie sygnałów do złącz rozszerzeń przedstawia rysunek 2. Nie zmienił się także standard napięciowy 3,3 V dla GPIO, więc dołączenie sygnałów 5 V wymaga konwersji napięć.
Można zatem przyjąć, że w większości typowych zastosowań Banana Pi jest zgodne z Raspberry Pi, aczkolwiek trzeba zwrócić uwagę na kila "detali".
Po omówieniu zgodności warto przyjrzeć się pozostałym rozwiązaniom zastosowanym w Banana Pi. Według mnie najistotniejszą zmianą jest interfejs SATA umożliwiający dołączenie "nieco" bardziej pojemnego nośnika niż karta SD. Wbudowany zasilacz 5 V umożliwia bezpośrednie zasilanie dysków 2,5" stosowanych np. w laptopach. Jeśli chcielibyśmy zastosować dysk 3,5", to jest konieczny zewnętrzny zasilacz dostarczający napięć 5 V i 12 V, mający odpowiednią moc do zasilania dysku.
W porównaniu z Raspberry Pi uwalnia to z konieczności stosowania konwerterów SATA/USB i przez to blokowania jednego z dwóch portów USB. Omija się też wąskie gardło, którym jest interfejs USB/LAN oparty o układ LAN9512, oprócz USB obsługujący także kartę sieciową (nie wspominając o towarzyszącej dyskowi plątaninie kabli). Interfejs SATA jest ważny także ze względu na pominięcie w Banana Pi (w porównaniu np. do Cubietruck) wewnętrznej pamięci Flash służącej do zainstalowania systemu.
System operacyjny Banana Pi jest przechowywany tylko na karcie SD (pełnego formatu). Jest to rozwiązanie wygodne, ponieważ ułatwia tworzenie i szybką zmianę użytkowanego systemu - nie jest wymagany dedykowany bootloader dla pamięci wbudowanej, ale w wypadku konieczności odczytu kart SD jest wymagany zewnętrzny czytnik blokujący jeden z portów USB.
Korzystnym modyfikacjom poddano także obsługę sieci. W miejsce mostu USB/LAN z Raspberry Pi, podobnie jak w pozostałych płytkach wykorzystujących procesor A20, zastosowano układ interfejsowy (RTL8211) obsługujący Ethernet 10/100/1000 Mb.
Dodatkowe peryferia wymuszają rozbudowę układu zasilania, co widać na fotografiach płytki. Do zasilania "banana" należy użyć zasilacza napięcia +5 V o minimalnej obciążalności rzędu 2 A. Zasilanie z typowej ładowarki do telefonu nie jest wskazane. Banana Pi wyposażono w układ zarządzający zasilaniem AXP209. Niestety, nie są wykorzystane wszystkie jego możliwości np. podtrzymanie RTC po wyłączeniu zasilania, pomimo przewidzianego na płytce miejsca dla baterii litowej.
Pozostałe zmiany w wyposażeniu np. przycisk reset, wbudowany mikrofon, dioda LED dostępna dla użytkownika, nie są już tak spektakularne i raczej nie będą ważyły na decyzji zakupowej.
Podobnie jak w innych płytkach, sam sprzęt bez wsparcia oprogramowaniem nie ma wielkiej wartości. Podstawowe wsparcie jest dostępne na stronie twórcy http://www.lemaker.org/, Wikipedii http://wiki.lemaker.org/Main_Page oraz na forum http://forum.lemaker. org/. Dla Banana Pi przygotowano kilka obrazów systemów (rysunek 3) gotowych do pobrania z http://www.lemaker.org/resources/9-38/image_files.html.
Po instalacji zgodnie z wymaganiami dystrybucji możliwa jest ocena możliwości Banana Pi. Ze względu na wcześniejsze doświadczenie z płytkami opartymi o A20 nie było dla mnie zaskoczeniem działanie systemu (dystrybucja Raspbian) w czasie rzeczywistym. Dla osoby pracującej na Raspberry może być to całkiem miłe zaskoczenie.
Banana Pi działa jak średniej klasy tablet (rysunek 4), nie jest to co prawda szybkość PC z i7, ale praca nie polega głównie na obserwacji wskaźnika obciążenia systemu. Mimo zastosowania graficznego środowiska pracy, które na pewno mocniej obciąża procesor niż tekstowy interfejs użytkownika, komputerek pracuje całkiem sprawnie. Szybkość pracy jest dobra i nie powoduje irytacji oraz konieczności wyszukiwania sobie dodatkowych zajęć urozmaicających czas oczekiwania na zakończenie zadania.
Podsumowanie
Moim zdaniem Banana Pi jest realną konkurencją dla Raspberry PI, nawet pomimo wyższej ceny (ok. 290 złotych), ponieważ wraz z dobrze wyposażoną płytką o sporych możliwościach otrzymujemy również obudowę. Idealnie pozycjonuje to "banana" pomiędzy słabo wyposażoną "maliną", a najlepiej wyposażonym, ale też znacznie droższym - Cubietruck. Jeżeli miałbym wybierać pomiędzy "maliną", a "bananem", to miałbym twardy orzech do zgryzienia, ale raczej wybrałbym ten drugi owoc - jest bardziej sycący, a w połączeniu z bułką jest pokarmem mistrzów...
Adam Tatuś, EP