Archivi categoria: Sun SPOT

Java ME SDK per Mac OS X (early access)

Grande notizia: e’ finalmente disponibile il Java ME SDK per Mac OS X.

Tempismo perfetto, cara Sun, ora che tutti gli sviluppatori che usano Mac sono gia’ da tempo passati a iPhone o Android. Cio’ che mi chiedo, pero’, e’ perche’ si sia fatta ora una cosa che poteva essere fatta anni fa, visto che Java c’e’ da sempre su Mac OS X. Non avendolo fatto finora, a che pro spendere energie per farlo proprio adesso che Java ME non interessa piu’ nessuno? Sara’ il cavallo di troia per il futuro netbook basato su JME? Secondo me non ci crede neppure Oracle!

L’unica possibilita’ di recupero per JME e’ la Internet of Things: Sun SPOT, Motorola G24 e cosi’ via. Nessun tecnologia puo’ vantare la potenza di JME e dell’enorme collezione di librerie ed esperienze maturate negli anni su device con prestazioni limitate. IoT e’ l’unico futuro possibile per JME.

Oggi, contrastare iPhone e Android e’ del tutto inutile.

Web of Things Manifesto


Alcune settimane fa, Vlad Trifa e Dominique Guinard, curatori del blog Web Of Things, hanno pubblicato il Web of Things Manifesto, che potete leggere qui sotto:

Web of Things whitepaper v1

Questo documento affronta l’incontro tra la Internet of Things (essenzialmente la comunicazione machine-to-machine di sistemi embedded sulla rete Internet) e il Web 2.0, ovvero la definizione di un paradigma che veda la partecipazione degli utenti (con i propri device) in una community che promuova il riuso delle componenti fisiche e la composizione di esse (o meglio, dei dati da esse prodotte) in nuove applicazioni (proprio come avviene sui mash-up dei siti web). Vlad e Dominique non si soffermano su un particolare protocollo o tecnologica, ma piuttosto su come questo concetto possa imprimere una nuova evoluzione al web. Il web delle cose, appunto.

Alcune delle idee di base del Web of Things Manifesto (il fatto che tutti i progetti ripartano “da zero” sviluppando parti a basso livello molto simili, la necessita’ di fornire strumenti di composizione semplici) sono pressoché identiche a quelle che hanno portato alla definizione di QuadraSpace e, in questo senso, questo progetto terrà in grande considerazione le idee e le metodologie che scaturiranno dall’evoluzione dell’ottima iniziativa di Vlad e Dominique.

QuadraSpace: aggiornamento


In attesa di avere un po’ di tempo per descrivere le caratteristiche piu’ importanti del protocollo QuadraSpace, ecco qualche aggiornamento sul progetto:

That’s all, per ora.

QuadraSpace

Le reti wireless di sensori (Wireless Sensor Networks, WSN) e piu’ in generale l’uso di sensori su dispositivi quali telefoni cellulari, console di gioco e prodotti di domotica e’ sempre piu’ oggetto di studio e sperimentazione, sia in ambito industriale che hobbistico/semi-professionale. Prodotti quali SunSPOT o Arduno (opportunamente carrozzato con moduli di comunicazione e sensori) hanno permesso l’accesso a costi contenuti a questo tipo di tecnologia, consentendo ad una piu’ vasta comunita’ di ricercatori e appassionati di sperimentare idee innovative.

Accanto al potenziamento dell’hardware e al perfezionamento del software che equipaggia questi dispositivi, vi e’ un intenso lavoro di studio e progettazione di protocolli di comunicazione e infrastrutture di rete che consentano di connettere la Internet of Things al resto della Rete. In questo senso, iniziative come Web Of Things mirano alla definizione dei paradigmi che stanno alla base di questa evoluzione di Internet verso gli oggetti fisici.

Lavorando (giocando?) da un po’ di tempo con sensori e moduletti vari, ho iniziato tempo fa a buttare giu’ qualche idea per un protocollo che consentisse la modellazione dei mote e relativi sensori, degli eventi e dei trigger in grado di scatenare azioni automaticamente al verificarsi di certe condizioni. E’ nato cosi’ QuadraSpace, un protocollo HTTP RESTful basato su XML e un insieme di servizi (per ora in fase di definizione) che consentono (consentiranno) di integrare rapidamente singoli sensori o reti di sensori all’interno di applicazioni web e SOA. QuadraSpace nasce come progetto open source e, non appena il protocollo sara’ definito, sara’ aperto alla collaborazione di chiunque sia interessato all’argomento e voglia dare una mano.

Per una descrizione del protocollo e delle idee alla base del progetto vi segnalo la presentazione qui sotto:

Chi fosse interessato a partecipare puo’ scrivere a: info AT quadraspace.org. Aggiornamenti saranno pubblicati su http://www.quadraspace.org.

Sun Technology Day a Cagliari


Dopo Roma, Napoli e Pisa, arriva anche sull’Isola il Sun Technology Day, un evento seminariale gratuito organizzato da Sun Microsystems e le università italiane. Grazie alla collaborazione e all’ospitalità dell’Università degli Studi di Cagliari, venerdi’ 13 giugno si svolgerà al Dipartimento di Ingegneria Elettrica ed Elettronica un pomeriggio di seminari su Java, Solaris, MySQL e Sun SPOT.

l0_techday.jpg

Questa l’agenda:

15:00 Sun Academic Initiative: welcome Università di Cagliari
15:15 Qualità del SW – jMetrics: come controllare l’andamento di un progetto SW con misure oggettive (Giulio Concas DIEE/FlossLab)
16:00 Solaris 10: Solaris, OpenSolaris e Progetto Indiana
Paghi zero, prendi 2: ZFS filesystem e volume manager
Dimostrazione interattiva: clonazione Solaris Containers e ZFS tramite chiavette USB
Domenico Minchella, Sun Solaris Ambassador
16:45 Sun SPOT (Small Programmable Object Technology)
Come si utilizzano, Concorso Sun SPOTs Projects
Stefano Sanna, JUG Sardegna
17:30 Java e Spring: tutte le novità per il 2008
Fabrizio Gianneschi Massimiliano Dessì, JUG Sardegna
18:15 Programmazione creativa con MySQL: come programmare il database indipendentemente dal linguaggio di programmazione scelto
Giuseppe Maxia, MySQL Community Leader
19:00 Ask the expert bar

Pagina ufficiale dell’evento:

http://it.sun.com/sunnews/events/2008/mar/techday/cagliari.jsp

da cui è possibile scaricare l’agenda del pomeriggio.

Arduino: interaction design e non solo


È un prodotto orgogliosamente MADE IN ITALY, eppure sembra che in Italia sia poco conosciuto (così dice Google…). Sto parlando di Arduino, una piattaforma (hardware + software) totalmente open source per la realizzazione di prototipi di Interaction Design.

arduino_on_mac_small.jpg

Arduino è stato ideato e realizzato da Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino e David A. Mellis. Progettato attorno ad un microcontrollore Atmel ATmega168, dispone di 14 porte I/O digitali, 6 ingressi analogici, una porta seriale a livello TTL ed è programmabile attraverso una porta USB che provvede anche ad alimentarne la scheda quando connessa al computer (senza la necessità, dunque, di disporre di un programmatore per MCU ATmega). Il software per il piccolo Arduino può contare su appena 16KB di Flash (anzi, 14 per la precisione) per i "programmi utente", 1KB di RAM e ben 512B (si cinquecentododici byte) di persistenza per i dati. Malgrado l’aspetto lillipuziano, Arduino è estremamente flessibile e la facilità di utilizzo lo rende lo strumento ideale per i laboratori di Interaction Design, in cui gli allievi non devono possedere specifiche competenze di programmazione o componentistica elettronica, ma sono totalmente orientati alla trasformazione di scenari di interazione in prototipi funzionanti. In tal senso, dunque, l’importante è avere uno strumento che traduca le idee in realtà! Arduino fa proprio al caso!

ardino_usb_small.jpg

Arduino deriva dai progetti Wiring e Processing, dai quali eredita rispettivamente parte del linguaggio di programmazione (simile al C) e l’ambiente di sviluppo.

Venduto a poche decine di euro, consente di realizzare in modulo facile ed economico prototipi di oggetti interattivi, in grado di acquisire dati attravero i più disparati sensori (accelerometri, fotoresistenze, sensori di temperatura, GPS, igrometri…) e comandare dispositivi quali motori (tradizionali, servo e step), display LCD o buzzer. La Rete è di esempi di applicazioni, sarebbe impossibile elencarli tutti qui! Apposite schede di espansione consentono l’interfacciamento ai moduli XBee Maxstream (ora Digi) per la rete ZigBee.

arduino_xbee_small.jpg

La variante Bluetooth sostituisce la porta USB basata sul driver FTDI con un modulo RFCOMM server che consente sia la programmazione remota che la connessione wireless alla scheda.

arduino_bluetooth_small.jpg

Quasi spontaneo pensare fare un paragone con i Sun SPOT, ma sarebbe totalmente fuori luogo.

arduino_sunspot_small.jpg

La complessità dei Sun SPOT li rende degli oggetti quasi insuperabili e adatti a qualsiasi contesto applicativo, anche computazionalmente complesso. Lo stesso dicasi per le capacità di interfacciamento con periferiche. D’altro canto, però Arduino è estremamente economico e consente sperimentazione a bassissimo costo (a patto, ovviamente, di non voler pretendere troppo dal suo kilobyte di RAM!).

Pù che guardarli sotto l’ottica della competizione, sarebbe interessante, invece, valutarne una possibile interoperabilità, utilizzando i Sun SPOT per i compiti più gravosi dal punto di vista della logica e dell’elaborazione dei dati rilevati dai sensori, delegando ad Arduino "il lavoro sporco di interfacciamento con questi ultimi", grazie anche al fatto che, essendo così economico, può essere utilizzato a cuor leggero anche laddove c’è il rischio di un crash hardware (se si rompesse un Sun SPOT… sarebbero dolori!).

Per chi volesse saperne di più:

http://www.arduino.cc

Finalmente Sun SPOT per l’Europa!!!


È finalmente possibile acquistare i Sun SPOT anche dall’Europa direttamente dal sito ufficiale:

http://www.sunspotworld.com/products/

Sul sito è specificato "we may only accept Commercial Orders from the United States and the European Union", dunque l’acquisto dovrebbe essere possibile solo ai titolari di partita IVA. Il prezzo è "importante": 627 euro più tasse e spese di spedizione (dunque potrebbe toccare gli 800 euro complessivi). Non pochissimo, ma sicuramente è la piattaforma più avanzata e più flessibile per la realizzazione di reti di sensori.