Puoi leggere nell’HC-05 At Command alcuni dei comandi utili per “ri-programmare” il tuo modulo.
Uno dei moduli bluetooth più utilizzati con Arduino è l’HC-05, complice il suo basso costo e la semlicità di utilizzo.
Il vero problema che potresti avere è che tutti i moduli sono impostati in fabbrica con il medesimo pin “1234” che espone le tue applicazioni al rischio di accesso indesiderato e bloccante.
Come sai infatti il modulo HC-05 esegue il paring, associazione, solo con un dispositivo alla volta per cui se qualcuno si connette al tuo progetto prima di te potrebbe impedirti la connessione fino a quando non rilascia la connessione.
Ma i comandi AT non ti servono solo per variare il codice pin di accesso come leggerai in questo articolo ma riguardano anche il ruolo e la velocità di comunicazione del dispositivo.
HC-05 At Command mode
I comandi AT da utilizzare li ho trovati in questo link in una pagina stile wiki. In questo articolo ne userò alcuni che ho provato.
Inizia dai collegamenti per i quali puoi seguire questo semplice schema:
in cui il modulo bluetooth hc-05 è collegato ad un convertitore USB-Seriale, anche se diverso da quello realmente da me utilizzato, è il più simile presente in Fritzing.
Altra piccola differenza tra lo schema e il mio collegamento “reale” è il microswitch che ti agevola nel portare il modulo in modalità comandi ( command mode ), cosa che io ho eseguito usando un cavetto da breadboard direttamente al pin 34 del modulo:
indifferentemente da come colleghi il pin 34 è importante che questo pin sia connesso al pin VCC ( +5v ) al momento dell’alimentazione.
Portando il pin 34 del modulo HC-05 a Vcc in fase di alimentazione del modulo ottieni che il led invece di lampeggiare velocemente inizia a lampeggiare con una frequenza di circa 2sec che ti indica la modalità comandi sul monitor.
In questa condizione puoi collegarti con un terminale seriale al modulo hc-05 at command ed impartire tutti i comandi che ti servono per la nuova configurazione.
Siccome l’IDE arduino ha il monitor seriale come terminale seriale puoi usarlo per programmare l’HC-05 AT Command impostando come velocità di connessione 38400 ed entrambi i caratteri di controllo:
a questo punto se tutto è collegato in modo corretto puoi procedere con il primo comando:
la cui risposta è un semplice “OK”:
che ti conferma di aver eseguito correttamente l’accesso al modulo e la connessione via seriale.
Secondo comando che puoi utilizzare è AT+VERSION? che chiede al modulo la versione del firmware presente:
la cui risposta nel mio caso è stata:
Terzo comando che puoi utilizzare ti restituisce l’indirizzo hw del modulo:
la cui risposta, nel modulo che ho utilizzato per l’esperimento è stata:
Quarto HC-05 AT commend che puoi utilizzare è AT+NAME? con cui chiedi di visualizzare il nome con cui vedrai il dispositivo bluetooth sul computer o smartphone:
La risposta, anche se già la conosci, è:
ma puoi comunque usare questo stesso comando per cambiare il nome del dispositivo; ecco come:
la cui risposta è solo un “OK” per dirti che il comando è stato recepito:
se vuoi controllare l’impostazione puoi usare nuovamente il comando AT+NAME?
ed otterrai:
da cui vedi subito che il nome del device è cambiato da HC-05 a “Mauro”, nel mio caso.
Un altro HC-05 AT command è AT+ROLE? che ti permette di sapere il ruolo ( Master o Slave ) in cui si trova il modulo al momento in cui lo interroghi:
la risposta è, come puoi vedere nella tabella riportata nei comandi at ( 0- Slave 1-Master 2-Slave-Loop ) come puoi immaginare il tuo modulo sarà configurato come:
al momento della produzione.
Se volessi eleggere il tuo modulo a Master potresti impostarlo con questo comando AT+ROLE=1
Tornando ai comandi utili è giunto il momento di cambiare il pin usato come password, prima verifica il pin attuale:
la risposta sarà il pin che già conosci:
ma puoi cambiarla con il comando AT+PSWD=nuovo_pin come nella schermata seguente:
a cui riceverai solo una conferma con il solito “OK”, per verificarla puoi utilizzare di nuovo il comando AT+PSWD?
il nuovo pin “0000” è impostato, certo non è più sicuro di quello precedente ma serve solo come esempio per spiegare come si imposta un nuovo pin.
Ultimo comando che potrebbe servirti riguarda la velocità di comunicazione seriale quando il modulo sarà in modalità di lavoro e quindo NON in HC-05 AT Command, che rimarrà sempre a 38400 anche se la velocità di lavoro cambia, diversamente da come hai visto sul modulo HC-06 nell’articolo dedicato a quel modulo.
Con il comando AT+UART? puoi chiedere al modulo di indicarti il valore correntemente impostato:
la risposta potrebbe essere simile alla seguente:
che come noti è differente dal modello hc-06 in quanto espressa in baud_rate,bit,parità anche questi ultimi due valori possono essere cambiati:
e la risposta sarà il consueto “OK”, per cui puoi verificare il valore impostato con il medesimo comando di interrogazione:
Infine non ti resta che provare come viene visto il dispositivo bluetooth hc-05 at command dal computer o dal tuo smartphone:
Ora non ti resta che modificare tutti i nomi e pin dei device bluetooth che intendi utilizzare sui tuoi progetti ed associarli ai tuoi dispositivi di controllo preferiti.
Prima di inserire un commento, per favore, leggi il regolamento
37 pings
Skip to comment form
[…] « HC-05 AT command […]