Ponekad se dok pišemo recenzije osećamo kao srednjevekovni moreplovci-avanturisti koji su u potrazi za nečim posebnim odlazili ka bajkovitim i neistraženim obalama i gledali u mapu na kojoj je bila ucrtana „Terra incognita“. Nisu joj znali ni oblik ni ćud, niti šta mogu očekivati kada se jednom nađu na njoj. Naša „neistražena zemlja“ je ovog puta stigla od kompanije Banana Pi i nosi oznaku Banana Pi BPi-M6.
Nakon M2, M4, M5 i sasvim nove M7 ploče, ova deluje kao da je u pitanju samo još jedna BPi varijacija na temu. Na prvi pogled, format Raspberry Pi 4 bi to mogao i da potvrdi. Čak su i nama ne baš omiljeni micro HDMI portovi tu. Pogledavši bolje, vidimo da ipak nešto krupno nedostaje – sa gornje strane ploče nema SoC-a. Nimalo pogodna situacija za one koji žele atraktivnu promo fotografiju uređaja. Ono što više izaziva neugodu usled smeštanja SoC-a sa donje strane ploče je pitanje pozicioniranja kulera, koji će kod ovog modela morati da se montira ispod. Time možete da zaboravite na sva Raspberry Pi 4 kompatibilna kućišta, tako da je oponašanje Raspberry Pi Model A formata očekivana navika. Niti su ovu uređaji „swap“-abilni, niti ovaj format ima nekih jasnih benefita. „Isto to samo malko drukčije“ mogao bi stoga biti lajtmotiv Banana Pi BPi-M6. Da pojasnimo.
Banana Pi BPi-M6 kao „Terra incognita“
U osnovi svega je neobičan VideoSmart™ VS680 koga proizvođač definiše kao multimedijalni SoC visokih performansi koji kombinuje CPU+NPU+GPU. Synaptic je inače projektovao ovaj SoC da bi bio pokretač kompleksnih multimedijalnih uređaja koji bi objedinjavali pametne displeje, kamere, audio interfejs i koji bi pružao respektabilnu procesorsku i AI snagu za obradu strimova podataka u realnom vremenu. Akcenat je pri razvoju stavio na Android OS i kroz par prilagođenih proizvoda implementirao ovu tehnologiju. Ipak, u periodu od 2022. kada je VS680 bio predstavljen kao nešto posebno na tržištu multimedijalnih uređaja, pa sve do danas možemo naći svega par uređaja koji su iskoristili obećane tehnologije kao što su: Qdeo 4K-video endžin, audio procesor sposoban za prepoznavanje govora i SyNap deep-learning akcelerator (DLA).
Synaptics VS680 je četvorojezgarni procesor, koga čine ARM Cortex-A73 jezgra sa taktom od 2.1 GHz (kada nisu opterećeni računom odmaraju se na 1,4 GHz dajući doprinos smanjenju globalnog zagrevanja). Dakle dobro poznata jezgra, kao kod Amlogic A311D (Banana Pi M2S) recimo, uz dodatak jednog ARM Cortex-M3 jezgra na 250MHz koji ima ulogu Secure CPU-a. Prisustvo prva četiri smo lako mogli da potvrdimo, budući da se rad Linux verzije OS-a oslanjao na njih, međutim ovo „bezbedonosno“ M3 jezgro nigde nismo videli u radu, ono je duboko hardverski integrisano u rad procesora i nema biblioteke sa kojom bi mogli prići i uticati na njegov rad. Na sve to na Synaptics stranici sajta posvećenoj VS680 SoC-u navedeno je njegovo prisustvo, dok ga u zvaničnom Product Brief pdf-u nema. Samo jedna od neistraženih misterija VS680.
U okviru SoC-a integrisan je po specifikacijama moćan PowerVR Series9 GPU kompanije Imagination. Iako sam Imagination potvrđuje da njihov GPU podržava i Linux i Android OS uz implementaciju Vulkan 1.3, OpenGL ES 3.x/2.0/1.1 + Extensions i OpenCL 1.2, testirajući u Linuxu nismo mogli da potvrdimo Vulkan, dok je OpenGL zaista ES i na glmark2-ES testu postiže skor od 118. Taj skor je tri do četiri puta lošiji od onoga što postižu RK3588 (Orange Pi 5 plus) sa svojim Mali-G610 MP4 GPU-om, koji i sam ima „problem“ sa video drajverima kada je Linux u pitanju. Definitivnu potvrdu da video drajveri nisu na nivou koji bi trebali biti na Linuxu dao je i glxGears prikazavši svega 32o fps na Armbian-u, a 627 fps na Ubuntu-u u prozoru dimenzija 800×600. S obzirom na GPU hardver, ovo može biti mnogo bolje. Ne možemo kriviti Banana Pi tim, optimizacija drajvera je posao proizvođača čipa.
Kombinacija grafičke i procesorske snage uz, po specifikacijama veoma upotrebljiv NPU od 6.75 TOPs (INT8), omogućavala bi da ovaj SoC bude odlično jezgro Facebook totema ili smart displeja, koji bi sa mogućnošću striminga sa dve 4K video kamere mogao da služi za video konferensing. Uz ugrađeni DLA, neuralnu mrežu i prepoznavanje govora (i FFV kojim se prepoznaje pravac izvora govora u bučnom okruženju ali i dodatni algoritam za detekciju govornih fraza), te mogućnost da prepozna lica i objekate u realnom vremenu mogao bi biti odličan digitalni asistent baziran na oblaku ili sigurnosni sistem za nadgledanje. Sve ovo uz prikaz na 1080p tač ekranu uz paralelni stiming slike na dodatna dva 4K displeja. Sve zajedno veoma moćno i u skladu sa multimedijalnim trendovima današnjeg sveta. Imagination i Synaptic su referentne firme sa dosta iskustva u naprednim tehnologijama i mi zaista ne možemo sumnjati da će ova platforma sve ove zadatke u nekim budućim projektima i ispuniti.
Susret sa mejkerskom realnošću ove platforme danas je ono što nam omogućava naš Banana Pi BPi-M6 SBC, kojeg bi u ovom slučaju zbog onoga u kom se stadijumu softverska podrška nalazi, pre trebali zvati SBC u razvoju ili razvojni sistem u formi SBC-a. Takav je i bio naš pristup ovom novom Banana Pi čedu, a glavna pitanja su bila: „dokle se stiglo sa softverskom podrškom?“ i „koliko snage hardvera se zaista može u ovom trenutku izvući iz sistema?“.
Hardver
Kao što smo već pomenuli, četiri ARM Cortex-A73 jezgra kucaju na 2.1 GHz obećavajući performanse između Raspberry Pi 4 i Raspberry Pi 5 modela ili SBC-ova zasnovanih na RK3588 čipu . Sam SoC je izrađen u 12 nm tehnologiji i moramo odmah napomenuti da se u radu vrlo brzo zagreva na preko 76°C. Peporuka proizvođača je veliki pasivni hladnjak koji bi se montirao tako da pokriva: SoC, oba memorijska čipa i eMMC. Mi smo u našim testovima koristili ventilator i temperatura nikada nije išla preko 54°C, što opet smatramo pouzdanijim rešenjem sa stanovišta trajnosti.
Banana Pi tim pri odabiru memorije se odlučio za kombinaciju koju su već koristili na drugim pločama: dva Samsung K4U6E3S4AB-MGCL modula po 2 GB koja rade na 2133 MHz (4266 MT/s). VideoSmart™ VS680 po specifikaciji sa sajta proizvođača može koristiti maksimalno 4 GB 64-bitnog LPDDR4X RAM-a brzine 3733 (MHz ili MT/s?). Ovde upadamo u probleme koje je gotovo nemoguće rešiti. Nedostatak originalnog datasheet-a i bilo kakve dokumentacije i na Banana Pi sajtu (što je vrlo neobično za njih i govori da Synaptics nije dozvolio javno publikovanje) i na sajtu Synaptics-a. I sa pravom se ovde možemo pitati, kako razvijati uređaj na generalno nepoznatom SoC-u, bez ikakve dokumentacije. Svodi li se time ova Banana Pi BPi-M6 na demonstracioni SBC jednog ekscentričnog čipa, nešto nalik na VisionFive 2 SBC. Kako god da je memorija hardverski izvedena, rezultati na Sysbench RAM i Tinymembench pokazuju uporedive vrednosti u odnosu na one kod konkurentskih ploča.
Šta se još nalazi na ovoj ploči? Tu, između memorije i procesora, smešteno je 16 GB eMMC 5.1. u obliku Samsungovog KLMAG1JETD-B041. Sasvim standardno i često rešenje koje je na testovima pokazao brzine od 295,67 MB/s, što je nekih tri puta više od 82,7 MB/s koliko je bila brzina čitanja sa SD kartice (mi koristimo Kingston CANVAS Select Plus 64GB). I ovde postoji jedna napomena. Android se na ovoj ploči može instalirati samo na eMMC-u, dok se Linux (u ovom trenutku Ubuntu i Armbian) mogu pokrenuti samo sa SD kartice. Dakle, nema načina da ovu prednost u brzini eMMC-a osetite prilikom upotrebe samog Linux-a. Jedino što možete uraditi je da eMMC koristite kao disk za smeštanje podataka.
Sa donje strane ploče je i ležište za SD karticu push-pull tipa. Neko ga voli, jer nema bojazni od slučajnog izvlačenja kartice prilikom manipulacije, neko ga ne voli, jer kartica štrči van okvira SBC-a daleko više nego iz push-push ležišta.
Gornja strana ploče podseća na letnje zvezdano nebo, svojom plavom bojom i rojem sitnih komponenti gusto načičkanih po njoj oko belog BPi logoa. Na toj strani je i M.2 Key-E konektor namenjen povezivanju sporijih eksternih uređaja, kao što su Wi-Fi/Bluetooth moduli. Isprobali smo standardni RTL8821CE M.2 Key-E modul i radi u svakoj distribuciji po „plug & play“ principu.
Uz prednju ivicu ploče nalazi se Gigabitni Ethernet port. Brzina transfera u našim testovima bila je Tx/Rx 931/841 Mbps. Nije bilo značajnog usporenja u bidirekcionom modu. Rad je poveren Realtek RTL8211F transiveru. Pored njega su u skladu sa Raspberry Pi 4 rasporedom USB portova dva para USB 3.0 Type-A portova. Njihovim radom upravlja VIA Labs-ov VL817-Q7 USB 3.1 Gen1 Hub kontroler i postiže stabilnih 400 MB/s i pri čitanju i pri upisu sa vremenom pristupa od 0,12 ms.
Uz desnu bočnu ivicu nalazi se 40 pinski GPIO heder. Banana Pi je na sajtu dala tačan raspored i funkcije pinova i oni se, bar što se rasporeda grupa napojnih i data pinova poklapaju sa Raspberry Pi „standardom“. Ono što kvari utisak u celoj priči je da nigde nisu dati brojevi pinova kako bi se koristio najelementarniji način upravljanja pinovima kroz /sys/class/gpio. Nažalost ne postoji ni verzija neke biblioteke za Python ili C prilagođena ovom SoC-u nalik WiringPi-u. Informacija je, nezvanična, da se na takvoj biblioteci radi i da će proći meseci do njenog pojavljivanja. Mejkerska, praktična upotrebljivost Banana Pi BPi-M6 sistema time će drastično porasti.
Sa suprotne leve strane nalaze se već pomenuta dva micro HDMI konektora. Jedan sa Tx i jedan sa Rx oznakom. Kroz prvi je moguće generisati sliku rezolucije 4K na 60 Hz, ako se držimo ono malo specifikacija koje imamo za Imagination™ PowerVR™ Series9XE GE9920 GPU. Ulazni video na Rx portu može biti takođe 4K na 60 Hz. Međutim, u svim OS-ovima koje možete preuzeti sa sajta, moći ćete da prikažete isključivo sliku od 1920 x 1080 px. Dat je izbor samo još dve niže rezolucije, ali će čak i one raditi na delu displeja, dok će ostatak ekrana uvek veličine 1920 x 1080 biti crn. Apsolutno neupotrebljivo. Implementirani 1080p je stabilan i u ovom slučaju ga treba smatrati jedinim izborom za prikaz preko HDMI porta, na šta treba obratiti pažnju pri odabiru ekrana za BPi-M6.
Najzad, uz ivicu je pozicioniran USB C konektor koji služi za napajanje SBC-a, ali i za flešovanje eMMC-a prilikom instalacije Androida. Synaptics je dao preporučeni softver za Windows okruženje pod imenom SenarySocSystemTool uz prateće uputstvo. Kada koristite ovaj softver, da bi ploču prebacili u mod za flešovanje, potrebno je držati pritisnuto dugme USB prilikom konekcije ploče na PC računar. Kasnije, prilikom startovanja sistema, on će bez ikakvih pritisaka na bilo koje dugme, podići sistem sa eMMC-a.
I sada se pitate, a kako podići Linux sistem, za koji smo već rekli da se može naći samo na SD kartici, nakon paljenja ili reseta pritiskom na reset dugme. Pa podignućete ga tako što morate držati par sekundi nakon dovođenja napajanja dugme sa oznakom SPI. Svaki put, iznova i iznova, prilikom paljenja ili reseta. Daleko od bilo kakve elegancije.
Sa zadnje strane ploče, iznad SD kartice smešten je DSI konektor za LCD ekran. Postoji specifikacija pinova trakastog kabla, ali mi zaista nismo našli ni jedno objašnjenje, preporuku ili sugestiju proizvođača o tome koji ekrani su kompatibilni ili bar preporučeni. Iako skromna dokumentacija govori da je moguće povezati dve striming 4K kamere na ovaj SoC, što ga čini posebno interesantnim za interaktivne toteme, na ploči nema CSI konektora, pa verujemo da je ideja bila da se koriste USB 3.0 portovi.
Software
Prvi OS koji se nameće za Banana Pi BPi-M6 je Android. SoC je i pravljen sa mišlju da pokreće različite marketinške, turističke, školske ili informacione toteme i bilborde sa mogućnošću video konferensinga, oslanjajući se na njegov Android SDK i SyNAP™ AI framework. Mi nažalost nismo moglo da dođemo do ovog AI alata u verziji za Linux koji bi trebao da nam omogući upotrebu TensorFlow ™ Lite Android ™, NN API, i OpenVX ™ tehnologija. Isprobali smo Android 12 imidž sa sajta Banana Pi, koji je jedan veliki demo za prikazivanje AI mogućnosti. Radi glatko i veoma brzo i zaista daje osećaj da je sve moguće sa ovom platformom, ako se zna kako, uz bar neko uputstvo ili application note.
Ono gde smo mogli više da istražujemo su dve Linux distribucije: Ubuntu 20.04 i Armbian 24 Bookworm. U suštini isti OS sa različitim ukusima, pa bi mi ipak izabrali Ubuntu kao brži i bolje urađen u ovom trenutku.
Ono što nas je obradovalo je lako instaliranje Node-red paketa, Docker-a i Nginx veb servera na Banana Pi BPi-M6. Postoji problem sa instalacijom Snapd-a, iz čega se potencijalno generiše čitav niz problematičnih instalacija, kao što je recimo instalacija Chromium brauzera. Nepostojanje DT overlay-a za ovu ploču, uz več pomenuti nedostatak bilo kakvih AI ili biblioteka za upravljanje I/O signalima na GPIO portu, za sada približava ovu ploču pre demonstracionim nego razvojnim SBC-ovima. U razgovoru sa Banana Pi timom, oni su zaista iskazali interesovanje da pomognu u realizaciji svakog tipa prilagođenog OS-a u skladu sa potrebama kupca. Jasno je da će se u ovaj SoC ulagati, bar tako sada postoje indicije, i voleli bi da vreme do sazrevanja platforme kroz litaraturu, primere, aplikacije i biblioteke što pre prođe.
Benčmarci na Banana Pi MPi-M6
Za testiranje smo koristili Ubuntu 20.04, jer se pokazao bolje implementiranim na ovom SBC-u. Poredeći opšti utisak pri radu, što obično radimo u Octane 2.0 testu, dobili smo skor od 13222 (Armbian je postigao svega 6923) i on je uporediv sa drugim platformama koje imaju ista jezgra, kao što je Amlogic A311D.
I Geekbench 5 i Geekbench 6 su to potvrdili i mi zaista nemamo razloga da strahujemo da je implementacija Linux-a na ovom SoC-u ispod trenutnog proseka. Ono što ćete sigurno primetiti je da nedostaje „ispoliranost“. Primer: uzmite mišem neki od prozora i pomerite ga po ekranu. Videćete veliko kašnjenje, a onda neočekivani skok na novu poziciju ekrana. Shvatićete odmah da to baš ne bi trebalo da bude odredište i jasno je da desktop menadžer ne sinhronizuje kako treba položaj pointera i promenu položaja vaše ruke.
ARM Cortex-A73 jezgra, pa time i VideoSmart™ VS680 po specifikacijama imaju Armv8 Cryptographic Extension kojime su dodate A64, A32 i T32 instrukcije Advanced SIMD-u. Time je ubrzana AES (Advanced Encryption Standard) enkripcija i dekripcija, kao i SHA (Secure Hash Algorithm) 1 i SHA2-256 funkcije. OpenSSL testovi pokazuju da je kao i kod svih ARM jezgara rezultat proporcionalan taktu procesora.
I na kraju, brzinu samog procesora smo merili Sysbench CPU i starim Unixbench testom. Sysbench CPU je donekle podbacio u odnosu na rezultate drugih platformi sa istim jezgrima.
Unixbench je u nekim testovima, posebno onim gde se vršilo intenzivno paralelno procesiranje uz značajnu upotrebu memorijskih transfera, pokazao veoma neočekivano visoke rezultate. Rekli bi da je integrisani DRAM kontroler veoma dobro odradio svoj deo posla.
AI mogućnosti Banana Pi BPi-M6
Svakako da smo isprobali i Yolov6 model. Iskoristili smo unapred instaliran demo koji dolazi sa Ubuntu OS-om. Izabrali smo nezahvalnu fotografiju sa jednog nedavnog događaja u kojoj je veliki broj ljudi koji sede okrenuti licem od kamere.
Analiza fotografije 1200 x 900 piksela je trajala svega 93 ms, što nam govori da bi mreža mogla da vrši obradu fotografija te rezolucije brzinom od oko 10 slika/s. Obratite pažnju i na verovatnoću pouzdanosti prepoznavanja koju smo dali na slici sa njene desne strane.
Zaključak
Ako se pitate na kraju zašto da izaberte BPi-M6 sa neobičnim Synaptics VideoSmart™ VS680-om, odgovor se nameće. Snažan je, ima i AI (NPU – neuralnu mrežu), i sasvim pristojan GPU, jak četvorojezgarni CPU, sve potrebne hardverske security opcije i RT Arm Cortex-M4 jezgro, veliki broj ulaznih I2S linija i procesor posebno namenjen za obradu zvuka. Multimedijalni hardver spakovan u čip sa malim footprint-om koji oponaša Raspberry Pi. Samo još da dobije softversku podršku, javno dostupne primere i adekvatnu literaturu i može imati odličnu budućnost. Drugi razlog za izbor može biti i onaj sa početka teksta: malo je još „Terra incognita“ ostalo da se istraži u ovom sivilu uniformnih ideja mainstream(line)-a SBC-ova.