ArduinoDue, Leonardo ed il Wifi con l'AVR32! Grandi novità in casa Arduino presentate al MakerFaire2011 di New York e visto l'interesse per ArduinoDue abbiamo sottotitolato il discorso di Massimo Banzi. Ecco la prima parte!
Dunque...per me la cosa più importante oggi
è che Arduino abbia finalmente raggiunto 1.0:
eccoci infatti all'ultima diapositiva!
Ehm...quindi...quindi cos'è questo 1.0?
Dunque, fondamentalmete abbiamo preso l'Arduino su cui stavamo lavorando ormai da qualche anno ed abbiamo deciso di renderlo un po' più stabile
Quindi se state scrivendo un libro su Arduino non sarà obsoleto dopo solo una settimana
o se state insegnando a qualcuno Arduino non dovrete preoccuparvi che i vostri esempi non siano più adeguati perchè nel frattempo abbiamo cambiato le cose!
Quindi abbiamo deciso di fare ancora qualche modifica
e poi di fermarci per un bel po':
per cui c'è ancora qualcuno che ci sta lavorando... più o meno
apparentemente..vero David? Annuisci per piacere...ok ehm...quindi, no non più!
Quindi se andate a questo indirizzo potrete facilmente trovare la RC (release candidate) che abbiamo pubblicato proprio ieri sera...
...la release candidate 1 per Arduino
...ed ora ci concederemo un mese
principalmente per lavorare con la community e testarlo per constatare se tutto è come nell'Arduino a cui siete abituati.
Ed anche per dare tempo a coloro che sviluppano le librerie di aggiornarle alla versione 1.0 in modo che possiamo perseguire un sistema integrato che funzioni adeguatamente!
E' stato davvero faticoso:
un lavoro se non sbaglio iniziato a marzo 2010 quando abbiamo invitato tanta gente
a venire a New York a discutere su cosa avremmo dovuto fare
per standardizzare Arduino ehm...Michael Margolis...
era lì con noi ed abbiamo ricevuto anche l'aiuto degli sviluppatori strada facendo
elencati in Arduino che sono stati una risorsa fondamentale!
...Sono smemorato come un pesce rosso e quindi non ricordo precisamente tutti i nomi
ehm... Philip Lindsay
sei lì.. lui ci ha aiutato tantissimo sulla mailing list
Michael...anche lui... un sacco di altre persone di cui conosco solo il nickname
sul forum:
sapete c'erano 10.000 messaggi sul forum firmati tutti da "GroundbMiike"
che poi stamattina l'ho trovato..ci siamo fatti una foto... gli ho dato una maglietta ed è scoccato l'amore!!!!
Quindi non so proprio come avremo fatto senza una comunità così straordinaria
come quella con cui abbiamo lavorato!
E' stato essenziale!
...E tutte le persone con progetti folli che ci hanno obbligato ad impegnarci tantissimo: perchè quando leggi su un blog
che qualcuno ha fatto un satellite e lo ha mandato nello spazio con Arduino
per il primo minuto sei felice per il secondo ti viene una fifa blu
chiedendoti: "Esploderà?" e poi pensi ad un debug non solo per i software!
Quindi avremo un core 1.0 tra poco, abbiamo una specie di interfaccia aggiormata
per l' IDE quello orginale veniva dall'interfaccia utilizzata nel processing
che aveva un bottone di arresto che non aveva nessuna funzione
e confondeva i principianti mentre ora per l'interfaccia
potete vedere il lavoro di Nicholas Zambetti
un nostro caro amico che ci ha aiutati con
la progettazione di Arduino proprio all'inizio quando eravamo ad Ivrea
e potrete apprezzare anche il lavoro di Todo Giorgio Livero
il designer grafico che ha progettato il packaging ed il resto
quindi entro poche settimane vedrete il packaging al dettaglio
su cui stiamo lavorando:
stupendo!
Tutte queste persone ci hanno aiutati con l'interfaccia...Christian Mayer...
sei da qualche parte laggiù con una video camera?..
E' uno dei nostri sviluppatori che ha lavorato su come aggiungere un sacco di funzionalità alla IDE ed al core, uno sviluppatore straordinario
che ha saputo fare sviluppo back e PHP ed nell'ora successiva per riparare un pezzo del core in C++ e prima di cena l'IDE in Java veramente una persona in grado di fare di tutto!
Quindi ora, avendo un nuovo core ed un nuovo IDE abbiamo pensato di dover fare un altro passo avanti nel layout della scheda per renderla più flessibile
prima di avere la versione definitiva.
Quindi ho cercato di incontrare Gianluca l'uomo più difficile da raggiungere in tutta l'Europa meridionale per cui spesso ho dovuto viaggiare molto in macchina
ed ho potuto parlare con lui...così non sarebbe potuto scappare!
Proprio in uno di questi lunghi viaggi abbiamo pensato
se era il caso di fissare o no la shape (il pinout), niente da fare...
comunque il problema rimaneva mio...
e quindi mi sono scusato:
"Ho sbagliato io,sette anni fa"
"E' tutta colpa mia..."
"Si si.."
"Sparami!"....magari no!
E alla fine abbiamo aggiunto 2 pin alla configurazione di Arduino cosa che vedrete in 4 o 5 settimane con il nuovo Arduino 1 e MEGA release 3 in cui abbiamo aggiunto due altri PIN come potete vedere e messo dei TWI bus mi piacerebbe dire I2C
ma Philips potrebbe non esserne contenta
quindi dico TWI e potete aspettarvi di trovare i bus sempre nello stesso posto
perchè nelle diverse schede Arduino è in posizione diversa
ed è difficle realizzare un modulo-shield che funziona su schede multiple
ma diventa più facile avere shield intelligenti attraverso processori sulla scheda
che possono comunicare attraverso protocolli più..
...diciamo...alti!
Poi abbiamo anche lavorato in altri ambiti, chiedendoci:
ci sono altri microcontrollori che possiamo utilizzare per ottenere tensioni diverse?
Non tutti funzionano a 5 V: è difficile trovare microprocessori ad alta potenza
che funzionano a 5V forse solo uno della Atmel sulll'AVR32 ma non è facile...
quindi come assicurarsi che quando si inserisce uno shield può veramente reggere?
Come fare?
Esiste un piccolo PIN che dice allo shiled: "ok la scheda madre a cui sei collegato sta funzionando a diciamo 3,3 V" quindi quel PIN è fondamentale
e gli shield d'ora in poi funzioneranno anche con altre configurazioni
e poi c'è anche un pin segreto...ma non posso dirvi niente!
Scherzi a parte...
c'è un altro PIN... ma non fa nulla...
e l'abbiamo aggiunto perchè abbiamo pensato:
"Ok, non cambiamo il connettore un'altra volta..."
per cui abbiamo introdotto questo pin così se avremo una nuova idea in futuro
dovremo solo fare i collegamenti: quindi al momento è stato messo lì
per sviluppare la nostra immaginazione e trovare nuovi usi per questo PIN!
Ed ecco l'Arduino UNO R3:
qui non abbiamo nessun'altra novità se non il piccolo diodo di protezione
aggiunto al receptor key che potrebbe essere d'aiuto quando
alcune schede Arduino hanno problemi nell'accensione (switch on)
a volte non si avvia bene il reset forse a causa della configurazione strana che ha
con pull up in pin particolari che necessitano di tool particolari...
un po' complicato...vabbè...comunque
questo è il nuovo uscito quindi non potevamo cambiare il colore del box
per cui abbiamo cominciato a mettere delle etichette sui pin
posteriori (back) perchè..
...perchè no?
...Ora passiamo ad Arduino Mega R3:
nessun cambiamento importante...
Quindi un nuovo prodotto di cui voglio parlarvi è
l'Arduino Leonardo:
abbiamo aggiunto qui il prezzo consigliato diciamo..
perchè qualcuno poteva chiederci cosa fosse la scritta in basso.
Qui fondamentalmente vedete tutti i connettori montati
...una specie di Arduino low-cost
perchè tutte le parti potete montarle da soli riducendo i costi ulteriormente.
Fondamentalmente quando si usa questo MCU l'ATMega 32U4 che ha una USB sulla scheda
avete un chip in meno sulla scheda diventando più semplice e meno costoso.
L'altra cosa importante è che er questo motivo, abbiamo lavorato su un core
specifico per questa scheda in grado di funzionare come un mouse
o una tastiera o come una interfaccia MIDI: tutto quello che potete immaginare
possa rappresentare una periferica USB
...abbiamo lavorato a questo prodotto con persone di grande talento
un uomo straordinario che si chiama Peter Barret dalla California
che ha scritto per noi il core ottimizzandolo ed ...anche il meraviglioso Zac Eveland
al momento addetto al tavolo Arduino che ha lavorato su Arduino 1 l'anno scorso...
autandoci in tutto il processo fino allo stadio finale,
che sarà disponibile, diciamo, entro un mese a partire da ora perchè dobbiamo rendere il core ancora più stabile e quindi la release conterrà il software adatto...
Ne abbiamo qualcuno con noi e lo distribuiremo:
abbiamo un paio di persone nel team di sviluppo
che ci auteranno a testarlo e vi daremo allora un programma più dettagliato
Finalmente siamo quindi nelle ultime fasi della produzione di Arduino
WIFI shield:
molto lavoro era stato fatto dalla community degli sviluppatori in particolare da Adrian McEwen
Giusto?? Bene...grazie
ma anche grazie a Christian ed anche David
Molto lavoro è stato fatto da 2 sviluppatori italiani:
Domenico e Claudio
...abbiamo lavorato sulla libreria su una nuova libreria internet
che semplifica la creazione di altre librerie in rete (network)
che condividono delle classi in comune
che ora sono nel core e che constano di un indirizzo IP
e di un server ed un client ora in una classe più generalizzata
Quindi se avete degli esempi funzionanti sull'ethernet Arduino attuale
con poche modifiche andrà bene anche per il WI-FI shield
Ma sarebbe possibile anche creare una libreria per il proprio shield
cosa che richiede comunque poche modifiche!
Vi ho dato un' anticipazione su quest'ultimo lavoro
all'ultimo incontro MakerFaire in California: fondamentalmente abbiamo constatato che questi moduli sul mercato sono wifi verso seriali e questo non va bene perchè non possiamo hackerarli ed è noioso non poterlo fare per cui ciao-ciao soluzioni commerciali!
Quindi lavorandoci abbiamo usato questo AVR32 MCU a 32 bit della Atmel
in cui tutto il TCP/IP stack è lì riuscendo a comunicare con questo modulo dalle dimensioni ridottissime che vedete nell'angolo in alto a destra dell'azienda svedese "H&D wireless"... la cosa interessante è che
ehm... scusate... sentivo un telefono!
Dicevamo: essendo disponibili i source-code potete hackerare i TCP/IP o aggiungere i vostri protocolli!
Praticamente un sogno in cui potete aggiungerli, creare una chat Arduino
su Jabber o Google-talk in maniera semplicissima quindi diciamo che Arduino sta diventando sempre di più una specie di linguaggio di scrittura per hardware: ci sono questi processori di alto livello che comunicano con Arduino ed in Arduino scrivete la logica delle applicazioni.
Tutto questo sarà disponibile entro poche settimane ora che le libreire ed il resto sono definiti e ci approssimiamo all'ultima fase di produzione.
C'è anche altro che abbiamo lanciato durante l'estate ma richiede ancora tanto lavoro
che è l'Arduino ADK questo MEGA con un chip aggiunto che lo rende paragonabile ad un host USB e che è stato progettato originariamente da Google per creare accessori
per i cellulari android quindi abbiamo preso il loro progetto e lo abbiamo adattato alla filosofia Arduino e poi abbiamo deciso di rendere ancora più semplice
la creazione di accessori quindi se siete degli sviluppatori software
e non sapete nulla di elettronica potete acquistare questo kit questo modulo che abbiamo creato che potete inserire in Arduino quindi con questo kit dal costo di poco più di $ 79,00 non è necessario conosciate l'elettronica fate gli inserimenti in entrata ed uscita e scrivete il codice c'è una sezione del lab del nostro sito:
su cui dobbiamo ancora lavorare molto lo sappiamo!
Quindi Philip ti invieremo i codici sorgente della librerie
ma stiamo lavorando anche su come possiate sviluppare le applicazioni android con un accessorio utlizzando il processing quindi non dovete utilizzare Eclipse per cui in Arduino semplicemente inserite questi moduli:
così diventa veramente facile fare un prototipo di un accessorio
...CONTINUA...DOMANI
VIDEO realizzato da Davide Gomba & Cristian Maglie di Arduino
Iscriviti al nostro canale YouTube e vota i VIDEO migliori 
fonte [Arduino Blog]

Arduino, come non essere fieri di essere italiani con un progetto così interessante.
Secondo me dovrebbero staccarsi dal linguaggio di programmazione Processing, visto che come linguaggio non è chissà ché, dovrebbero piuttosto puntare ad un linguaggio come il C che trovo molto più potente, non è neanche tanto difficile da imparare, comunque sia togliendo il discorso del linguaggio con cui programmare Arduino rimane sempre un ottimo prodotto open source, pian piano questo team di sviluppatori ha creato in poco tempo un prodotto all’avanguardia, semplice da usare anche da chi di elettronica non ne capisce assolutamente nulla, un piccolo punto contro e che mi sembra che stanno facendo un po’ come le case che producono le console tipo xbox, play station ecc.., ogni giorno, per modo di dire, ne esce una nuova e devi buttare il vecchio per far spazio al nuovo, nel caso di Arduino io credo che si debba buttare le librerie e tutte le conoscenze e libri scritti per fare spazio ad altre librerie e via dicendo adattate al nuovo processore, in tutta sincerità non vedo l’ora che metteranno come processore l’ARM 9 per il Kernel linux, però mi danno l’impressione che corrano troppo in fretta per concorrenza e fama, e quello che vi posso dire e che a voi del team Arduino non vi fanno concorrenza perché siete i migliori, questo ovviamente dal mio punto di vista.
Devo dire che una volta tanto si puo’ essere orgogliosi di essere italiani sentendo parlare Banzi ad una convention a New York.
Con le nuove o migliorate funzionalita’ di ArduinoDUE (mi riferisco in particolare ad un potente e veloce processore ARM Cortex-M3, all’USB integrato e al WIFI) e la intenzione di mettere una baseline al core con la versione 1.0 per dare piu’ stabilita’ al tutto, ArduinoDue diventa secondo me anche un prodotto professionale a basso costo ed alte prestazioni.
Trovo inoltre una scelta lungimirante che aprira’ di molto il mercato e la sperimentazione, la possibilita’ di creare e integrare applicazioni Android in maniera semplificata attraverso l’Arduino ADK.
In questo modo senza usare troppo codice, ma inserendo solo i moduli necessari si potranno realizzare interessanti e utili accessori Android.
Il suo discorso mi ha ricordato Linus Torvalds quando andava in giro per il mondo a parlare di quel nuovo sistema operativo chiamato Linux che sta ormai alla pari di Microsoft e di altri grandi produttori di SO
Complimenti ancora una volta a Massimo Banzi e a tutto il suo team.
Esordisco anche io col dire che è proprio bello sentir parlare un italiano in una convention così importante…e sopratutto negli stati uniti poi!! anche se comunque… non buttiamola troppo giù l’italia… ci sono ben altri motivi che ci dovrebbero far sentire orgogliosi di essere italiani..uno che mi viene in mente subito ora è per esempio Maurizio Pollini.. Tornando ad Arduino la cosa che mi fa enormemente piacere e che i primi minuti Massimo li ha passati a ringraziare la community ed a sottolineare l’importanza che essa ha avuto nello sviluppo del progetto… cosa sicuramente non nuova al giorno d’oggi ma da cui bisogna trarre grande esempio ..l’unione fa la forza..!
Inoltre, mi piace la visione in cui stanno progettando Arduino, ossia quando parla del fatto che Arduino stia diventando un linguaggio per la configurazione Hardware(il che mi ricorda un pò la definizione di VHDL ma c’entra poco), ma fatta in maniera estremamente semplice ed efficacie come solo questa piattoforma può fare…
Quindi, bando alle ciance…c’e da provare ed organizzare un bel progetto basato su A2 ..quindi è vero uscira a fine anno però teniamo già le nostre menti accese e proiettate per una prossima applicazione da realizzare…magari con la forza della nostra community riusciamo a realizzare anche noi un bel progetto, io ci credo 😉 …!
C’è da dire che l’idea di Arduino è tanto semplice quanto geniale! Infatti se andiamo ad analizzare nel dettaglio l’hardware non è molto complicato o ingegnoso, anzi, direi che è proprio l’emblema della semplicità: un microcontrollore e una serie di connessioni per dare la possibilità agli “smanettoni” di elettronica di collegarsi con altri dispositivi.
Il punto di forza di Arduino e quindi la punta di diamante che l’ha reso famoso è l’idea di coinvolgere quanti più sviluppatori possibili per la sua realizzazione e quindi per il suo sviluppo hardware e software. La miriade di librerie che girano e che possono essere implementate su Arduino dimostrano come la fantasia dei progettisti si sia sbizzarrita e come molte persone si sono messe all’opera per realizzare forse un’altro grande progetto open source, sia hardware che software!
La cosa che mi meraviglia ogni volta è come tante persone si sono messe al servizio (si, credo che di servizio si può parlare) della comunità Arduino per far diffondere questo dispositivo che apparentemente (sottolineo apparentemente, altrimenti rischio il linciaggio 🙂 ) non ha nulla di speciale se non il fatto che ha aperto le sue porte al mondo dell’ open source!
Ora che è sono state realizzate altre tre schede Arduino, direi proprio che questa idea sta prendendo il volo: se prima sono riusciti anche a mandare un satellite sulla luna, ora non oso immaginare cosa possono fare con una scheda che ha montata a bordo un ARM 🙂
è stupendo! un dispositivo open souce con cui ci si può fare praticamente tutto! Da mouse o tastiere ad applicazioni in ambito casalingo!
Straordinario è Arduino Leonardo in cui si può gestire un protocollo di comunicazione proprio, a quanto ho capito, unendo anche un basso costo rendendolo accessibile anche a chi non può spendere molti soldi!
Altra bellissima innovazione è arduino WiFi, con cui ci si possono fare diverse comunicazioni tramite il router di casa, e mantenendo il codice sorgente originale per LAN modificandogli solo alcuni parametri, quindi cambiando minimamente ciò che già gli sviluppatori hanno imparato.
Un bell’utilizzo del secret pin, secondo me, potrebbe essere una comunicazione tra più arduino in cascata, permettendogli di lavorare in simultanea o trasferendo informazioni da una scheda all’altra! Sarebbe molto utile nei casi di apparati industriali dove è necessario controllare molti segnali!
Come al solito comunque Arduino riesce sempre a stupire gli amanti dell’informatica e dell’elettronica, specialmente con la creazione del kit di sviluppo con cui si possono creare dei segnali per il test della scheda e del firmware che si crea, senza i bisogno di collegare tutti i segnali originali. Immaginate quando bisogna cambiare il firmware ad un arduino che controlla un alto numero di segnali, effettuare delle prove sarà molto difficile!
Un passaggio di Banzi che mi è molto piaciuto è stato quando ha fatto la battuta su Philips (ora NXP) per quanto riguarda i diritti sul nome I2C.
Mi sembra assurdo che in un mondo che va verso l’open source, nell’era di accesi dibattiti sul copyleft e cc, ancora bisogna fare attenzione ad un bus… a come chiamarlo.
Sinceramente non so chi dei due abbia ragione, Atmel con il TWI o Philips con I2C ma trovo assurdo che due bus praticamente identici si debbano chiamare con nomi diversi.
Non credo che possano staccarsi facilmente dall’attuale linguaggio di programmazione, dato che la scheda è stata progettata anche per i principianti, che non conoscono bene linguaggi di programmazione ad alto livello come il C