
Arriva dal Giappone la scheda Arduino più potente al mondo: Sakura. Dotata del potente processore Renesas RX63N a 32bit e 96MHz di clock, FPU, Ethernet, USB host, microSD sbaraglia i rivali senza problemi. Potente e facile da usare prossimamente nei vostri laboratori.
Tempo fa, navigando sul sito Renesas fui attirato da un annuncio in cui, rispondendo ad un questionario, si poteva vincere una demoboard. Non me lo feci dire due volte e riempii subito il questionario.
Passarono diversi mesi, tanto che di quel questionario mi ero completamente dimenticato, e mi vidi recapitare un piccolo pacchetto dal Giappone. Subito mi chiesi chi mi poteva spedire qualcosa dal Giappone. Conteneva una scatola grande quanto un pacchetto di sigarette. La aprii e vidi Sakura.

Questa scheda mi colpii subito. Aveva qualcosa di familiare. Ma certo! Arduino! Ha gli stessi connettori di Arduino! E poi tutta rosa, veramente carina! Mi piacque subito. In realtà sembra la fotocopia della Netduino plus 2 ma più carina. Nella scatola ho anche trovato un connettore USB tipo A da saldare alla scheda ed un (micro) foglietto illustrativo con le istruzioni per cominciare.
Come nasce Sakura
Partiamo dal nome: il Sakura (桜) che in giapponese significa ciliegio, è il simbolo del Giappone. Il suo fiore, la sua delicatezza, la brevità della sua esistenza sono per i giapponesi il simbolo della fragilità, ma anche della rinascita, della bellezza dell'esistenza. Come avete avuto modo di notare sulla scatola è presente il fiore del ciliegio stilizzato.

Tutto comincia al Japan's Embedded Technology 2011 Trade Show a Novembre 2011. Il successo di Arduino in Giappone stava dando noia a qualcuno. In realtà Renesas si è sempre focalizzata sull'industriale perdendo completamente di vista il settore hobbistico. Fu così che nacque il Gadget Renesas Project di cui Sakura fa parte (leggi l'intera storia).

L'idea è venuta ad Atsuhiko Kogure della Wakamatsu Tsusho Co. ltd un grande magazzino di elettronica nel distretto di Akiba. Tale distretto di Tokyo, conosciuto anche come Akihabara Electric Town, è stato famoso negli anni '80 per i suoi negozi di elettronica ed accessori high-tech. Adesso è uno dei quartieri più eccentrici e trasgressivi della capitale. Non è un caso che nel team figuri anche Sion, una cameriera del Akihabara Maid Café, una caffetteria dove le ragazze indossano divise da cameriera in stile vittoriano, con pizzi, merletti e l'immancabile grembiule.

Caratteristiche (特性)
Sakura è la più potente scheda Arduino in commercio:
- Microcontroller RX63N(R5F563NBDDFP)
- Operating Voltage 3.3V
- Clock Speed 96MHz
- RAM 128KB
- Flash Memory 1MB
- Floating Point Unit
- Package LFQFP100 14x14mm
- Digital I/O Pins: 55
- Analog Input Pins: 16 x 12bit ADC
- 4 Led blu SMD
- RJ-45 LAN* 10/100 Mbps
- 5V DC-Jack* alimentazione (nel caso di non utilizzare l'USB)
- USB mini-B (default) per la connessione al PC e la programmazione
- USB Host tipo A (da saldare)*
- alloggio per scheda micro-SD*
- predisposto per collegare direttamente una scheda Xbee
- connettore JTAG (non montato)
- Connettori compatibili Arduino
- Altri connettori (non montati) che consentono di utilizzare altri 40 pin del processore
Viene fornita in versione full o in versione standard senza i connettori con l'asterisco*.
Viene prodotta per Renesas dalla Wakamatsu Tsusho Co.ltd.
Hajime! (肇!)
Cioè in giapponese: Cominciamo! Per prima cosa procuratevi un cavo mini-USB. Connettete il cavo alla scheda ed al vostro computer. I 4 led blu presenti sulla scheda si metteranno a lampeggiare tutti insieme. Premete il tasto rosso SW1 (reset). I led si spengono e il vostro computer riconosce un dispositivo sulla porta USB.

Viene installato un disco chiamato GR-SAKURA che contiene un solo documento HTML al suo interno. A questo punto i led stanno accesi fissi.

Su questo disco è presente un solo file che è soltanto un link ad alla pagina HTML http://sakuraboard.net che però è in giapponese. Se non sapete il giapponese vi consiglio di cliccare in alto a destra su English.

Questa pagina spiega in modo dettagliato tutti i passi per accedere al Web Compiler e compilare il vostro primo progetto. Si, perché non avete bisogno di installare nulla, tutto il processo di compilazione viene fatto sul web!

Cliccando sul link http://tool-cloud.renesas.com/ appare questa finestra che in pratica ci dice che i nostri progetti saranno cancellati quando usciamo dal browser. Per renderli permanenti dovremo registrarci. Non ci resta che cliccare su Accept.

Adesso ci chiede di scegliere il modello (project template) da utilizzare per il progetto. Naturalmente prenderemo GR-SAKURA_Sketch. Diamo un nome al progetto (nel mio caso Prova_Sakura) e clicckiamo su Create.

Vi appare una pagina chiamata Renesas Web Compiler ovvero un ambiente dove ci sono alcuni files predefiniti in stile Arduino ed un programma che semplicemente fa accendere e spegnere i led in sequenza. Clicchiamo su Build per compilare il progetto.

Bene, la compilazione è avvenuta con successo ed è stata creata una coppia di nuovi files: makefile e sketch.bin, che è l'eseguibile vero e proprio. Cliccando con il tasto destro su questo file si può salvare il file sul computer. Selezioniamo il disco GR-SAKURA e salviamo direttamente lì dentro. Appena dopo il salvataggio vediamo che la scheda si resetta e magicamente il programma parte e vediamo i led accendersi in sequenza. Fantastico !!!
Registrazione (記録)
I files che creiamo, e anche l'intero progetto, sono salvabili sul nostro PC per riutilizzarli più avanti, ma la cosa migliore è registrarci in modo da avere un ambiente che viene salvato ed a cui possiamo accedere da qualunque altro dispositivo ed in qualunque posto, che comodità !!!
Per registrarci dobbiamo accedere alla pagina di MyRenesas.

Cliccare su New user ? Click here to register now

Cliccare sul pulsante English accanto a Europe/Middle East/Africa

Riempiamo i campi con il nostro nome, cognome ed indirizzo email (2 volte) e clicckiamo su Submit. A questo punto riceverete una email con un link per confermare. Cliccando sul link vi apparirà un'ulteriore form da riempire con i vostri dati personali.

Cliccate quindi su Submit in fondo alla pagina

Adesso potete inserire la vostra password e selezionare le vostre sottoscrizioni. Bene ora per ritornare al Web Compiler cliccate qui

Cliccate adesso su Login

Inserite la vostra email e la password e cliccate adesso su Submit e, dopo la richiesta di accettare le condizioni di fornitura, vi apparirà finalmente il vostro ambiente di lavoro.

Dopo essersi registrato si ha accesso ad una serie di librerie che consentono l'accesso alla eeprom, l'interfaccia ethernet, la SD/MMC card (il connettore si trova sul retro della schede), l'interfaccia seriale SPI e l'USB host (connettore da saldare provvisto con la scheda).

Sono presenti anche dei driver per servo motori, motori stepper e display a cristalli liquidi. In pratica non manca proprio niente.
Conclusioni (結論)
Devo dire che lavorare con questa scheda mi ha proprio divertito. Finalmente Renesas ha capito come rendere un sistema di sviluppo facile e divertente da utilizzare. L'uso di un compilatore web è fantastico e consente anche di essere multipiattaforma e di poter accedere ai propri files da qualunque posto e con qualsiasi dispositivo. Con questa scheda ci si può veramente sbizzarrire, non ci sono problemi di memoria o di capacità di calcolo. Fra le applicazioni create dagli utenti possiamo annoverare un server Web, un sistema di guida per un elicottero, un piccolo robot.

Quello che mi ha colpito di più comunque è stato la partecipazione dei bambini giapponesi. Nelle foto spesso appaiono piccoli progetti fatti proprio da loro.
Ora tocca a Voi, Sakura si può trovare in versione Standard o Full alla RS Components al prezzo rispettivamente di € 33,68 e € 45,22, un prezzo competitivo rispetto alla concorrenza Arduino compatibile.

Il panorama delle schede Arduino-like è composto di tantissimi elementi e questa si va ad aggiungere con grandi meriti, a quanto pare.
All’autore vorrei chiedere: la soluzione del software almost-online la ritiene una scelta saggia?
Che succede al codice realizzato? Una copia viene “trattenuta” sul server su cui si lavora e diventa “proprietà” dell’host?
Senza dubbio un’ottima scheda, la potenza di calcolo dei micro Renesas ed in particolare degli RX6 è notevole (in un recente seminario ho visto di persona alcune applicazioni interessanti) ma il punto è:
perche Renesas segue la scia Arduino (come del resto ha fatto Microchip, già criticata a suo tempo) invece di realizzare sistemi propri (innovare) per gli hobbisti/makers?
Tecnicamente anche io sono entusiasta della scheda e vorrei “giocarci” un po’ ma commercialmente non la trovo una grande mossa. Certo potrà avvalersi della compatibilità con le shield ma quale hobbista si avventurerà in Renesas lasciando la semplicità di Arduino? E se avesse bisogno di potenza esiste già la ArduinoDue con ARM…..
e se a un certo punto decidessero di chiudere il sito senza rilasciare un programma per la compilazione off-line?
Ecco, questa è una bella domanda! 😀
Sarebbe una scelta suicida, comunque… Dubito fortemente la farebbero.
Sarebbe una cosa un po’ stupida sia per il produttore sia per la community…
Piuttosto mi chiedo: e con eventuali disservizi come la mettiamo?
Non so, il server va giù…
Se il server va giù è un problema (si spera) temporaneo come anche se non hai una connessione a internet a disposizione ma se l’azienda fallisce???
Non sarebbe male se rilasciassero anche i codici della parte online sotto licenza open source…
Non credo che Renesas arriverà mai a questo (è un’azienda seria e leader nel mercato dei micro), ma ciò non toglie che è un prodotto destinato esclusivamente ad hobbisti e quanto sollevato ne è una ulteriore prova, come la mancanza di un debug. Praticamente come Arduino ed i tantissimi cloni…..
Peccato, con un po’ di coraggio (come dice Banzi) in Renesas avrebberpo potuto investire in qualcosa di diverso, di innovativo (le potenzialità le hanno, ed anche le risorse) una sorta di Arduino del futuro, basta però che non sia più il solito Arduino compatibile!
In effetti sembrerebbe un prodotto non destinato a utilizzi commerciali. Quale azienda rischierebbe scegliendo un prodotto i cui tool di sviluppo sono solo online? Penso nessuna. E se poi decidono di cambiare qualcosa nel compilatore, sarà garantita la compatibilità con il codice già esistente? Se non erro anche NXP ha adottato questa tecnica per qualche suo tool di sviluppo. Tra l’altro Renesas, oltre a dei micro molto performanti (come ad esempio la serie SuperH), fa anche degli ottimi compilatori C/C++.
La scheda mi ha incuriosito quindi ho cercato di capire un pò di più dal punto di vista tecnico e così sono andato sul sito. Volevo vedere la differenza che c’è rispetto ad ARDUINO 2 che è quello che si avvicina di più. Ecco le mie considerazioni in breve.
Il progetto è open source e sul sito si trovano gli schemi.
Il processore non è della famiglia ARM quasi certamente un MIPS visto l’accordo tra la MIPS e la RENESAS. Sul datasheet non ho trovato nessun riferimento a MIPS ma alcune istruzioni assembler mi sembravano simili al PIC32. L’architettura sembra proprio la MIPS. Ammesso che sia così a parità di frequenza questa architettra è più performante. Inoltre questo processore ha una FPU in virgola fissa ad alcune istruzioni dedicate a DSP. Le periferiche sono più o meno le stesse dell’ATMEL di ARDUINO2 con in più il MAC di Eterneth. Secondo me questo è un punto di forza. La scheda ha uno slot per ZIGBEE e per le micro SD.
Conclusione(per farla breve perchè ho analizzato parecchie cose).
La scheda è più performante di almeno il 20% rispetto ad arduino 2 e anche molto di più se si sviluppa un progetto DSP (bisogna vedere se il compilatore ti permette di usare queste istruzioni ;-). Il costo è decisamente inferiore e se si considera che c’è eterneth a bordo siamo al di sotto del 50% (perchè con arduino devi acquistare 2 schede).
Comunque secondo me questo non giustifica l’uso di questa scheda al posto di aduino 2 anche perchè la maggior parte dei progetti di hobbistica non ha bisogno di tutta questa potenza e poi la community di arduino è così estesa che si trova sempre un aiuto. Chi si occupa di fare un minimo di analisi di immagine ha bisogno di almeno 500Mhz per cui questa scheda non serve. ( A quando un arduino con un processore da 1Ghz? ).
Ecco, diciamo che era ad una proposta così che pensavo di arrivare 😀
Mi scuso innanzitutto se non rispondo subito ma sono ancora al mare e quindi il tempo lo passo soprattutto in spiaggia.
Quanto alla compilazione online è ovvio che il codice rimane di proprietà di chi lo ha fatto. Naturalmente valgono le condizioni di Renesas che potrete trovare qui http://www.renesas.com/products/promotion/gr/index.jsp.
Ovviamente se usate questa scheda per scopi commerciali o cose per cui non volete assolutamente che il vostro codice vada in mani altrui, non dovete usare questo sistema, ma il sistema di compilazione ufficiale fornito da Renesas con l’ambiente HEW. Ma se non avete questi problemi allora il sistema online è quanto di più comodo ci sia per lavorare visto che possiamo accedere all’ambiente da qualunque posizione e piattaforma.
Ma fatevi una domanda: che ne è di tutte le email e i documenti che avete sul cloud (gmail, dropbox, facebook, google+, twitter) ? Il problema è lo stesso.
Credo che Renesas abbia fatto una scheda compatibile appunto per contrastare la concorrenza di Arduino soprattutto nel mercato domestico (cioè quello giapponese). Se avesse fatto un sistema diverso gli hobbisti che avevano già Arduino non sarebbero mai passati a Sakura e poi c’è una notevole mole di shields e di codice open source che possono essere utilizzati da questa scheda. Secondo me un punto forte di Sakura è il fatto che può fare di piu di qualunque altra scheda e quindi può fare cose che arduino uno non potrebbe mai fare: ad esempio elaborazione digitale di segnali, o applicazioni come il controllo vettoriale di un motore, applicazioni in cui l’RX63 è perfettamente a suo agio. Può essere comparabile con Arduino due che però non ha l’ethernet nativo, la predisposizione Xbee, e la microSD. Una bella differenza direi.
Come ho già detto non siamo obbligati ad usare il compilatore online. Si può usare anche il compilatore ufficiale Renesas per la serie RX600 che è lo stesso che ho presentato nell’articolo dedicato alla demoboard RX210.
L’idea del compilatore online secondo me è molto buona per il target di persone che si voleva raggiungere cioè gli hobbisti. Si voleva fare qualcosa che fosse molto semplice da utilizzare, senza i problemi di installazione ed uso di uno strumento professionale quale HEW di Renesas.
In fondo l’obbiettivo di Arduino è proprio quello di mettere a disposizione uno strumento semplice da utilizzare ed alla portata di tutti.
Anche NXP con MBED (http://mbed.org/) ha percorso, con successo direi, la stessa strada.
Si si, lo so bene che il problema è lo stesso, figurati.
Volevo solo sapere se anche questo servizio fosse “allineato” alla mentalità corrente 😀
forse la futura Arduino YÚN potrà portare qualche miglioramento in tal senso
http://arduino.cc/en/Main/ArduinoYUN
http://iamdigitalnative.com/news/prototyping/welcome-arduino-yun-the-first-member-of-a-series-of-wifi-products-combining-arduino-with-linux/
Ho letto il thread un po’ di fretta ma mi sono perso come funziona il discorso delle librerie.
Mi pare che la supposta “compatibilità” con Arduino si limiti alla sola piedinatura di espansione mentre dal punto di vista software avendo una CPU differente cambia tutto.
Quindi dato per buono l’IDE cloud mi domando come funzioni la compatibilità per quanto riguarda le librerie, che sono almeno il 50% del valore di uno shield Arduino. Senza software l’hardware è solo potenziale inesprimibile!
E un’altra domanda: posto che gli shield per Arduino sono quasi tutti funzionanti a 5V, quale compatibilità hanno con questa scheda che funziona a 3,3V?
La compatibilità si esprime avendo un strato di software, le librerie appunto, che consentono di interfacciare l’applicativo con l’hardware. In pratica se si crea una serie di funzioni che eseguono le stesse operazioni considerando la differenza dell’hardware, si può portare lo stesso programma su una piattaforma differente. Queste funzioni si chiamano API (Application Program Interface). I programmatori di Sakura hanno ricreato su questa piattaforma le API di Arduino, per cui se hai un programma che funziona su Arduino molto probabilmente riuscirà a funzionare anche su questa. Naturalmente Arduino ha moltissime librerie e non tutte sono state ricreate su Sakura, ma le piu importanti sicuramente.
Per quanto riguarda la compatibilità con le schede a 3.3V è lo stesso problema che accade su Leonardo. L’alimentazione a 5V è comunque presente ma l’I/O è a 3.3V e non è detto che funzioni. Se lo shield è progettato per lavorare anche a 3.3V allora ok.
Stefano, grazie ma pur essendo nuovo qui conosco molto bene come funzionano questi sistemi e Arduino in particolare. Proprio per questo la mia domanda non riguarda le API standard di Arduino (che suppongo siano state portate sull’IDE di Renesas, altrimenti…) quanto le librerie relative agli shield di cui l’hardware della Sakura presuppone la compatibilità (a parte la questione citata della tensione degli I/O).
Il valore di una scheda di questo tipo non sta solo nella sua “potenza teorica” ma ma nel come questa potenza possa essere sfruttata. Quindi se per gli shield Arduino “utili” esistono solo due o tre librerie su Sakura allora non la ritengo una scheda troppo compatibile, almeno per l’hobbista smanettone che vuole mettere insieme ogni giorno componenti diversi senza impazzire.
Probabilmente è invece una piattaforma eccellente per funzioni hardware “standard” (ad es. la Ethernet incorporata, le seriali, SPI, TWI/OWI, A/D e D/A, PWM, ecc.) con applicazioni in cui la velocità e la memoria delle schede Arduino sono limiti restrittivi.
E’ ovvio che non c’è niente di più compatibile di Arduino stesso e intendo Arduino Uno perché già se si va a cercare altre varianti il problema può presentarsi comunque, come per esempio con Leonardo. Il problema è se le librerie degli shield sono state progettate per appoggiarsi alle librerie standard di Arduino o no. Nel caso che tali librerie, per vari motivi utilizzino delle funzionalità hardware presenti solo sull’ATmega328 (il processore utilizzato su Arduino Uno) allora lo shield non funzionerebbe. Ma non funzionerebbe nemmeno su Arduino Leonardo o su Arduino Due.
Sono d’accordo con te che questa scheda non sostituisce l’Arduino classico ma ne è un naturale complemento nella fascia high-end.
L’intero progetto è salvabile su computer ed utilizzabile per una compilazione offline. Non so se ci sono anche i sorgenti delle librerie. Verificherò.
D’accordo. Sarebbe interessante avere un’idea da chi l’ha utilizzata di cosa sia riuscito a fare e con quale livello di soddisfazione in modo da orientare altri interessati alle sue prestazioni ma dubbiosi della proclamata compatibilità.
L’ambiente per la compilazione offline è scaricabile, ma non vengono forniti i codici sorgenti ma soltanto le librerie precompilate.
Stavo pensando di fare un articolo con le istruzioni per installare e compilare in modalità offline, se vi interessa.
scusate la banalita’ della domanda: librerie di arduino se ne trovano a bizzeffe, e occorre “importarle” nel compilatore affinche’ lo sketch sia corretamente compilato.
con il compilatore on-line (che non ho ancora visionato per motivi di tempo) che occorre fare ? uploadare anche le librerie “addizionali” ammesso che ce ne siano o utilizzare solo le “librerie standard” ?
seconda domanda: ma ci sono e quali sono le librerie stanrdard sul compilatore on line ? RTC/dispositivi accessori etc etc
grazie a tutti
Le librerie fornite con Sakura sono:
Naturalmente si trovano anche altre librerie non ufficiali sviluppate dalla community
Grazie Stefano.
Queste librerie che hai elencato hanno funzioni e sintassi conforme a quelle omologhe del set standard di Arduino?
Laddove applicabile, ovviamente…
da quello che ho trovato sul web le librerie usate sono le RXduino
http://translate.google.com/translate?depth=1&hl=en&rurl=translate.google.com&sl=ja&tl=en&u=http://rx.tokudenkairo.co.jp/manual2/index.html
Pin definitions of GR-SAKURA
http://translate.google.com/translate?depth=1&hl=en&rurl=translate.google.com&sl=ja&tl=en&u=http://rx.tokudenkairo.co.jp/manual2/index.html
Function of the library and RXduino
http://translate.google.com/translate?depth=1&hl=en&rurl=translate.google.com&sl=ja&tl=en&u=http://rx.tokudenkairo.co.jp/manual2/index.html
ciao
essendo le pagine in giapponese ho usato il servizio traslate di google
ma ho visto che i link sul forum non vanno aggiungo i link originali
homepage rxduino
http://rx.tokudenkairo.co.jp/manual2/index.html
Pin definitions of GR-SAKURA
http://rx.tokudenkairo.co.jp/manual2/grsakura_pin.html
Function of the library and RXduino
http://rx.tokudenkairo.co.jp/manual2/rxduino_desc.html
ciao
Le librerie si chiamano RXduino.
Il manuale di riferimento per le librerie lo si può scaricare qui.
Vi consiglio di iscrivervi alla community Renesasrulz.