
Grazie a questo progetto, chiunque sarà in grado di leggere in remoto il valore della temperatura ambientale, visualizzandolo comodamente su un qualunque smartphone. Il cuore del progetto è rappresentato dal modulo BL600-SA prodotto da Laird, un dispositivo Bluetooth 4.0 a bassa energia (BLE) racchiuso all’interno di un contenitore impermeabile e in grado di comunicare con uno smartphone Apple recente (dall’iPhone 4S in avanti), o con uno smartphone con sistema operativo Android 4.3 o superiore Non sono richiesti altri componenti attivi, tutto il circuito è contenuto nel modulo, che è programmabile in .. BASIC!
Il Bluetooth mi ha sempre appassionato, e questo termometro rappresenta una buona scusa per utilizzare l’ultima versione dello standard, molto interessante in quanto la corrente richiesta è di gran lunga inferiore rispetto alle versioni precedenti (in particolare la 2.0 e la 1.0), con le quali il modulo BLE non è compatibile.
Bluetooth in BASIC
Il linguaggio di programmazione utilizzato per il modulo BL600-SA (la lettera ‘A’ indica che questa versione include un’antenna integrata) è lo smartBASIC, una versione del noto linguaggio di programmazione orientata agli eventi, in grado di gestire in modo semplice sia i sensori collegati direttamente al modulo che la trasmissione dei valori acquisiti verso un qualunque ricevitore Bluetooth 4.0 (smartphone, tablet, computer, ecc.). E’ quasi un gioco da ragazzi comunicare in modo wireless con piccoli dispositivi portatili, alimentati da pile di tipo AAA o a bottone.
Caratterizzato da un consumo di corrente estremamente contenuto, il modulo BL600-SA è basato sul chipset nRFS1822 prodotto da Nordic Semiconductor e include tutto l’hardware e il software richiesti per la comunicazione radio a 1 Mbps nella banda compresa tra 2,402 e 2,480 GHz.
Le caratteristiche principali del modulo sono le seguenti:
- interfacce UART, I2C, SPI;
- 28 segnali di ingresso/uscita di tipo general purpose (GPIO);
- 6 ingressi analogici (collegati a un ADC a 10-bit);
- assorbimento: 0,4 µA nella modalità deep sleep, 5 µA in modo stand-by, 10 mA durante la trasmissione;
- programmabile in linguaggio smartBASIC;
- dimensioni compatte: 19 x 12,5 x 3 mm;
- massima portata: fino a 20 m.
Impressionante, non vi pare? A tutto questo, aggiungiamo che il prezzo del modulo è molto competitivo. L’immagine seguente mostra il modulo alloggiato sopra l’evaluation board (SDK), anch’essa disponibile da Laird Technologies. Il produttore mira a utilizzare il modulo principalmente in applicazioni di telemetria in campo medico (misurazione della pressione sanguigna, del battito cardiaco, della temperatura corporea, ecc.), ma ovviamente non esistono limiti alle possibili applicazioni.
La prima volta che ho utilizzato il modulo, è bastata un’ora di lavoro per riuscire a trasmettere degli 1 e degli 0 inviati da un iPhone, in modo tale da far lampeggiare un LED. Grazie a questo incoraggiante avvio, ho finito per non contare più il tempo richiesto per completare il progetto del termometro ambientale. La documentazione che accompagna il componente è completa e facilmente comprensibile, così come il sito del produttore [4].
Occorre poi fare qualche considerazione sulla minitaturizzazione del componente: le sue dimensioni sono così ridotte che è molto difficile (anche se non impossibile) saldare il modulo a mano. Fortunatamente, Laird Technologies ha trovato un semplice trucco per tenere accuratamente in posizione il modulo (torneremo su questo punto più avanti, nell’articolo).
Lampeggio LED
Grazie a questo primo, semplice programma per fare lampeggiare un LED, sono stato in grado di verificare che quando il LED è spento il modulo assorbe soltanto 5 µA. Lo stesso principio verrà utilizzato per interrompere la funzionalità Bluetooth ad intervalli di tempo regolari, in modo tale da prolungare la durata delle batterie.
‘//************************************** ‘// Jennifer AUBINAIS 2014 ‘// Test sleep with led ‘//**************************************
ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2644 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.

Ciao Stefano,
ho letto con interesse il tuo articolo, che ho trovato cercando spunti per un progettino che ho in mente.
Vorrei utilizzare il bluetooth per trasmettere un segnale audio, usando componenti riciclati (es. un dispositivo bluetooth integrato in un piccolo speaker) e devo realizzare la parte trasmittente, che deve essere embedded e di piccole dimensioni (devo ancora recuperare il modulo bluetooth trasmittente).
Non ho mai usato il bluetooth, per cui no so quali elementi siano necessari (non voglio usare Arduino, se non ev. per la programmazione) per interfacciare il trasmettitore, se e come è necessario programmarlo e quali funzioni vadano previste. Per le eventuali impostazioni pensavo di usare una app Android (esistente) che permette di creare interfacce interattive con dispositivi bluetooth.
Mi sai dare qualche indicazione? Grazie.
rodolfo
Ciao Rodolfo,
lo streaming audio via Bluetooth avviene tramite il protocollo A2DP (acronimo di Advanced Audio Distribution Profile). Questo protocollo utilizza il codec SBC, il che significa che il segnale audio (stereofonico) viene processato e compresso prima di essere irradiato. Gli smartphone attuali supportano tutti questa funzionalità. Ne consegue che se vuoi realizzare un’applicazione Bluetooth nel campo audio ti devi orientare verso un modulo che supporti l’A2DP. Esistono in commercio alcuni moduli Bluetooth in grado di implementare questo protocollo, grazie all’utilizzo di chip dedicati come il CSR8635 di Qualcomm (la stessa che ha progettato lo SnapDragon, il cuore di molti smartphone attuali). Ci stiamo quindi muovendo nel campo dell’elaborazione spinta del segnale RF, con algoritmi che richiedono l’utilizzo di DSP per essere eseguiti efficacemente in tempo reale. Vediamo comunque qualche soluzione disponibile sul mercato:
1. modulo TE675, disponibile su diverse piattaforme di vendita online, con prezzi anche inferiori a 10 euro. E’ sicuramente un modulo molto interessante. Include un transceiver Bluetooth con antenna integrata nel PCB, chip per la decodifica A2DP, e un amplificatore stereo 2x15W con elevata immunità EMI. Praticamente ti basta collegare l’alimentazione e due altoparlanti e hai un sistema di casse Bluetooth completo;
2. Sparkfun RN52 audio module. Bel modulino, disponibile sia standalone, che integrato su una breadboard di sviluppo. Sparkfun ha il vantaggio di offrire garanzia e assistenza, oltre a numerosi tutorial, schemi elettrici, e codice di esempio disponibili sul proprio sito. Ovviamente il prezzo lievita rispetto alla soluzione 1.
Spero con questo di aver risposto ai tuoi quesiti. Certo, l’applicazione audio non è certo la più semplice se si vuole partire a sperimentare con il Bluetooth, e impone l’uso di chip dedicati.
Se però ti interessa cominciare a sperimentare con il Bluetooth, puoi orientarti sui moduli più semplici, in grado di supportare il profilo SPP (in pratica una porta seriale). Tramite app per Android o IOS dispobnibili sui relativi store, puoi in poco tempo realizzare un sistema che controlla da remoto relè, attuatori, ecc. (progetti di questo tipo sono stati pubblicati anche su EOS).
Un ricevitore bluetooth ce l’ho già, preso da un piccolo speaker mono. La potenza è bassa, forse 5W, ed è monofonico. Supporta un ingresso AUX , alimentazione USB esterna per ricarica batteria (4,2V) e presa USB per memoria esterna oltre a mini SD. Per quello che vorrei fare è sufficiente, devo solo realizzare la parte trasmittente, che deve trasmettere un segnale da uno strumento musicale. Poi vorrei controllare da una app, es. per agire sul volume.
Grazie per i suggerimenti. ciao
Ottimo. Il modulo di Sparkfun che ti ho menzionato dovrebbe funzionare anche come trasmettitore, Bisognerebbe verificare sul loro sito che tipo di ingresso accetta, ed eventualmente se esistono moduli analoghi, magari più economici. Inoltre, molti moduli audio Bluetooth supportano anche il protocollo AVRCP, che permette di controllarli da remoto (volume, toni, ecc.) tramite telecomando.