Problema Modulo Bluetooth HC-05

Salve ragazzi, ho da poco acquistato un modulo master-slave HC-05 per la connessione bluetooth. Inizialmente ho utilizzato il dispositivo senza nessuna particolare configurazione a parte quella per unix, ma da un paio di giorni non riesco piu' ad effettuare il blink del led.Mi spiego meglio. Ho trovato in rete vari tutorial per il blink del led 13 da parte di qualsiasi dispositivo, infatti con android ci riuscivo tramite l'utilizzo dell'applicazione blueterm, la stessa cosa per ubuntu con un programma scritto in python. Dopo un paio di giorni il blink led 13 non funge piu', ovvero riesco ad associare il modulo infatti il led del modulo cambia intermittenza ma quando premi 1 (ovvero comando per accendere led) non mi da nessun segno di risposta. E' come se in ricezione si bloccasse e non porta a termine il tutto. Ho provato ad accedere alla modalità AT per modificare i valori ma non ci riesco. Ho usato sia windows che ubuntu ma il risultato e' lo stesso. Con windows l'ide è scattoso infatti quando provo ad inserire il comando AT non faccio in tempo a ricevere in risposta OK che si blocca il tutto, medesima cosa con ubuntu che quando provo a modificare il baudrate il programma va in crash! Ho provato anche impostando la modalità suggerita sul sito del produttore ma sempre stesso errore xD Qualcuno ha qualche consiglio? Grazie XD

Sito Produttore http://forum.hobbycomponents.com/viewtopic.php?f=39&t=1567

Alla mia prima esperienza con questo modulo (senza Arduino) ho: - connesso pin Rx e TX del HC-05 - ho associato il PC con il modulo - con Hyperterminal sul PC settato sulla porta com Bluetooth ho inviato caratteri a caso verificando il corretto echo degli stessi in ricezione.

Se ripetendo tale procedura tutto funziona, allora il problema dipende da Arduino.

Per attivare la modalità AT devi impostare la velocità su 38400 sul PC e prima di alimentare il modulo devi fare un ponte tra i 5V e il piedino Key / Status, ecc (ogni produttore definisce il suo!)

Il problema è che ho provato sia con un arduino Uno che un Nano, ma il problema e’ sempre lo stesso xD
Ho provato con putty a connettermi alla porta COM associata (bluetooth) ma quando provo ad inserire AT non ricevo nessuna risposta.
Non contento ho provato con RealTerm e ho notato che quando provo ad inviare AT si blocca su TX invece dovrebbe subito scompararire -_-

Ho collegato tutto
RX-RX(arduino)
TX-TX(arduino)
GRND-GRND
5V-5V

Appena posso provo di nuovo a verificare se i contatti sono buoni e nel caso risaldare il tutto, perchè ho notato che se collego tutto sulla breadboard non viene nemmeno rilevato, invece con i cavi va meglio.

gtony:
Ho collegato tutto
RX-RX(arduino)
TX-TX(arduino)
GRND-GRND
5V-5V

SBAGLIATO !!!

RX HC-05 ← TX Arduino
TX HC-05 → RX Arduino
GRND-GRND
5V-5V

Comunque … spesso questi moduli danno parecchi problemi se collegati alla vera porta seriale di Arduino (pin 0 e 1) come puoi facilmente verificare facendo una ricerca qui sul forum.

Ti consiglio caldamente di usare la SoftwareSerial utilizzando, ad esempio, il pin 10 come RX ed il pin 11 come TX. vedrai che non avrai problemi (non solo, ma ti resterà libera la vera seriale per fare debug).

Guglielmo

Adesso provo ad usare la SoftwareSerial e vedo un po’ -_-
Nel frattempo comunque arduino continua a crashare :\

Ma nel circuito ho bisogno di mettere le resistenze come in questa immagine oppure posso non metterle?

Perchè comunque quando funzionava le resistenze non le avevo messe .
Grazie

FSKAI30HMMFE6UO.MEDIUM.jpg

gtony: Adesso provo ad usare la SoftwareSerial e vedo un po' -_-

Se cerchi sul forum per "by user" gpb01 e "Search for" HC-05 troverai anche esempi fatti ;)

gtony: Nel frattempo comunque arduino continua a crashare :\

ehhhh :astonished: :astonished: :astonished: ??? In che senso ???

gtony: Ma nel circuito ho bisogno di mettere le resistenze come in questa immagine oppure posso non metterle?

Puoi non metterle, non ho mai avuto problemi di quel genere con quei modulini ... ... anche se, sarebbe corretto portargli il segnale sul RX limitato a 3.3v (... quel partitore resistivo serve appunto ad abbassare le tensione) ;)

Guglielmo

Niente ! Nulla !! Penso che sia passato a miglior vita !! :( Ho inserito lo sketch con i pin impostati sul 10,11 ma niente non da proprio segni di vita! Ho provato di nuovo con blueterm (Android) ma all'invio del numero 1 per accendere il led non ricevo nessuna risposta sullo schermo del device!! Il fatto bello è che il modulo cambia l'intermittenza del led da continuo a 2 ogni 2 secondi -_-

Non per insistere ... Hai fatto la prova mettendo un ponte fra Tx e Rx del modulo, senza null'altro collegato e senza tentare di entrare in modalità AT?

E' inutile connettere Arduino se tale prova non da esito positivo.

Un ponte di che tipo? Hai un disegno del circuito? Ho provato a fare un ponte ma nulla !! Sempre lo stesso problema l'ide si blocca in attesa di una risposta ma nulla! Grazie :)

RE: Prima funzionava il modulo infatti riuscivo a fare il tutto ... adesso quando provo ad inviare il comando di accensione ad esempio non si accende ... penso che il modulo si sia impostato sul master mode unica spiegazione perchè non effettua nulla. Ho provato svariati programmi Putty, Seriale arduino, Real term, Tera Term, Blueterm(android) tutti lo stesso errore ... Sono disperato perchè comunque mi serve per un progetto da consegnare a breve, e quindi non so se comprare un altro modulo -_-

Vediamo di fare un passo alla volta per capire cosa è successo.

Sto riferendomi al solo modulo HC-05. Pertanto niente Arduino, niente IDE, nulla oltre il modulo HC-05.

1) Connetti insieme i pin TX e RX del modulo con un filo o magari utilizzando quei cavallotti che si trovano sui vecchi hard-disk e CD per configurarli sul bus. 2) Alimenti il modulo con i 5V. 3) Associ il modulo con il PC (pairing) 4) Attenzione! Il PC crea n. 2 nuove Com virtuali, e solo una sarà utile alla comunicazione. 5) Con un software tipo HiperTerminal, lo imposti sulla Com individuata.

E' importante individuare la Com giusta, alla peggio fai qualche tentativo, oppure apri "Gestione dispositivi" con Win7

Ora grazie alla connessione tra TX e RX sul modulo, tutti i caratteri inviati da Hiperterminal al modulo, ritorneranno indietro. e potrai vederli visualizzati a video. Non aspettarti comandi AT, led che lampeggiano o altri miracoli, hai solo ottenuto l'echo dei caratteri inviati. Sembra una banalità, ma in questo modo hai testato l'intero anello di comunicazione: TX(PC) -> RX (BT) - TX (BT) - RX (PC)

Allora ti ringrazio per la risposta e per la pazienza mostratomi xD
Ho collegato il tutto e con Windows ho avuto dei problemi ovvero l’eco non m funzionava nonostante avessi provato entrambe le porte COM, sono passato ad Ubuntu.
Ho effettuato il pairing e tramite terminale ho inviato la request echo, i caratteri vengono ritornati, ma sono stampati di continuo, ho fatto un secondo test cambiando echo e il carattere veniva affiancato a quello precedente.
(immagine in allegato)
Da cosa può dipendere cio’ ?
Grazie ancora e buona serata :slight_smile:

RE : /dev/rfcomm0 è quella relativa al bluetooth
Re2 : Ho provato con un il terminale android blueterm e funziona tutto alla grande, non ci sono stessi caratteri ripetuti continuamente … Adesso il problema è con Arduino :confused:

Ho dei dubbi sull'affermazione "inviato la request echo". Se è inteso che il terminale genera un echo locale allora non va bene e posso capire che i caratteri si ripetano. L'emulatore di terminale che usi deve essere trasparente senza aggiungere e/o togliere nulla.

Oltre a HyperTerminal, io utilizzo anche Hercules (www.hw-group.com) che ha molte funzionalità per il debug.

Per farti capire il principio del test: premi un carattere da tastiera che non verrà visualizzato subito a video, ma verrà instradato per Com virtuali, modem, convertitori di protocollo, ecc. e proprio grazie a quel famoso "ponte" tra Tx e Rx ritornerà indietro al mittente e verrà visualizzato sul video del terminale. E' un test eridato dalle vecchie linee RS232 e relativi modem analogici per testare l'integrità della linea.

Ho utilizzato Hercules su windows e devo dire che fa il suo lavoro. Riesco adesso a connettermi con la COM6 e riesco ad inviare e ricevere il carattere. Quindi appurato che l'HC-05 funzioni devo ora il problema ARDUINO .\ Grazie :)

Re : Finalmente sono riuscito ad effettuare il blink del led da seriale (blueterm Android), il problema però adesso è che comunque non riesco a settare i parametri AT invio ma non ricevo alcuna risposta da parte del modulo :\

Re2: Il modulo si è preso di nuovo gioco di me !! Non funziona di nuovo il blinking -_- Sono esausto!

Per accedere ai comandi AT non puoi farlo via Bluettoth!

Devi connettere il PC direttamente ai pin Rx e TX del modulo, tramite un convertitore USB/RS232 ttl con velocità 38400. Leggiti uno dei miei primi post.

@ gtony: Sei conscio che esiste un thread dedicato al Bluetooth in Megatopic e che, se dedicassi un po' di tempo a [u]studiartelo[/u] con attenzione, probabilmente impareresti qualche cosa ?

Guglielmo

Non si tratta di studiare o no la cosa perchè prima di postare qua la domanda mi sono ben documentato e già avevo provato ad utilizzare questa guida, ma non sono riuscito a concludere nulla! Vi ringrazio del prezioso aiuto datomi. Buona Sera ;)

gtony: Non si tratta di studiare o no la cosa perchè prima di postare qua la domanda mi sono ben documentato ...

Non mi sembra ... ... visto che hai fatto domande sulla modalità AT (in questo post) che indicano chiaramente che non ti sei ben documentato. :roll_eyes:

Più volte, anche nel forum, è stato ribadito che in modalità AT ci puoi andare comunicando solo dal lato seriale (... e non radio) e che ... il pin KEY deve essere messo HIGH altrimenti, comunque, non ci entrerai mai !

Guglielmo

Ecco a Lei !

Con il cat dovrebbe uscire qualcosa ! Ma invece nulla!

non funziona.png

gtony: Forse ho piu' volte detto che quando provo ad accedere con la seriale si blocca tutto?

Ti ho già spiegato che lo stavi collegando male e che non dovevi usare la vera seriale ma la SoftwareSerial ... :roll_eyes:

E t'ho anche detto di cercare qui sul forum, con l'Advanced search, per "by user" gpb01 e "Search for" HC-05 ... che troverai anche esempi fatti e [u]funzionanti[/u] !

Guglielmo

gtony:
Con il cat dovrebbe uscire qualcosa ! Ma invece nulla!

cat ? su Linux ? e cosa pensi dovrebbe uscire ? Cosa hai collegato a Linux ?

Guglielmo