DFRobot FireBeetle 2 M0
Vremešni i neodoljivi Microchip (Atmel) SAMD21G18 sa Cortex-M0 jezgrm se nalazi u ovom DFRobot FireBeetle 2 M0 sistemu koji vapi za širom podrškom razvojnih okruženja od ponuđenog Arduino IDE-a. Odličan hardver, pažljivo osmišljeni interfejsi i korektna cena zahtevaju RTOS, Python i Mind+ podršku.
Pros
- Veliki broj IO linija i odlično osmišljena integrisana proto ploča
- Wiki strana sa kvalitetnim i ciljanim informacijama i primerima
- USB-C port u skladu sa današnjim standardom
- Mudro izveden konektor za trakasti kabl tač displeja
- U kompletu se dobijaju i muški i ženski hederi
- Cena je veoma dobro odmerena
Cons
- Zvanično samo podrška Arduino IDE, neophodna RTOS, Phyton i Mind+ ili slična podrška za grafičko programiranje
FireBeetle serija mikrokontrolerskih pločica je vizija standardizacije minijaturnih mejkerskih sistema kompanije DFRobot. Pored istog formata, sve pločice se mogu baterijski napajati i programiraju se preko ugrađenog USB-C konektora. FireBeetle-ovi standardizovan broj i raspored IO pinova, uslovno omogućavaju – pazeći na specifičnost hardvera mikrokontrolera na ploči – zamenu jedne pločice (jednog mikrokontrolera) drugom (drugim) uz minimalne hardverske korekcije projekta. Naravno, softver se u tom slučaju mora prilagođavati novom mikrokontroleru.
DFRobot nas je potpuno zbunio imenovanjem FireBeetle ploča. U jednom trenutku jasno se kaže da je FireBeetle i FireBeetle 2 nisu međusobno zamenjivi, a onda na poleđini proizvoda naiđemo na natpis: FireBeetle M0 V1.0 što nas je ostavlilo u dilemi. Međutim na zvaničnom sajtu ova ploča je jasno nazvana FireBeetle 2 i na njenoj strani su fotografije ove ploče. Naravno, nakon testiranja, bilo nam je jasno da je ovo pravi „FireBeetle 2“.

Hardver
Pločica je dizajnirana kao minijaturna razvojna ploča za Atmel SAMD21. Njega smo videli u Arduino Zero-u, ali i u XIAO SAMD21 i u legendarnom Adafruit Feather M0 Express koji je bio prvenac Feather serije. Ovaj mikrokontroler ima jedno ARM Cortex-M0+ jezgro koje radi na 48 MHz, 32 KB RAM i 256 KB Flash-a. Iako postoje verzije ovog mikrokontrolera i sa 52 I/O pina, ovaj ATMDAMD21G18A-U 48 pinskom kućištu ima izvedenih 10 analognih i 24 digitalna pina. Preostali su napojni. Iako danas namena ovog kontrolera ne bi bila kompleksna računjanja, već pre očitavanje senzora, bazična obrada rezultata i manipulacija dobijenim podacima, kao i bazično upravljanje aktuatorima, osećaja radi treba reći da mikrokontroler postiže: Dhrystone 25.53 MIPS, Whetstone single 2.02 MIPS, Whetstone double 1.09 MIPS.

Na ploči je i Winbond 25Q128JVSQ 16 MB serijski Flash koji ima funkciju U-disk-a. Dvostrukim pritiskom na reset taster, ploča ulazi u poseban mod u kome RGB dioda na ploči sija zelenom svetlošću. Tada će se na vašem računaru ploča pojaviti kao dodatni drajv veličine 12.6 MB. Ovaj prostor se može koristiti za smeštanje podataka kojima može pristupiti mikrokonroler ili on sam može smeštati podatke na ovaj disk.

Od 34 I/O pina ove verzije mikrokontrolera dostupno je 6 analognih (A0 sa 10-bitnim DAC-om i može biti izlazni, a svi od A0 do A5 sa 12-bitnim ADC-om kao ulazni portovi) i 15 digitalnih opšte namene – svi sa PWM-om, sa tim da su od njih 3 već iskorišćena pri realizaciji ploče: D4 za taster, D8 za RGB diodu, dok je D13 deljen. D13 ima i svoj pin, ali je i povezan za crveni LED na ploči koji se nalazi uz USB-C konektor. Dodatno su izvedeni: jedan I2C (pinovi SDA i SCL) i jedan SPI (pinovi MI, MO, SCL) interfejs. Jedan UART1 (TX1, RX1) je multipleksiran sa digitalnim pinovima 0 i 1, a drugi UART0 ima sopstvene TX i RX pinove u hederu.
Paralelno sa izvođenjem pinova uz ivicu ploče, DFRobot je jedan broj linija odveo i na displej interfejs (General Display Interface) na dnu ploče kako bi u slučaju potrebe pojednostavio povezivanje ekrana trakastim kablom. Ovaj interfejs ima ukupno 18 linija – u kombinaciji su; SPI, I2C, komandne i naponske linije, pa čak i dve dodatne linije (X1, X2) slobodne za upotrebu po želji. X1 i X2 nisu vezani za mikrokontrolr, već za dve ugaone rupe na proto ploči.

Podjednako dobro pločica je označena i sa donje strane. Na mestu konektora za punjivu Li-ion bateriju – koji je sa gornje strane pločice, sa donje su izrađena lemna mesta. Pazite na činjenicu da je napon baterije 3.7 VDC, a napon sa napojnog USB-C porta 5 VDC.
DFRobot je ovaj razvojni sistem uradio u FireBeetle formatu koji je, kada je ovaj mikrokontroler u pitanju, duplo veći od neophodnog. Međutim, jasna i logična je želja da se ostane u formatu serije. Nalik rešenju kojem je u ovom sluačju pribegao Adafruit u Feather M0 Express modelu, dodali su minijaturnu proto ploču sa 26 nepovezanih, 2 eksterna (X1 i X2) i 14 dodatnih unapred definisanih otvora grupisanih u četiri funkcionalne celine. Prva je sa napojim signalima, druga je I2C interfejs, u trećoj su već pomenuta dva slobodna programabilna signala koja se nalaze i u displej interfejsu i najveća četvrta je sa 26 nepovezanih otvora.

Softver
Sada Microchip, nekada Atmel SAMD21G18 je dobro poznat mikrokontroler već godinama i za njega postoji veliki broj različitih okruženja u kojima se može programirati. Primerak koji smo mi dobili od DFRobot-a za potrebe ove recenzije nosi datum 07.12.2020. i piše da je Prototype 1.
U ovoj recenziji ćemo se ograničiti samo na ona sofverska rzvojna okruženja za koje je DFRobot zvanično dao biblioteke. Njihova pažnja u ovom trenutku je usmerena na korisnike Arduino IDE-a i za njega je pisano zvanično Wiki uputstvo. To zaista jeste sasvim dovoljno za mejkerski i stariji edukativni svet. Deo korisnika bi sigurno voleo da vidi neki od Nuttx ili Zephyr portova, kao i detljna uputsva za korišćenje integrisanog MPLAB Tools-a u VS Code Studio. Naravno CircuitPython ili MicroPython su standard, a za očekivati je i podrška DFrobot Mind+ grafičkog okruženja za programiranje blokovima.
Zaključak
Fer je da uporedimo ovu SAMD21 pločicu dimenzija 60 x 25.4 mm sa danas verovato najpoznatijim sistemima sličnog formata: XIAO SAMD21 i Adafruit Feather M0 Express. Cena DFRobot FireBeetle M0 je $8.90, dok XIAO svoju minijaturu nudi za $5.40. Mali format 21×17.8 mm je u ovom slučaju uslovio restrikciju dostupnih interfejsa na XIAO. Iako multipleksirani, imamo po jedan I2C, SPI i ADC, ali i samo jedan UART. Ukupan broj pinova je 14, a 11 od njih mogu biti analogni ili digitalni – pazite ukupan broj analognih linija mikrokontrolera je deset. XIAO SAMD21 je podržan u Arduino IDE, CircuitPython, MicroPython, Nuttx (koga interesuje može pročitati zanimljiv intervju sa Rodrigo Sim-om) i Zaphyr. Za početnike tu je vizuelni MicroBlocks.

Adafruit Feather M0 Express je u dimenziji 51 x 23 mm i veoma liči na FireBeetle – mada bi pravilnije bilo reći da DFRobot-ov model kao mlađi liči na legendarni Adafruit prvenac. Adafruit Feather ima isti broj i tip analognih I/O pinova, ali samo sedam digitalnih linija. Kod njega je takođe, 13 pin povezan na LED diodu, a tu su i RGB dioda na ploči i konektor za Li-Poli bateriju. Ono što „smeta“ je mikroUSB konektor koji je iz današnje vizure standardizacija zastareo. Proto ploča na pločici ima 25 nepovezanih rupa i po dodatne četiri povezane na GND i 3 VDC. Za $19.98, sem ukoliko niste potpuno u Feather ekosistemu, ovo je samo previše za ponuđen hardver. No, kako je ovo „stara“ pločica za njega pored Arduino IDE razvojnog okruženja, postoji i CircuitPython, MicroPython, Zephyr, ali ne i Nuttx …. ni MicroBlocks, ali je zato MakeCode Maker tu da ga zameni.
Portovanje na RTOS i Python je nešto o čemu bi DFRobot morao prvo da razmisli ukoliko planira aktivnu podršku svog FireBeetle 2 M0 sistema, a onda i o nekom od vizuelnih alata za programiranje blokovima na koje su navikli mlađi korisnici. Do tada, koristite Arduino IDE, jer za veoma razumnu cenu dobijate odličan hardver.

