Belinonda 4

Introduzione
Belinonda 4 e' una deviazione dal mainstream Microchip, nata in attesa dell' arrivo del PIC32MZ. Frugando su Internet alla ricerca di componenti elettronici ho trovato la ditta lituana 8devices che produce i moduli Carambola 1 e Carambola 2. Sono mini moduli con un processore che integra on-chip anche l' adattatore Wi-Fi, una flash di boot e alcuni mega di ram in cui gira OpenWrt, decompresso dalla flash. Ci sono una seriale a 3.3 volt, Ethernet senza Phy, USB, SPI e alcuni piedini GPIO. L' uscita a RF e' su un piedino e, in parallelo, su un connettore UFL. Carambola 1 e' basata su Ralink 3050 e sembra in fase di abbandono. Carambola 2 e' basata su Atheros 9331 ed e' l' ultimo grido in materia.


Nasce con installato OpenWrt completamente programmabile dall' utente senza blocchi di fabbrica, e costa su Internet circa 25 euro, e anche meno, spese di spedizione a parte. E' disponibile a prezzo leggermente piu' alto un sistema di sviluppo, e cioe' il modulo saldato su una scheda, un regolatore di tensione, antenna a chip, convertitore USB-seriale, phy di Ethernet e tutti i connettori.




Hardware
Partendo dal sistema di sviluppo e scremando il non essenziale e' venuta fuori Belinonda 4, di cui si vede il PCB, le due facce separate,



e sovrapposte.

Il circuito finito, sempre costruito da Millennium Dataware, e' visibile nelle foto. I files Eagle CAD sono disponibili qui.


Innanzitutto e' stata eliminata Ethernet, non utilizzabile su un sistema portatile e indossabile. Poi e' stato aggiunta una sede per una microSD, sfortunatamente non usabile con il sistema preinstallato, che va ricompilato e upgradato. Tutti i dettagli sul sito OpenWRT. Se il sito ha molti dati li puo' caricare su un pendrive USB. Volendo aggiungere una webcam il connettore e' occupato e i dati devono migrare su una microSD. Gli hub sono supportati, ma l' ingombro di un hub distrugge la compattezza del sistema. Inoltre il convertitore USB-seriale per la console e' stato tolto dalla scheda e messo esterno. Infatti sui siti cinesi, e su quello DealExtreme in particolare, sono disponibili a pochi euro dei convertitori USB-seriale costituiti da una piccola scheda saldata sul connettore piu' dei cavi. La versione base ha 5 piedini: massa +3.3V +5V Tx Rx. Altre versioni piu' sofisticate hanno i led di attivita' Rx Tx, e altre anche i segnali di controllo DTR RTS. Tutte comunque sotto i 10 euro. In genere il chip non e' il solito FTDI, ma Silabs 2102, ma i driver si trovano senza problema. In tal modo una circuiteria che serve solo in programmazione non e' piu' sulla scheda e non tiene posto e non assorbe corrente in esecuzione. Nelle foto si vede Belinonda 4 montata, in versione con antenna esterna collegata al connettore UFL e con il convertitore USB-seriale collegato al connettore a 4 piedini passo 2.54, fronte


e retro.


Un item fondamentale di Belinonda 4 e' l' antenna. Il modulo Carambola 2, come detto, viene fornito senza antenna. Il sistema di sviluppo, invece, ha un' antenna a chip. Il modello non e' chiaro, ma tutte le antenne di questo tipo hanno una caratteristica di emissione omnidirezionale. Inoltre in genere il produttore le ha tarate per essere saldate su un PCB con una zona libera intorno. Sarebbe invece gradito, per un device da indossare a contatto con il corpo umano, una caratteristica di emissione a semispazio. Le potenze sono basse, inferiori a quelle di un cellulare cui nessuno piu' bada, ma anche senza essere paranoici e' meglio un poco di prevenzione, specie se non costa nulla. La Molex, famosa per i suoi connettori, per automotive ed elettronica, ha messo in produzione un' antenna a chip, ad elica. Anche questa antenna e' omnidirezionale, ma la Molex dichiara che se al di sotto si trova un piano di massa non si disaccorda. Il piano di massa si puo' inserire per fungere da schermo verso il corpo umano. Inoltre non e' necessario alcun circuito di accordo e puo' essere collegata direttamente ad un' uscita RF single-ended. Ovviamente la pista di collegamento deve essere una linea di trasmissione a 50 Ohm. L' antenna montata sul circuito e' visibile in foto.


L' antenna e' in vendita sul sito RS con il part number 759-5325 ed e' stata scelta per Belinonda 4. I risultati sono stati ottimi, con una buona emissione, compatibilmente con le dimensioni, e nessuna interferenza con la parte computer. Il calcolo della linea di trasmissione e' stato eseguito con un programma free, disponibile qui. Unica incognita il valore di epsilon R del PCB. Le specifiche, essendo il laminato FR4 non per microonde, permettono da 4 a 4.8 . Per il calcolo ho scelto 4.4 , valore medio, ed ha funzionato. Per un laminato FR4 di un altro produttore potrebbero essere necessari aggiustamenti. Per inserire addosso Belinonda 4 ho pensato uno scatolino sperimentale (non e' un capolavoro di design !). In figura le visualizzazioni di MeshLab per box


e cover.


MeshLab e' gratuito, chi non lo avesse puo' scaricarlo qui. I files STL di box e coperchio sono disponibili qui. Coperchio, scatolino e PCB finiti sono visibili in queste foto.


Spiegando lo schema piu' in dettaglio, si vedono oltre al modulo Carambola il circuito di alimentazione con il regolatore di tensione e i condensatori di spianamento. Nel punto della scheda piu' lontano dal regolatore si trova un condensatore ceramico da 4.7 microfarad. E' disponibile presso RS con il part number 741-6821. E' di grande capacita', ma non essendo induttivo filtra anche la radiofrequenza. Questo schema a tre condensatori e' poco usuale, viene da uno schema circuitale giapponese, ma a me piace molto. L' alimentazione principale e' a 5 volt, come da USB. I punti di ingresso sono due in parallelo: quando la scheda funziona normalmente, in configurazione indossabile, l' alimentazione viene dal connettore micro USB, che ha collegati solo i piedini di alimentazione, e serve solo a quello. I 5 volt in ingresso vanno al connettore USB-A femmina con la scheda in normale funzione di host, e al regolatore di tensione a 3.3 volt che alimenta il modulo Carambola. Quando la scheda viene programmata dall' utente root l' alimentazione viene attraverso il connettore a 4 vie che si collega a un convertitore esterno USB-seriale. Le altre tre vie sono la massa e transmitted-data e received-data di una seriale a 3.3 volt. In tal modo la linea seriale che funge da console riesce ad alimentare il modulo come se fosse una USB (ma attenzione ! non lo e'!). Vari modelli di convertitore USB-seriale sono disponibili qui. Il modello che uso io e' basato sul Silabs 2102. Le linee di segnale TxD e RxD sono a 3.3 volt. Sui convertitori sono disponibili almeno 5 piedini : massa, TxD, RxD, +5volt e +3.3volt. Per l' alimentazione di Belinonda 4 occorre usare la linea a 5volt, mentre quella a 3.3 rimane inutilizzata. Sulla scheda e' infatti presente un regolatore, con relativa caduta di tensione. Se entrate gia' con 3.3 a valle del regolatore ce ne saranno 2.8, insufficienti ad alimentare il modulo Carambola. Nello schema tra i 5volt e il regolatore di tensione e presente un diodo di protezione. Quando si alimenta la scheda da micro USB, che e' polarizzato e' impossibile sbagliare, ma quando si collega il covertitore USB-seriale e' possibilissimo. Senza il diodo basta un attimo di disattenzione a bruciare tutto invertendo le polarita'. Attenzione ! Il modulo Carambola e' piuttosto sensibile alla tensione di alimentazione. Usando un diodo SMD a basso costo (caduta di tensione circa 0.85 volt in funzionamento) il modulo avvia normalmente, ma quando parte il Wi-Fi, che aumenta l' assorbimento di corrente il modulo a volte resetta. Problema risolto usando un diodo Schottky a bassa caduta (0.38 volt in funzionamento) disponibile presso RS con il part number 638-7915. Infine sulla scheda sono presenti la sede per microSD, il pulsante di reset hardware, due pulsanti programmabili dall' utente, tre led programmabili dall' utente, e un connettore a 8 vie com massa, 3.3 volt e 6 piedini di GPIO. Nel PCB sono infine ricavati tre fori per il fissaggio della scheda, cui corrispondono tre piedini nel box in plastica gia' citato. L' alimentazione tramite microUSB permette di usare i power bank ormai diffusi per ricaricare cellulari ed elettronica portatile attraverso lo stesso cavo USB fornito in dotazione. A cose fatte si puo' dire che Belinonda 4 e' venuta piu' grande di quanto avrebbe potuto o dovuto. Pero' funziona, e una versione definitiva piu' compatta non e' un' urgenza. Il grosso dell' ingombro in spessore e' dato dal connettore USB-A femmina. Sarebbe bello sostituirlo con un microUSB come quello di alimentazione. Le webcam non sono un problema perche' c' e' comunque il cavo, e basta aggiungere un adattatore, il cosiddetto cavo OTG. I pendrive invece possono restare nell' ingombro scheda e aggiungere un cavo OTG distruggerebbe la compattezza dell' insiema. I pendrive con connettore microUSB da collegare ai cellulari stanno arrivando, ma per il momento sono rari, cari e ancora troppo ingombranti. Nell' insiema si puo' dire che gia' ora la meccanica facilita al massimo l' indossabilita'. Normalmente esce un solo cavo, l' alimentazione, e anche volendo usare una webcam il suo cavo esce vicino al primo e parallelo. Nessuna uscita a istrice, come purtroppo si vede troppo spesso.
Il risultato finale si vede un figura.


Belinonda 4 con il suo scatolino e' attaccata alla stessa fettuccia di un badge di quelli da appendere al collo nei meeting. Direi che la portabilita' e' totale.

Software
Per la parte software e' tutto OpenWrt. Non e' questa la sede per un tutorial, il sito istituzionale ha tutto quello che serve. In ogni caso e' un sistema operativo per esperti, per gente che che se la sa cavare. Il sito della 8devices ha una pagina con numerosissimi moduli ricompilati in modo specifico per AR9331. Il filesystem su flash del Carambola 2 ha numerosi moduli installati, tra cui il web server uhttpd. Per chi ne vuole altri bisogna andarli a prendere sul sito della 8devices e installarli. In particolare per Belinonda 4 ho preferito un web server piu' potente, lighttpd che supporta un maggior numero di connessioni. Apache sarebbe stato meglio, ma non e' stato ancora ricompilato per AR9331. Con il sistema di sviluppo e' facile, basta collegarlo a un PC via USB che lo alimenta e gli fa da console, a internet via Ethernet (il sistema di sviluppo, non il PC) e si va sul sito della 8devices a prendere quello che serve. Il programma di installazione, come consuetudine Linux, va direttamente da internet all' installazione sul disco di sistema. Tutte le dipendenze sono gestite. Belinonda 4 non ha Ethernet. Si puo' fare via Wi-Fi, ma a me comunque piace avere copia locale di tutto quello che prendo su internet. Per cui una strada alternativa e' scaricare i moduli da internet con il PC, salvarli su una chiavetta USB, e metterla nella presa USB di Belinonda 4. A questo punto si lancia l' installazione. Con il sistema di sviluppo collegato a internet i comandi per installare lighttpd sono:

  • opkg update
  • opkg install lighttpd

    In locale bisogna installare l' USB per gestire la chiavetta (una volta sola !). I driver sono gia' presenti, basta creare la periferica, cosa da fare comunque, se volete usarla

  • mkdir -p /mnt/usb

    A ogni uso, inserita la chiavetta bisogna montarla
  • mount /dev/sda1 /mnt/usb
    Supponendo che i moduli siano nella cartella "mods" della chiavetta si entra
  • cd /mnt/usb/mods
    Supponendo che il modulo da istallare si chiami modulo.ipk
  • opkg install modulo.ipk

    Tutto questo modulo per modulo. Le dipendenze non sono piu' automatiche, ma le mancanze vengono segnalate. Su internet c' e' molta confusione sull' argoment, invece e' facile. Se al programma di installazione opkg viene dato in pasto un nome di file corretto, lo usa, altrimenti cerca il modulo su internet. Perche' si sappia: il file .ipk e' uno zip, basta rinominarlo a .zip e un PC lo apre senza problemi. Stessa cosa per gli apk di Android, tanto per dirne una.



  • Torna alla pagina Boards
  • Torna alla homepage