Jak polubić Raspberry Pi? Poznajcie nowy ODROID-W
Jeśli twierdzisz, że Raspberry Pi nie ma sobie równych wśród klonów, to po prostu sie mylisz! Koreański Hardkernel zaprezentował swój nowy komputerek nazwany ODROID-W, który może być mocnym uderzeniem w społeczność "maliny". W porównaniu do pierwowzoru, posiada ponad dwukrotnie mniejszą powierzchnię wynoszącą 60x36mm, ważąc przy tym zaledwie 8 gramów.
Tak samo jak w przypadku RaspberryPi, został wyposażony w układ Broadcom BCM2835 taktowany zegarem 700MHz oraz 512MB pamięci RAM. Oferowana liczba złącz też jest przyzwoita. Dostajemy gniazdo micro HDMI, pojedynczy port USB 2.0 oraz w pełni zgodne 26 pinowe złącze rozszerzeń I/O. Bardzo ciekawym rozwiązaniem jest dostępność tego złącza z obu stron płytki. Na dokładkę, otrzymujemy również dodatkowe 20+6 pinowe złącze zawierające ekstra porty GPIO, 12-bitowy przetwornik ADC, wyprowadzenie zasilania oraz drugi port USB pracujący w trybie hosta (tu również możemy sami zdecydować, z której strony płytki będzie on dostępny).
To jeszcze nie koniec ciekawostek. ODROID-W zawiera wbudowany zegar czasu rzeczywistego RTC, a całą płytkę można zasilić z akumulatora Li-Pol. Jeśli pytacie jak to możliwe przy konieczności zasilania portu USB i HDMI, to odpowiedzią jest tu wydajny przetwornik DC/DC, podwyższający napięcie 3.7V do wymaganych 5V.
Nie jest niestety nigdzie powiedziane, czy widoczny od spodu slot modułów eMMC pozwala na stosownie tej pamięci, ale gdyby jednak okazało się, że nie - wciąż pozostaje nieśmiertelne microSD.
Natomiast jeśli okaże się, że potrzebujecie gniazdo UART lub Ethernet, podłączyć wyświetlacz LCD lub większej ilości portów USB, możecie zaopatrzyć się w specjalną płytkę dokującą:
Sugerowana cena to 30$ za płytkę bazową oraz 20$ za płytkę dokującą. Jeśli będziemy mieli ochotę na "docka" z wyświetlaczem TFT LCD 320x240, to musimy jeszcze wyciągnąć ze skarbonki kolejne 10$.
Więcej informacji znajdziecie na stronie Hardkernel.com
Reklama
Nowy MarsBoard A20 z układem Allwinner A20
HAOYU Electronics wypuściła na rynek kolejną płytkę, opartą o dwurdzeniowy procesor Allwinner A20 ARM Cortex-A7 Dual-Core taktowany zegarem 1GHz - mowa tutaj o New MarsBoard A20, któremu przyjrzymy się bliżej dzięki uprzejmości sklepu ArduinoSolutions. Tak jak w innych konstrukcjach tego typu, za grafikę odpowiada układ graficzny Mali400MP2 obsługujący standard OpenGL ES 2.0.
New MarsBoard A20 został wyposażony w 1GB pamięci DRAM taktowanej zegarem 480MHz oraz 8GB pamięci Flash. Cechą szczególną jest wbudowana karta WiFi RTL8188EU oraz port SATA. Do płytki możemy również przylutować odbiornik podczerwieni IR (nie ma go w zestawie). Jeśli chodzi o dostępne złącza, to do dyspozycji dostajemy: 4x USB 2.0, 1x USB 2.0 OTG, 1x DEBUG, 10/100 Mbps port Ethernet z układem LAN8710A, slot kart pamięci microSD, wyjście audio oraz wejście mikrofonowe.
Płytkę możemy podłączyć za pomocą pełnowymiarowego złącza HDMI lub standardowego złącza VGA. Jeśli istnieje taka potrzeba, możemy skorzystać również z 7" dotykowego panelu TFT LCD HU070CTP-HD obsługującego rozdzielczość 1024x600. Jakość obrazu oraz działanie 10 punktowego dotyku jest tutaj o niebo lepsze, niż w przypadku opisywanego już modelu HY070CTP-A z rozdzielczością 800x480.
Ciekawym dodatkiem są gniazda TV In oraz TV Out, pozwalające na podłączenie zewnętrznego źródła obrazu CVBS oraz dedykowana aplikacja pod system Android umożliwiająca jego wyświetlenie. Niestety nie udało mi się zmusić tego elementu do działania, ponieważ program miał wyraźny problem z odbiorem sygnału, wyświetlając jedynie niebieski obraz.
New MarsBoard A20 udostępnia również dwa porty rozszerzeń, gdzie jeden z nich jest przeznaczony do obsługi kamer CIF, natomiast drugi stanowi port rozszerzeń I/O.
Ogromnym rozczarowaniem jest jednak port SATA - pomimo tego, że jest, podłączenie dysku twardego wymaga zewnętrznego źródła zasilania. Na osłodę dostajemy jednak owtorzy montażowe, których w RK3066 nie doświadczyliśmy :)
New MarsBoard A20 / MarsBoard RK3066
Najsłabsze ogniwo - system operacyjny
Jeśli chodzi o dostępne oprogramowanie, to stanowi one obecnie najsłabszą stronę nowego Marsa. Należy jednak zwrócić szczególną uwagę na to, że jest to platforma nowa, która premierę miała w czerwcu i wiele może się jeszcze zmienić. Zresztą podobna sytuacja była w przypadku MarsBoard RK3066 kiedy opisywałem ją po raz pierwszy. Dziś jest dostępna już pełna dystrybucja Ubuntu Trusty 14.04 LTS ze środwiskiem LXDE, ze sprzętową akceleracją graficzną układu Mali oraz obsługą ekranów LCD HY070CTP-A/HD z dotykiem. Ale wróćmy do tematu.
Na chwilę obecną dostępne są trzy dystrybucje Linuksa: Debian Wheezy 7.1 (LXDE), Ubuntu 12.10 (Lubuntu) oraz Raspbian Debian Wheezy (LXDE). Wielką zaletą w nowym MarsBoard jest Dual-Boot, dzięki któremu mamy możliwość wypalenia ich na karcie SD pozostawiając system w pamięci NAND nietkniętym. Ubuntu jako jedyne obsługuje panel dotykowy (Debian również działa z ekranem LCD, ale bez dotyku), ale repozytorium jest w całkowitej rozsypce, co dyskwalifikuje go do sensownego użytku. Debian wygląda już dużo lepiej, bowiem można doinstalować wymagane oprogramowanie. Natomiast żadna dystrybucja nie obsługuje wspomnianego wejścia/wyjścia video oraz nie wspiera akceleracji OpenGL ES.
Debian Wheezy 7.1 / Rasbian Debian Wheezy
O Androidzie 4.2.2, można powiedzieć tylko, że jest. Nie udało mi się zainstalować na nim Google Play i oferowanego przez niego oprogramowania.
Testy porównawcze
NewMars Board A20 to sprzęt zbliżony możliwościami do CubieTruck i trudno oczekiwać czegoś innego. Obie platformy oparte są o ten sam procesor. Za Marsem przemawia jednak prawie dwukrotna niższa cena i genialny dotykowy wyświetlacz, co pozwala na wykorzystanie go w mniejszych, niskobudżetowych projektach. Jeśli tylko producent dopracuje oprogramowanie, będzie to bardzo interesująca platforma w przyzwoitej cenie.
Porównanie parametrów
Sprzęt do testu dostarczył sklep ArduinoSolutions.
Pomimo tego, że Jetson TK1 posiada 16GB szybkiej pamięci eMMC 4.51, to z biegiem czasu zaczniemy rozglądać się za możliwością zwiększenia wolnej przestrzeni. Pomogą nam w tym porty USB 2.0, USB 3.0, złącze kart SD oraz interfejs SATA.
W szranki stanęły:
- wbudowana pamięć eMMC 4.51,
- dysk twardy 2.5" Seagate Momentus XT ST500LM000 (SATA, USB 2.0, USB 3.0),
- pendrive ADATA S102 (USB 2.0, USB 3.0),
- karta Kingston microSD HC Class 10, UHS-I (SD)
Nie będzie żadną rewelacją, że najszybszy okazał się dysk twardy podłączony do portu SATA, oferując prędkość odczytu na poziomie 107 MB/s oraz zapisu na poziomie 87 MB/s. Jeśli uwzględnimy synchronizację dysku po zapisie, otrzymamy wartość 75 MB/s.
Dla objaśnienia podaję regułę, w jaki sposób została ona określona:
- time sh -c "dd if=/dev/zero of=/media/ubuntu/c2a13d2f-65b5-4df6-b480-4639a6e7c038/test bs=4k count=200000 && sync"
- 200000+0 records in
- 200000+0 records out
- 819200000 bytes (819 MB) copied, 9.3416 s, 87.7 MB/s
- real 0m10.383s
- user 0m0.122s
- sys 0m4.733s
Czas zapisu bez synchronizacji wyniósł 9,34 sekundy. Z synchronizacją dysku po zapisie, czas ten zwiększył się do 10,38 sekundy, a więc rzeczywista prędkość to (819200000/1024/1024) / 10.383 = 75,2 MB/s.
Na drugim miejscu znalazł się ten sam dysk podłączony do portu USB 3.0, ale jest tutaj drobna pułapka. Domyślnie dostarczony system Linux 4 Tegra 19.2 i 19.3 mają ustawiony ten interfejs do pracy jako USB 2.0. Wynik polecenia lsusb:
- Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Aby uzyskać pełnowartościowe USB 3.0, musimy ponownie wgrać firmware, zmieniając w pliku jetson-tk1.conf ustawioną zmienną ODMDATA=0x6009C000 na ODMDATA=0x6209C000. Wiąże się to z wyczyszczeniem systemu, ale po takim zabiegu, port USB 3.0 będzie już widoczny:
- Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
- Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Ile jest wart gigabiotwy port Ethernet?
Skoro mamy możliwość podłączenia szybkiego dysku twardego pod SATA, to czy gigabitowy port Ethernet RTL8111GS pozwoli nam osiągnąć odpowiednio duże transfery? Sprawdziłem to na podstawie zamontowanych, trzech katalogów NFS z różnymi parametrami:
Z parametrami rsize=8192 kB i wsize=8192 kB udało się "wycisnąć" 85MB/s (680 Mbps)
Jetson TK1 jako HTPC?
Ostatnim razem (również na filmie) pokazywałem, że platforma dobrze sobie radzi z wszelkim materiałem w rozdzielczości 1080p - zarówno w odtwarzaczu Totem jak i XBMC. Podczas testów z różnymi materiałami wideo, nie doświadczyłem żadnych kłopotów. Dopiero jeden z czytelników zapytał mnie, jak radzi sobie Jetson TK1 z materiałami o dużym bitrate. Dodatkowo podniosłem poprzeczkę, testując to z podmontowanej lokalizacji sieciowej NFS.
Okazuje się, że zarówno Totem jak i XBMC dekoduje materiał, nie wykorzystując akceleracji sprzętowej, a jedynie mocy obliczeniowej procesora. Na dodatek dostępny w repozytorium XBMC 12.3 wykorzystuje do tego celu tylko jeden rdzeń, co pozwala mu na płynne odtworzeniu materiału z maksymalnym stałym bitrate do 20 Mbps. Dużo lepiej radzi sobie Totem, ponieważ wykorzystuje już wszystkie 4 rdzenie, radząc sobie już z materiałem do 120 Mbps przy obciążeniu rdzeni na poziome 60-80%.
Sytuacja nieco się poprawia, kiedy film odtworzymy drugi raz, a materiał wideo znajduje się pamięci buforowanej:
Sytuacja ta powinna się jednak bardzo szybko zmienić, ponieważ NVIDIA udostępniła źródła programów nvgstplayer i nvgscapture, które wykorzystują OpenMAX (Open Media Acceleration) dla gstreamera 0.10 i 1.0 z akceleracją sprzętową TK1. Dla próbki 120Mbps wygląda to następująco:
Za drugim razem, kiedy materiał znajdował się w pamięci buforowanej:
Jest więc kwestią czasu, aż ktoś przygotuje odpowiednią łatkę do XBMC.
Odświeżony RaspberryPI Model B+ za 35$
Po dwóch latach od premiery modelu Raspberry Pi Model B, postanowiono przgotować jej odświeżony wariant oznaczony jako model B+. Producent wyjaśnia, że w żadnym wypadku nie jest to wyczekiwany Raspberry Pi 2, lecz końcowa wersja tejże linii, zawierająca naniesione sugestie społeczności.
Wśród zmian znajdziemy :
- zwiększoną liczbę GPIO do 40 pinów przy zachowaniu zgodności z wyprowadzeniami 26 pinów z wersją modelu B,
- dodano dwa kolejne porty USB 2.0 (w sumie 4 porty),
- wymienione gniazdo SD na microSD,
- zmniejszony pobór mocy, dzięki wymienionym regulatorom napięcia, co pozwala na osiągnięcie wyniku pomiędzy 0.5W do 1W,
- ulepszono segment audio poprzez zastosowania oddzielnego, dedykowanego zasilania,
- przeniesiono porty USB na krawędź płytki,
- kompozytowe wyjście wideo przerzucono na 3.5 mm wtyk typu Jack,
- dodano otwory montażowe,
Jeśli chodzi o procesor to nadal jest to układ BCM2835. Nie zwiększyła się również dostępna pamięć o rozmiarze 512MB. Cena pozostała bez zmian, czyli 35$. Wymiar PCB Raspberry Pi B+ to 85 x 56 mm
Specyfikacja mechaniczna oraz diagram GPIO
Więcej informacji: http://www.raspberrypi.org/blog/#introducing-raspberry-pi-model-b-plus
W końcu dotarła do mnie długo wyczekiwana platforma deweloperska, którą bez wątpienia można nazwać superkomputerem w segmencie Embedded - a mianowicie NVIDIA Jetson TK1. Od strony sprzętowej mamy tutaj bardzo mocny układ SoC Tegra TK1 wykorzystujący cztery rdzenie Cortex-A15 taktowany zegarem 2.32GHz w architekturze NVIDIA 4-Plus-1. Jednak prawdziwą bombą jest rdzeń graficzny oparty o architekturę NVIDIA Kepler (GK20a), uzbrojony w 192 rdzenie CUDA. Pozwala to osiągnąć wydajność na poziomie 300 GFLOPS, dla porównania układ Mali-T628 MP6 zastosowany w procesorach Exynos5422 osiąga połowę mniej, bo 146 GFLOPS. Układ SoC chłodzi radiator oraz przymocowany 1.3W wentylator, zasilany napięciem 12V.
Na płycie znajdziemy również 2GB pamięci DDR3L taktowanej zegarem 933MHz oraz 16GB pamięci eMMC 4.51. Jetson TK1 został również wyposażony w gigabitowy port Ethernet wykorzystujący układ Realtek RTL8111GS, jeden port USB 3.0 oraz jeden port micro-USB 2.0, który możemy wykorzystać jako standardowy port USB dzięki dołączonemu adapterowi.
Ogromnie cieszy port SATA oraz gniazdo mini-PCIe, do którego możemy wpiąć karty rozszerzeń, takie jak: karty Wi-Fi, dyski SSD, modemy 3G, kontrolery SATA RAID, kontrolery USB itd. Za dźwięk odpowiada układ ALC5639.
Jeśli chodzi o dodatkowe złącza, to wymienić można port szeregowy RS232, wyjście audio, wejście mikrofonowe, gniazdo HDMI 1.4, czytnik kart SD, port JTAG oraz 125 pinowy port rozszerzeń udostępniający następujące porty:
- dwa szybkie porty kamer CSI-2 MIPI (4-torowy i 1-torowy),
- port LCD obsługujący panele LVDS i eDP,
- porty dotykowe SPI (4-torowy oraz 1-torowy CSI-2),
- UART,
- HSIC,
- trzy porty I2C,
- osiem pinów GPIO (logika 1.8V)
Dodatki
Ponieważ Jetson TK1 posiada gniazdo mini-PCIe, warto również zaopatrzyć się kartę sieciową Wi-Fi. Do testów skombinowałem Intel Centrino Wireless-N 2230 oraz Athreos AR5B95, wraz z różnymi antenami. Niestety karty sieciowe nie działają out-of-box, ponieważ niezbędna będzie ponowna kompilacją jądra.
Okazuje się, że konieczne jest również dokupienie kabla zasilającego do zasilacza, ponieważ w komplecie dostarczony jest z wtyczką amerykańską. Natomiast aby wykorzystać port micro-USB 2.0 jak dodatkowy port, zaopatrzmy się również w adapter micro-USB na USB (żenskie). Problemem może okazać się tylko jeden port USB 3.0 w standardowym rozmiarze, jeśli nie posiadamy klawiatury i myszki z odbiornikiem Unifying, niezbędne będzie podłączenie aktywnego huba USB.
Linux For Tegra R19.2, czyli Ubuntu 14.04
Jetsona TK1 wyróżnia w pełni wspierane sprzętowo standardy CUDA 6.0, OpenGL 4.4, OpenGL ES 3.1, NPP, EGL 1.4, OpenCV4Tegra oraz VisionWorks. Wszystko to pod Linuksem z jądrem 3.10.24 i pełną obsługą X11 oraz RandR 1.4. Domyślnie zainstalowana jest dystrybucja Ubuntu 14.04 ze środowiskiem Unity. Podczas pracy rdzenie procesora są usypiane w razie potrzeby, ograniczając tym samym pobór prądu.
Oczywiście możemy włączyć na stałe wszystkie cztery rdzenie oraz ustawić profil na performance:
Dekodowanie filmów 1080p odbywa się bez zajęknięcia. Jeśli kogoś interesuje XBMC, to również nie ma z nim najmniejszych problemów. Co ciekawe - XBMC wykorzystuje Open GL ES.