Trudno jednoznacznie zdefiniować komputer jednopłytkowy. Zwykle używamy tego terminu w odniesieniu do komputerów w rodzaju Rasberry Pi, które mogą funkcjonować samodzielnie lub autonomicznie i mają zamontowane na płytce interfejsy umożliwiające łatwą wymianę danych z otoczeniem. Jednak, jeśli przyjrzeć się takim płytkom, jak zestawy uruchomieniowe, to nietrudno zauważyć, że one też mieszczą się w definicji. Na przykład, zestawy Discovery oferowane przez STMicroelectronics mają zamontowany mikrokontroler oraz podstawowe komponenty wymagane przez jego aplikację. Płytka zestawu ma złącza, którymi można sterować wyświetlaczami lub włączać/wyłączać współpracujące urządzenia peryferyjne. W pamięci mikrokontrolera można zapisać program, który obsłuży naszą aplikację. Czy w związku z tym taka płytka aby nie mieści się w definicji komputera jednopłytkowego?
Gdybyśmy chcieli w artykule opisać również przytoczone rozwiązania, to zapewne nie starczyłoby nawet kilku wydań EP. Skupmy się więc na tych płytkach, które faktycznie mogłyby stanowić chociaż namiastkę komputera PC na naszym biurku. A więc da się do nich dołączyć typową klawiaturę, mysz, mogą pracować pod kontrolą systemu Linux lub podobnego.
Raspberry Pi
Wypada zacząć od Raspberry Pi, które – jak się wydaje – zapoczątkowało trend i przyciągnęło rzesze użytkowników. Wprowadzono je do sprzedaży w 2012 (Raspberry Pi 1 Model B). Wyposażono je w układ SoC Broadcom BCM2835, który podobno pochodził z jakichś „końcówek” magazynowych, przez co wiele osób wieszczyło szybkie wycofanie z oferty i zakończenie sprzedaży. SoC miał rdzeń ARM1176JZF-S, taktowany przebiegiem o częstotliwości 700 MHz i 256 MB pamięci RAM. Jednocześnie wprowadzono do sprzedaży Model A, który był o 10 dolarów tańszy i miał mniej interfejsów.
Konstruktorzy Raspberry Pi przewidzieli, że komputerkowi najbardziej przyda się interfejs Ethernet i dlatego model B został wprowadzony do sprzedaży w pierwszej kolejności. Szybko jednak okazało się, że Raspberry Pi ma za mało pamięci operacyjnej, na skutek czego dwukrotnie powiększono jej pojemność. Po niecałych dwóch latach wprowadzono nieco ulepszone Raspberry Pi 1: Model A+ i Model B+. Różnice sprowadzały się do zwiększenia liczby wyprowadzeń, obniżenia poboru energii i zamiany gniazda SD na microSD. Co więcej, obniżono też cenę.
W 2015 roku wprowadzono Raspberry Pi 2 Model B z 4-rdzeniowym procesorem Broadcom BCM2836 (ARM Cortex-A7), taktowanym przebiegiem o częstotliwości 900 MHz, z 1 GB RAM i GPU Broadcom VideoCore IV (mają go wszystkie wersje RPi). Pobór prądu wzrósł w porównaniu z Model B+, ale RPi zachował kompatybilność pod względem wymiarów i oprogramowania.
W niecały rok po Raspberry Pi 2 wprowadzono do sprzedaży Raspberry PI Zero, która ma ten sam procesor, co w RPi 1, ale taktowany przebiegiem o częstotliwości 1 GHz i 512 MB RAM. Płytka RPi Zero jest przy tym pozbawiona większości interfejsów: pozostało jedynie gniazdo HDMI (mini-HDMI), złącze microSD i dwa micro USB. Dostępna jest większa liczba GPIO. Płytka Raspberry Pi Zero jest płaska od spodu, dzięki czemu można ją zamontować bez elementów dystansowych. Pobór prądu jest 5-krotnie mniejszy niż w Raspberry Pi 2. Głównym ograniczeniem jest brak interfejsu sieciowego.
Niejako podtrzymując tradycję, w rok po wprowadzaniu do sprzedaży RPi 2 w sklepach pojawiło się Rasbperry Pi 3 Model B. Wyposażono je w wydajny SoC Broadcom BCM2837. Zawiera on 4-rdzeniowy, 64-bitowy procesor ARM Cortex-A53 taktowany przebiegiem o częstotliwości 1,2 GHz. Na płytce zamontowano 1 GB pamięci LPDDR2 (900 MHz), która jest współdzielona z GPU. Oprócz interfejsów znanych z poprzednich wersji, zamontowano też interfejsy Wi-Fi oraz Bluetooth, co w połączeniu z wydajnością podwyższoną w porównaniu do poprzednich wersji, jest naszym zdaniem bardzo ważną innowacją.
Liczba systemów operacyjnych przystosowanych do pracy Raspberry Pi przekracza 30, z czego większość z nich jest bezpłatna. Podstawowym jest Raspbian.
Platformy firmy Intel
W komputerach jednopłytkowych dostrzegła szansę również firma Intel. Wydaje się, że Intelowi znanemu głównie z „dużych” komputerów pozwoli to na propagowanie procesorów x86 w wersjach dla urządzeń embedded i być może na zmianę wizerunku. Oferowane platformy to:
- Intel Galileo, która z wyglądu przypomina Raspberry PI i ma zbliżoną wydajność. Zastosowano w niej 32-bitowy procesor Intel Quark.
- Intel Edison, o miniaturowych wymiarach, z procesorem Intel Quark. Ma 1 GB RAM i zintegrowane Wi-Fi oraz Bluetooth 4.0. Polecany do wbudowywania w urządzenia wearable, zasilane z baterii i komunikujące się bezprzewodowo.
- Intel NUC to miniaturowy komputer w obudowie. Oferowany w wersjach z procesorami Intel: Atom, Celeron, Pentium, Core i3, Core i5, Core i7. Platforma nieustępująca pod względem parametrów nowoczesnym komputerom PC.
- Intel Compute Stick ma wielkość pendrive. Jest zasilany z USB i dołączany za pomocą HDMI. Wyposażono go w procesor Intel Atom Z3735F z 1 GB lub 2 GB DDR3L, GPU Intel HD Graphics. Może pracować pod kontrolą Windows lub Ubuntu.
BeagleBoard i BeagleBone
Rodzina komputerów opracowanych przez organizację BeagleBoard. Na przestrzeni od 2008 r. wprowadzono kilka wersji BeagleBoard. Wszystkie miały procesory Texas Instruments. W protoplaście zamontowano OMAP3530 taktowany przebiegiem o częstotliwości 720 MHz. Oprócz rdzenia Cortex-A8 miał on jednostkę DSP. Słabą stroną płytki była nieduża pojemność RAM – tylko 128 MB. Dopiero w wersji C dwukrotnie zwiększono jej pojemność. Komputer nie miał też interfejsu sieciowego.
Wydaje się, że dopiero BeagleBoard-xM zaspokoił wymagania użytkowników. Wyposażono go w procesor DM3730 taktowanym przebiegiem o częstotliwości 1 GHz. Podwyższono też częstotliwość taktowania wbudowanego DSP oraz zwiększono pamięć RAM do 512 MB (DDR2). Dodano też obsługę Ethernetu i zwiększono liczbę złączy USB.
BeagleBone ma 256 MB pamięci RAM DDR2, pojedynczy interfejs USB i jest taktowany przebiegiem o częstotliwości 720 MHz. Ma przy tym interfejs Fast Ethernet. Pozbawiono go jednostki DSP. Następnie, komputer uległ modyfikacji i został nazwany BeagleBone Black. Podniesiono w nim częstotliwość taktowania do 1 GHz, zwiększono pojemność pamięci RAM i podniesiono jej prędkość (DDR3).
Komputer BeagleBoard-X15 wyposażono w procesor Sitara AM5728, z 2 rdzeniami Cortex-A15 i 2 rdzeniami Cortex-M4 oraz 2-rdzeniowy DSP. Cortexy-A15 taktowane są 1,5 GHz. Na płytce zamontowano 2 GB RAM DDR3L, 3×USB 3.0, 4×USB 2.0, 2×Ethernet 1 GB, eSATA, HDMI.
Komputery BeagleBoard i BeagleBone mogą pracować pod kontrolą systemów Linux, Android, Gentoo i innych.
Banana Pi
Firma Foxconn opracowała Banana Pi jako zmodyfikowany klon Raspberry Pi. Banana Pi może pracować pod kontrolą systemów: Linux (w tym Raspbiana), Android, NetBSD. Komputer Banana Pi jest nieco większy od Raspberry Pi i ma inaczej rozmieszczone wyprowadzenia. Zastosowano w nim CPU Allwinner A20 z dwoma rdzeniami Cortex-A7, 1 GB RAM oraz interfejs Ethernet 1 GB. Pod względem rozmieszczenia wyprowadzeń GPIO zachowano kompatybilność z Raspberry PI. Dodatkowo, zamontowano odbiornik podczerwieni.
Banana Pi może współpracować z wieloma akcesoriami dla Raspberry Pi bez konieczności wykonywania jakichś większych przeróbek. Powstała też wersja Banana PI – M1+, o innym rozmieszczeniu wyprowadzeń i z opcjonalnym Wi-Fi, ale o niemal identycznych parametrach. W wersji M2 zwiększono wydajność wyposażają ją w 4-rdzeniowy układ Allwinner A31s, w lepsze GPU oraz Wi-Fi (AP6181). Dostępny jest też 8-rdzeniowy model M3 z procesorem Allwinner A83T i 2 GB RAM DDR3, Bluetooth 4.0 i Wi-Fi (AP6212).
Cubieboard
Pierwotna wersja Cubieboard przypominała Raspberry Pi, ale wyposażono ją w procesor A10, taktowany przebiegiem o częstotliwości 1 GHz i 1 GB RAM DDR3. Oprócz tego, ma wbudowany kontroler Fast Ethernet, 1 port SATA i 96 pinów interfejsu rozszerzeń. Druga wersja miała procesor A20, co pozwoliło na zwiększenie mocy obliczeniowej oraz wydajności graficznej. Dodatkowo, płytka ma 2 gniazda microSD.
Przygotowując trzecią wersję Cubieboard twórcy zamiast podnosić wydajność, zastosowali ten sam procesor. Zamontowano 2 GB RAM oraz z gigabitowym kontroler Ethernet. Wbudowano też układ Wi-Fi/Bluetooth firmy Broadcom. Płytkę nazwano Cubietruck. W Cubieboard 4 zastosowano procesor Allwinner A80 z 4 rdzeniami Cortex-A15 i 4 Cortex-A17. Wprowadzono też GPU typu PowerVR G6230, co pozwala na obsługę rozdzielczości 4K oraz wprowadzono interfejs USB 3.0.
Cubieboard może pracować pod kontrolą systemów Fedora, Android, Ubuntu i OpenBSD.
Odroid
Markę Odroid stworzyła koreańska firma Hardkernel. Być może dzięki temu zasoby udostępniane przez producenta są dosyć dobrze zorganizowane i kompletne. Interesujące mogą być również same przykłady aplikacji podawane przez producenta, które pokazują, że Odroid jest w stanie sprawnie pracować w realnych, zaawansowanych aplikacjach, pod kontrolą systemu Android, Ubuntu, ArchLinux i innych.
Wszystkich wersji i przeznaczonych dla nich akcesoriów jest bardzo dużo. Większość z nich wyposażono w procesory Samsunga: S5PC100, Exynos 4412, 5410 oraz 5422. W praktyce producent zmonopolizował rynek dostępnych rozwiązań, co jest i dobre, i złe dla użytkowników. Z jednej stron, na pewno pomaga to w oferowaniu kompletnych, dobrze udokumentowanych rozwiązań, z drugiej w pewnym sensie zawęża ich rynek.
pcDuino
Twórcy pcDuino skorzystali z popularności Arduino. PcDuino to niewielkie komputery z procesorem Allwinner A10, pracujące pod kontrolą Lbuntu i Androida. Ich jednostki centralne są taktowane przebiegiem o częstotliwości 1 GHz. W pcDuino3 zastosowano procesor A20 z dwoma rdzeniami Cortex-A7. Pamięć RAM mieści 256 MB w wersji Lite WiFi, 512 MB w wersji Lite i po 1 GB w wersjach v1, v2 i v3. Wyświetlacz jest dołączany przez HDMI. Wszystkie modele – za wyjątkiem Lite WiFi – mają zintegrowany interfejs Fast Ethernet. Modele Lite WiFi oraz v2 i v3 mają też zintegrowane interfejsy Wi-Fi. Ponadto, model Lite WiFi nie obsługuje Androida.
Wprowadzono także modyfikacje modelu v3: 3B i 3 Nano, wyposażone w Ethernet 1 GB, przy czym Nano pozbawiono Wi-Fi. Komputer pcDuino4 STB jest oferowany w zestawie i wyposażono go w procesor Allwinner H3 z 4 rdzeniami Cortex-A7, 1 GB RAM DDR3, 2 interfejsy sieciowe (Wi-Fi i Fast Ethernet); pcDuino8 ma procesor Allwinner H8 z 8 rdzeniami Cortex-A7, taktowane 2 GHz. Opracowano też model pcDuino Acadia, w którym zastosowano Freescale i.MX6 z 4 rdzeniami Cortex-A9, taktowany 1,2 GHz.
UDOO
Udoo powstało jako pomyślnie przeprowadzona kampania na Kickstarterze. Jest ono z założenia kompatybilne z Arduino Duo i około 4 razy szybsze niż pierwsze wersje Raspberry Pi. Poszczególne modele różnią się wymiarami płytki drukowanej oraz wydajnością zastosowanego procesora. We wszystkich zastosowano układy Freescale – w Dual są to i.MXQuad, a w Neo i.MX 6SoloX. Modele Dual i Quad mają GPU Vivante, 76 GPIO, Wi-Fi (za wyjątkiem Basic) oraz Ethernet 1 GB i SATA w wersji Quad. Neo obsługują 54 GPIO, mają zintegrowane interfejsy Wi-Fi/Bluetooth (za wyjątkiem Basic) oraz interfejs sieciowy (za wyjątkiem Extended). Twórcy przygotowali także kilka specjalizowanych akcesoriów w postaci zestawów czujnikowych, narzędzi do debugowania, wyświetlaczy, kamery itp.
CuBox
Konstruktorzy z firmy SolidRun opracowali nettopy CuBox. Są to niewielkie komputery w sześciokątnej obudowie. W ich pierwotnej wersji zastosowano procesory Marvell Armada 510 z rdzeniami ARM v7. Następnie wprowadzono do oferty CuBox-i, Cubox-i4Pro i CuBox-i 4x4, a w końcu CuBoxTV. Zastosowano w nich procesory Freescale i.MX 6. W CuBox-i1 zastosowano 1-rdzeniowy procesor i 512 MB RAM, w CuBox-i2 z 2-dzeniowy procesor i 1 GB RAM, a w CuBOX-i2eX interfejs eSATA. Wszystkie są dostępne w wersjach z interfejsem Wi-Fi/Bluetooth. Model CuBox-i4Pro ma 4-rdzeniowy procesor i 2 GB RAM. Wersja CuBox-i4x4 ma dwukrotnie więcej pamięci RAM. CuBoxTV jest w praktyce gotowym odtwarzaczem wideo.
CuBox jest używany przede wszystkim jako odtwarzacz multimedialny.
HummingBoard
Komputery modułowe, oferowane w wersjach: Edge, Gate, Pro, Base, różniących się procesorami. Zastosowano w nich układy Freescale i.MX6, 1-, 2-, lub 4-rdzeniowe. Obsługują one do 4 GB RAM, a dodatkowo model Pro współpracuje z dyskiem mSATA. Mają jeden interfejs Ethernet i 26 lub 36 GPIO. Do zasilania wymagają napięcia – zależnie od wersji – z zakresu 7…36 V lub 5 V. Edge i Gate pracują tylko pod kontrolą systemu Linux i są oferowane w metalowej obudowie, a biorąc pod uwagę zakres napięcia zasilania wyraźnie widać, że są przeznaczone do innych zastosowań niż Pro i Base.
Ze względu na budowę modułową, można samodzielnie opracowywać płyty bazowe do modułów procesorowych. Model Gate jest kompatybilny z gniazdem mikrobus firmy MikroElektronika, więc te komputery te można łatwo rozbudowywać o moduły ClickBoard.
Orange Pi
W ramach rodziny Orange Pi opracowano szereg komputerków jednopłytkowych, których projekty są ogólnie dostępne w Internecie. Orange Pi może pracować pod kontrolą Android, Ubuntu, Debian, Fedora, ArchLinux, openSUSE, OpenWRT i Raspbian. Dostępne jest kilka wersji płytek. Podstawowy komputer Orange Pi ma 2-rdzeniowy procesor Allwinner A20 (2×Cortex-A7) i 1 GB RAM DDR3 oraz interfejsy Ethernet 1 Gb i Wi-Fi. Wyprowadzenia GPIO są kompatybilne z Raspberry Pi.
Orange PI 2 ma procesor Allwinner H3 z 4 rdzeniami Cortex-A7. Orange PI 2 mini ma parametry niemal identycznie z Orange PI 2, ale nie ma Wi-Fi. Orange PI plus przypomina Orange PI 2, ale ma interfejs Ethernet 1 Gb. Orange Pi Plus 2 ma RAM 2 GB. Orange PI PC wyróżnia się miniaturowymi wymiarami. Ma zamontowany 4-rdzeniowy procesor Allwinnerem H3, 1 GB RAM, Ethernetem, 3×USB 2.0 Host i 1×USB 2.0 OTG.
Radxa
Opracowano dwie generacje komputerów Radxa. W ramach pierwszej są oferowane: Rock, Rock PRO i Rock Lite. Wyposażono je w procesor Rockchip z 4 rdzeniami Cortex-A9 taktowanymi przebiegiem o częstotliwości 1,6 GHz. W wersji PRO jest oferowany 2 GB, a w LITE 1 GB RAM DDR3. Model PRO ma „na pokładzie” 8 GB NAND Flash. Oba wyposażono w interfejs Fast Ethernet i kontroler Wi-Fi. Wersja PRO ma też Bluetooth 4.0. Komputer Radxa Rock2 ma budowę modułową. Bazuje na module procesorowym (SOM) z 4-rdzeniowym układem RK3288 (Cortex-A17) i jest oferowany w wersjach: „A” z 2 GB RAM i 16 B eMMC, „B” z 4 GB RAM i 32 GB eMMC, „C” z 1 GB RAM i 4 GB eMMC. Moduł może być dołączony do jednej z dwóch płytek bazowych. Mniejsza to Square Basebord (Ethernet, 4×USB, Bluetooth 4.0 BLE i Wi-Fi 802.11ac), 40-pinowe GPIO, gniazdo microSD, gniazdo dysku twardego. Większa Full Basebord ma jedno gniazdo USB mniej, ale za to 2×Etherner 1 Gb i wbudowany modem HSPA/WCDMA, EDGE/GPRS/GSM. Ponadto, są dostępne 2×40-pinowe złącza rozszerzeń.
C.H.I.P.
C.H.I.P. jest nie tylko „c.h.i.p”, ale to i „cheap”. To niewielki, tani komputer jednopłytkowy. Wyposażono go w procesor Allwinner R8 z rdzeniem Cortex-A8, taktowany 1 GHz. Wyposażono go w 512 MB RAM DDR3, 4 GB Flash oraz Wi-Fi i Bluetooth. Podstawową wersję można podłączyć do telewizora za pomocą analogowego złącza RCA. Płytka rozszerzeń, umożliwiająca skorzystanie z HDMI i uzyskanie rozdzielczości Full HD, zwiększa koszt ponad dwukrotnie, bo do 24 dolarów. Dostępne są też dwa inne zestawy: jeden z akumulatorem Li-Po i jeden z przejściówką VGA. W ofercie jest też moduł z klawiaturą alfanumeryczną i kolorowym wyświetlaczem LCD TFT 4,3”.
C.H.I.P. jest oferowany z preinstalowanym Linuksem, którego kod źródłowy jest udostępniony publicznie. Sam projekt sprzętu też jest otwarty.
Compulab Utilite
Komputery Utilite izraelskiej firmy Compulab to urządzenia typu BOX PC, przy czym w ogólności nie są przeznaczone na rynek przemysłowy, ale konsumencki. Jak dotąd powstały dwie generacje Utilite. Pierwszą oparto o procesor Freescale i.MX 6 z rdzeniem Cortex-A9. Oferowano trzy wersje: Value – taktowany 1 GHz z RAM 512 MB i Ethernet 1 GB, Standard – z RAM 2 GB, 2×Ethenet 1 Gb, Wi-Fi, Bluetooth, Pro – taktowany 1,2 GHz, dysk SATA SSD 32 GB zamiast microSD. W drugiej generacji Utilite zastosowano procesor Qualcomm Snapdragon 600 (APQ8064) z 4 rdzeniami taktowanymi 1,7 GHz. Wyposażono ją w 2 GB RAM DDR3, Ethernet 1 Gb, Wi-Fi i Bluetooth. Dostępne są wersje różniące się wbudowanym nośnikiem danych.
AMD Gizmo
Komputerem, który miał wypromować procesory firmy AMD jest Gizmo. Producent znalazł chwytliwą nazwę, stworzył podwaliny społeczności Gizmoshpere i wprowadził drugą generację płytki, ale na tym jego starania się skończyły. Wszystko wskazuje na to, że komputer, który miał promować AMD, nie został na tyle wypromowany przez AMD by mógł zacząć skutecznie pełnić swoją rolę. Pierwsze Gizmo było całym zestawem zawierającym podstawową płytkę (z Ethernet, USB, DisplayPort, PCIexpress, SATA i innymi interfejsami), płytkę Explorer Board, narzędzia deweloperskie (Sage SmartProbe JTAG Dev Tool), nośnik Flash, zasilacz i kable. Komputer pracował pod kontrolą procesora AMD serii G.
Druga generacja Gizmo charakteryzuje się o 60% większą wydajnością. Zastosowano na niej 2-dzeniowy procesor AMD GX-210HA i 1 GB RAM. Ma interfejsy SATA, USB, PCIe, Ethernet 1 Gb. Płytki Gizmo korzystają z architektury x86, więc można na nich uruchamiać Windows, DirectX 11.1 i OpenGL 4.2x.
Podsumowanie
Na przestrzeni lat pojawiło się wiele rozwiązań komputerów jednopłytkowych, w tym rodzimych, polskich firm. Jak jednak przystało na dojrzały rynek, jest on bardzo trudny dla nowych firmy, próbujących przebić się z ofertą. Opracowano też pewne standardy, a niektóre rozwiązania komputerów jednopłytkowych sama z siebie stały się nieformalnymi standardami, gdy liczba oferowanych sztuk przekroczyła masę krytycnza.
Czym mogłyby się wyróżnić małe firmy, oferujące natywne rozwiązania? Na pewno nie przebiją azjatyckich producentów ceną, a przynajmniej nie teraz. Nie przebija też innych, na przykład oferowanym wsparciem technicznym, ponieważ w wytwarzanie komputerów jednopłytkowych są nierzadko zaangażowane wielkie firmy, dysponujące potężnym kapitałem. Co prawda, dla małych firm dużą szansą jest „bezwładność” wielkich korporacji, ale tylko do pewnego czasu. Znane są też przypadki, że niewielka firma odnosząca sukcesy zostaje po prostu „wchłonięta” przez dużą.
Wydaje mi się, że komputery jednopłytkowe oferowane przez niedużych producentów, w tym rodzimych, mają przede wszystkim szansę w funkcji jednostek centralnych urządzeń. Mam tu na myśli, że firma oferuje pewne własne urządzenie z własnym komputerem jednopłytkowym, który niejako dodatkowo wprowadza fo oferty licząc na upowszechnienie się rozwiązania oraz dalszą, w tej sytuacji – dodatkową do głównej oferty – sprzedaż. Patrząc z tego punktu widzenia, na rynku można znaleźć wiele rozwiązań, oferowanych również przez innych, niewymienionych w artykule producentów.
Z całą pewnością, jeszcze przez długi czas będziemy obserwowali rozwój i zmiany w ofercie komputerów jednopłytkowych. Powodem będą zmieniające się rozwiązania sprzętowe, popularyzowanie się układów SoC wyposażonych w większą liczbę bardzie wydajnych rdzeni, jednostki GPU i inne. Należy też spodziewać się, jak to na każdym dojrzewającym rynku, specjalizowania się poszczególnych producentów w konkretnych aplikacjach. Nawym trendem będą komputery przenośne, coraz bardziej miniaturowe, zasilane niskim napięciem z baterii oraz wyposażone w interfejsu bezprzewodowe. Na pewno pojawią się też rozwiązania przeznaczone stricte do IoT. Osobiście wydaje mi się, że miniaturowe komputery przeznaczone do zastosowań multimedialnych są powoli zastępowane przez smartfony, oferujące użytkownikom gotową, wydajną, uniwersalną platformę.
Jacek Bogusz, EP