Texas Intruments CC2650 Bluetooth Sensor Tag con Raspberry Pi

Mi è capitato di imbattermi in questo scrigno misterioso con un involucro di gomma ricco di sensori interessanti e capace di comunicare via bluetooth: il Sensor Tag CC2650 della Texas Instruments.

Ciò che ha immediatamente creato in me l’impulso ad acquistarlo e provarlo è la possibilità di disporlo ovunque e comunicare senza dover cablare nulla. Posso disporlo sul casco della bici, sulla mia chitarra, addosso e manterere la libertà di ogni movimento mentre ne raccolgo i dati.

Vediamo di raccontarvi l’esperienza di configurazione di una Raspberry PI 2 per comunicare, via bluetooth con il TI CC2650. Il componente CC2650 è un LE Device, cioè un Bluetooth Low Energy device.

Prima di tutto bisogna procurarsi ed innestare il Dongle Bluetooth su una porta USB della Raspberry PI.

A questo punto bisogna installare il software necessario per farlo funzionare correttamente. Abbiamo seguito uno specifico tutorial.

Nel mio caso specifico la mia Raspberry PI riusciva a vedere il CC2650, ma non riusciva a connettersi. Ho capito dopo molte ricerche che andava eseguito il seguente comando, per attivare la modalità di lettura Low Energy:

> sudo btmgmt le on

La direzione interessante che ho voluto seguire è stata quella di utilizzare Node.js come strumento di programmazione del software necessario al suo utilizzo. Ho trovato in rete una libreria molto interessante per interagire con il CC2650: Node Sensor Tag

Nella installazione ho un pò fatto a pugni con la mia versione obsoleta di Node.js, che ho aggiornato, ma che mi ha portato di conseguenza ad aggiornare anche g++ e gcc. Imprecazioni a parte ne sono venuto fuori.

All’avvio dell’applicazione di prova mi sono alzato in piedi in ammirazione verso la tecnologia e le sue potenzialità.

A cosa applicare questa architettura? Mi sono fatto varie idee, ho immaginato vari scenari. Si tratta di fatto di un oggetto che può essere posizionato in vari contesti: oggetti in movimento, indossabili, automobili. Oppure anche in contesti stanziali. A qualche metro di distanza deve essere posizionato un dispositivo in grado di leggerlo, tramite Bluetooth, e che possa interagire con esso con una logica che abbia una certa utilità e valore.

Io ho provato ad applicarla su un casco, ho letto dalla Raspberry PI 2 i valori di inclinazione e rotazione e pilotato in tempo reale un piccolo braccio meccanico fatto con MakerBeam. Non male, i dati, registrati in cloud, possono poi essere replicati a varie velocità. Le potenzialità sono infinite e ne parleremo in IoT Solutions.