Problema Modulo Bluetooth HC-05

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

Se effettuo con un terminale linux un echo tramite

echo -en  'AT+VERSION?\r\n' > /dev/ttyACM0

con cat mi dovrebbe dare la versione del software e invece non ho nessuna risposta!

Continui a non rispondere ... ... come lo hai collegato a Linux ???

Guglielmo

Nello screen che ho postato /dev/ttyACM0 è la usb di arduino dove ho caricato

#include <SoftwareSerial.h>     //IDE >= 1.0
//#include <NewSoftSerial.h>    //IDE <= 0023
const int rxPin = 2;
const int txPin = 3;
const int atPin = 4;
SoftwareSerial bluetooth(rxPin, txPin);  //IDE >= 1.0
//NewSoftSerial bluetooth(rxPin, txPin);   //IDE <= 0023
void setup() {
 
  Serial.begin(9600);
  bluetooth.begin(9600);
  pinMode(atPin, OUTPUT);
  Serial.println("Seriali attive...");
  digitalWrite(atPin, HIGH);
}
void loop() {
  if (bluetooth.available()) {  
    Serial.write(bluetooth.read());
  }
 
  if (Serial.available()) {
    bluetooth.write(Serial.read());
  }
}

della guida che mi ha linkato prima!

... ok, quindi :

  1. perché non usi il Serial Monitor del IDE invece di comandi da linea comando ? Almeno vedresti meglio cosa accade

  2. T'ho già detto che se così speri di dargli i comandi AT e speri che il modulo ti risponda ... te lo puoi scordare. Hai letto quanto ho scritto poco sopra ? E quanto ti ha detto lelebum ?

Guglielmo

1) Se uso il serial monitor dell'ide va in crash tutto :0 2) Selezionando la porta associata all'arduino setto così il modulo.Così effettuo una connessione seriale e non radio! E' ciò che si evince dalla guida che ho seguito(quella che lei mi ha postato) . A meno che non sia stupido questo ho capito! =(

No, è che non leggi quanto ti si dice ...

post di lelebum qui :

lelebum: ...... con velocità 38400.

mio post poco sopra, qui :

gpb01: ... il pin KEY deve essere messo HIGH altrimenti, comunque, non ci entrerai mai !

Ora, io vedo la velocità a 9600 e non parli di come hai messo il pin KEY ... quindi ... ]:D

Guglielmo

gtony: 1) Se uso il serial monitor dell'ide va in crash tutto

... e questo dimostra che hai anche installato male l'IDE di Arduino (devi scaricarlo da QUI e non usare quello che ti installa ubuntu) e, probabilmente, non hai settato i giusti permessi ... :roll_eyes:

Di nuovo, fatti un po' di ricerche qui sul forum, il problema dei permessi con linux è cosa di cui si hanno discusso più e più volte.

Guglielmo

  1. Il pin qui è settato su HIGH
void setup() {
 
  Serial.begin(9600);
  bluetooth.begin(9600);
  pinMode(atPin, OUTPUT);
  Serial.println("Seriali attive...");
digitalWrite(atPin, HIGH);
}
  1. Devo modificare la velocità della serial a 38400
    quindi
Serial.begin(38400);
  bluetooth.begin(9600);

In questo modo? :roll_eyes:

Il problema del crash l’ho risolto con un group

gtony: 1) Il pin qui è settato su HIGH

Sperando che lo senta ... ... io, di solito, lo collego fisicamente al +5 quando, quelle rare volte, mi serve di usare i comandi AT ... :roll_eyes:

gtony: 2) Devo modificare la velocità della serial a 38400 ...

Devi modificare la seriale a cui è connesso il modulo ... la SoftwareSerial ... è verso il modulo che occorre andare a 38400.

Guglielmo

Nulla! Ma che noia! :0 =(

Fai una foto NITIDA del tutto che controlliamo i collegamenti ... ... inoltre per la SoftwareSerial, come ti avevo detto, ti consiglio i pin 10 RX e 11 TX (... ragioni di compatibilità anche con altre board oltre alla UNO).

Guglielmo