[HOWTO] Guida (più o meno) completa all'utilizzo di Moduli Bluetooth

Ciao a tutti,
ultimamente fioccano i thread sui modulini bluetooth da pochi eur, che io per primo ho sempre proposto come alternativa valida ed economica.
Ho quindi pensato di scrivere una linea guida all'utilizzo di questi moduli, strutturandola in questo modo:

  • connessione HW (parte 1)
    ovvero :

  • breve descrizione dei moduli;

  • quali sono i pin che ci interessanto (alimentazione, configurazione, comunicazione);

  • come attaccarli alla nostra Arduino;

Aggiungo qui prima della publicazione della revisione, indirizzo del repository dove trovare breakout board per questi modulini:

  • programmazione AT (parte 2)
    ovvero:

  • distinguere i vari tipi di moduli;

  • come programmarli con Arduino, con adattatore usb2serial (o con Arduino usato come adattatore seriale), sia da linux che da windows;

  • lato software si spazia da putty (widows e linux) / gtkterm (linux) / CLI (linux);

  • comandi AT disponibili (subset e qualche esempio);

  • connessione seriale via BT (parte 3)
    ovvero:

  • ricerca, pairing e connessione, sia da linux che da windows;

  • lato software si spazia da interfaccia grafica (widows e linux) a CLI (linux);

  • test di connettività seriale via BT (tra macchina linux e windows ]:));

seguiranno altre 2 parti, relative a:

Naturalmente sono ben accette osservazioni e considerazioni su quanto scritto!

UPDATE #1
qui: controllare accensione led via bluetooth - #10 by pictux - Generale - Arduino Forum
primo abbozzo di tutorial (solo immagini e codice Arduino) per la creazione della prima App per Android con AppInventor

UPDATE #2
dietro imbeccata di cece99, primi esperimenti con antenna GPS bluetooth (quelle che si usavano spesso con i cellulari, per utilizzarli come navigatori) e i nostri modulini:

UPDATE #3
preso da ispirazione, ho usato il nostro modulo BT anche per pilotare un micro esapode stampato in 3d:

applicazione come sempre sviluppata su AppInventor

ModuliBluetooth01-connessioneHW.pdf (1.08 MB)

ModuliBluetooth02-programmazioneAT.pdf (488 KB)

ModuliBluetooth03-connessioneserialeviaBT.pdf (1.95 MB)

Ciao Pitusso, gran bel lavoro! Anche se gli ho dato un'cchiata rapida, mi sembra ben fatto e ricco di immagini. Io non sono afferrato in materia ma la tua Guida potrebbe essere applicata anche a quei modulini RF da 434/868MHz?? Se invece ci fossero delle varianti sarebbe una cosa ottima implementare un paio di paragrafi aggiuntivi :smiley: E la cosa sarebbe stra-completa se si potesse aggiungere anche una sezione dedicata agli XBee. Da gnurant faccio il ragionamento che mi pare di capire che è tutta roba che trasmette ad una frequenza differente, ma comunque ha sempre il criterio di usare una comunicazione seriale, avendo i pin tx, rx, dtr/rts. Per cui alla fine avere una Guida di riferimento su BT, XBee e RF in genere sarebbe davvero un'enciclopedia del wireless, diventando un punto di riferimento per chiunque decidesse di cimentarsi in questo campo.
Avevo tentato di coinvolgere il Forum per fare qualcosa del genere sul mondo Ethernet, non passa giorno che qualcuno non apra un Topic in materia, ma la materia è vasta e la disponibilità è poca.
Grazie per aver condiviso e comlimenti!

Ciao

ho appena letto i pdf tutti d'un fiato... complimenti un'ottima guida!

Mi piacciono le guide ricche di foto :stuck_out_tongue_closed_eyes:

Un piccolo appunto: nella prima scheda metti le foto dei moduli HC05, HC06 e HC07 ed inizi parlando delle differenze ma non citi l'HC07: in cosa si differenzia rispetto agli altri 2, di cui elenchi pregi e difetti? Solo nella 2a o 3a scheda metti la velocità ridotta che l'HC07 ha rispetto all'HC05.

Ciao,
innanzitutto grazie dei commenti / segnalazioni / suggerimenti, sono molto importanti per continuare a migliorare!

effettivamente ci son delle parti (es: connessione HW, programmazione AT) che potrebbero essere applicate ad altri device / moduli.
Le tengo in considerazione, e in una delle prossime revisioni inserirò se non altro qualche riferimento :slight_smile:

Leo72:
nella prima scheda metti le foto dei moduli HC05, HC06 e HC07 ed inizi parlando delle differenze ma non citi l'HC07: in cosa si differenzia rispetto agli altri 2, di cui elenchi pregi e difetti?

ottima osservazione :sweat_smile:
Del modulo HC07 ne ha parlato per primo Testato nella discussione citata nel primo post.
Io non ne ho, ma dalla descrizione data dal venditore e dalle tracce che si vedono sul pcb nella foto del modulo, a me sembrerebbe una versione "depotenziata", analoga alla HC06 sembrerebbe una versione analoga alla HC05.
Non mancherò di aggiornare la guidina con queste considerazioni, per chiarezza :smiley:

Mirco, complimenti, un ottimo lavoro :slight_smile:

complimenti, ottimo lavoro!

Aggiungo anche i miei complimenti Pitusso, dopo le guide di Leo e Menniti un altro "must-have"!

DevonMiles:
Aggiungo anche i miei complimenti Pitusso, dopo le guide di Leo e Menniti un altro "must-have"!

Devon, se non ricordo male tu avevi fatto belle prove con i modulini RF a 433 (o 868); forse potresti dare un contributo a Pitusso; ricordo male?

Sì, con modulini Aurel a 433MHz ma non era stato un gran successo e ho deviato sui moduli Bluetooth WT11 della Bluegiga. Comunque non avevo fatto niente di più che usare la libreria VirtualWire per trasmettere qualche dato, ma non so se per colpa dei fili su millefori, cattivo dimensionamento dell' antenna, poca potenza dei moduli non riuscivo a trasmettere informazioni a più di 3-4 metri. Il Bluegiga invece mi spara ad una distanza impressionante.

Bel lavoro, da molto tempo ci sto provando con questi modulini
senza riuscire a trasmettere.

Seguirò attentamente la tua guida e poi riproverò.

Carletto.

Bellissima guida, davvero!!
Grande Mirco!!

DevonMiles:
Sì, con modulini Aurel a 433MHz ma non era stato un gran successo e ho deviato sui moduli Bluetooth WT11 della Bluegiga. Comunque non avevo fatto niente di più che usare la libreria VirtualWire per trasmettere qualche dato, ma non so se per colpa dei fili su millefori, cattivo dimensionamento dell' antenna, poca potenza dei moduli non riuscivo a trasmettere informazioni a più di 3-4 metri. Il Bluegiga invece mi spara ad una distanza impressionante.

che intendi per impressionante? oltre alla portata mi farebbe piacere capire che condizioni d'uso hai (muri in cemento armato o altri impedimenti del genere)
Io ho preso un pò di roba per fare prove: xbee e modulini rf a 868MHz, purtroppo feci la cxxt di non prendere le antenne per xbee, introvabili :0 ora per fortuna sono riuscito a trovare delle "fruste" con attacchi e adattatori idonei, chissà quando troverò il tempo di provarli =(

Adesso mi sono fatto un pò prendere e magari ho esagerato però il Bluegiga è un classe 1 e quindi può comunicare anche a cento metri. E 100 metri sono più che sufficienti per far felice un amico LJ che vuole comandare con lo smartphone la macchina del fumo mentre si beve una birra al bar. :slight_smile:

DevonMiles:

[quote author=Michele Menniti link=topic=104903.msg791336#msg791336 date=1336760318]
che intendi per impressionante?

Adesso mi sono fatto un pò prendere e magari ho esagerato però il Bluegiga è un classe 1 e quindi può comunicare anche a cento metri. E 100 metri sono più che sufficienti per far felice un amico LJ che vuole comandare con lo smartphone la macchina del fumo mentre si beve una birra al bar. :slight_smile:
[/quote]
Beh, 100 metri sono tanti, è certamente un raggio d'azione più che valido per applicazioni di tipo domotico, era quello a cui pensavo. grazie

Ciao

il Bluegiga è un classe 1 e quindi può comunicare anche a cento metri

i modulini che utilizzo e che sono alla base della guida sono classe 2, pertanto la distanza massima è di 10 metri.
Per le applicazioni che ho fatto io fin'ora son sempre stati sufficienti, ma di sicuro può essere un limite.
Questo insieme ad altre caratteristiche tecniche dei modulini (stupidamente non inserite) ci saranno nella prossima revisione, a breve.

Molto utile, finalmente sono riuscito a far funzionare il mio modulo. :slight_smile:
Valerio.

Ben fatto!

Bellissima guida, Complimenti Pitusso!
...solo che... No, è che sono incastrato su una stupidaggine e sono qui a chiedere aiuto.
Mi sono arrivati i due modulini, sono HC05.
Ho fatto una piccola schedina per usarli, la posto:
niente di che, ho attaccato i pin di Vcc, GND (tutti e tre..), Rx,Tx, i due LED e il pin di programmazione, diciamo come da tuoi consigli. Solo il pin di programmazione, invece che riportarlo su un pin di arduino, gli ho messo un tastino per selezionare o pull-up verso +3,3 o GND.

Riesco a fare il pairing da telefonino senza problemi, ho provato anche una app che dovrebbe dimmerare un LED e quando clicco su connetto effettivamente il LED dell'avvenuta connessione si accende. Ne deduco che sta andando..

il problema è quando provo, seguendo le tue istruzioni, ad aprire il monitor di arduino (V1.0) mi comincia a stampare un'infinità di caratteri, mentre mi aspettavo di ricevere solo: "OK". questo sia in modalità programmazione che normale.

i collegamenti sono tramite SoftwareSerial, sui pin 2 e 3 classici e lo sketch è paro paro quello che hai messo nella guida, tranne il pin di programmazione, visto che lo faccio a mano col tastino...

Qualche idea?

Davide.

Edit: dimenticavo, sto alimentando la schedina tramite alimentatore da banco, uscita 3.32V DC..

BTBreakOut.pdf (14.8 KB)

OOOPSS!!!
...scusate, come non detto...
non avevo collegato le terre insieme..... :disappointed_relieved: :blush: :grin: :grin:

Funonzia!
ancora grazie!