di recente ho acquistato un arduino, una piastra da 8 relè e un modulo bluetooth HC-06.
L'arduino e la piastra relè funzionano regolarmente.
Il modulo bluetooth non tanto bene: riesco a fare l'accoppiamento dal mio cell, trovando "HC-06", ma non riesco dal monitor seriale dell'IDE arduino a dare comandi o ricevere risposte.
In allegato ci sono le foto che mostrano i vari collegamenti fatti, e lo sketch caricato attualmente sull'arduino.
Praticamente se dal monitor seriale scrivo "AT", non ricevo nessuna risposta.
Il modulo risponde hai comandi AT SOLO quando è in modalità "comandi AT"(... modalità in cui, oltretutto, di default, colloquia a differente velocità) ... se non studi i datasheet e non vedi come si fa ad entrare in tale modalità ... difficilmente riceverai mai risposta ... :
gpb01:
Il modulo risponde hai comandi AT SOLO quando è in modalità "comandi AT"...
grazie, mi devo ricordare di metterlo nella mia lista verifiche
però, se non ricordo male, HC-06 (che non compro più), è sempre in modalità AT se non accoppiato.
Federico66:
però, se non ricordo male, HC-06 (che non compro più), è sempre in modalità AT se non accoppiato.
Guarda, onestamente NON me lo ricordo perché NON uso mai gli HC-06 (che costano come gli HC-05 e fanno la metà delle cose) ... allego i datasheet ... dategli un occhiata
Guglielmo
... HC-06, capitolo 9, entra in modalità AT all'accensione se NON è accoppiato e resta in attesa di un comando AT per UN SECONDO, dopo di che esce. Se lo si vuole tenere in modalità AT occorre inviare "AT" almeno ogni secondo
gpb01:
... HC-06, capitolo 9, entra in modalità AT all'accensione se NON è accoppiato e resta in attesa di un comando AT per UN SECONDO, dopo di che esce. Se lo si vuole tenere in modalità AT occorre inviare "AT" almeno ogni secondo
Infatti, adesso ricordo le maledizioni, poi ho scoperto, grazie a te gli HC-05
dam034:
Devo solo vedere se funziona, impostare nome dispositivo e pin.
Purtroppo non sapevo che HC-06 avesse problemi, ma ora quello ho e mi devo arrangiare.
Non è che ha problemi, ma è un po' rognoso, inizialmente, se devi usare i comandi AT per configurarlo, ed inoltre è solo slave, cioè non puoi configuralo come master; come dice @Guglielmo, visto che HC-05 (master/slave) costa +o- uguale, conviene prendere quello.
Io, ho commesso lo stesso "errore" iniziale, ma lo uso comunque da vari mesi senza problemi.
Come dice il datasheet
The way to the AT command mode: supply power to the module, it will enter to the AT mode if it
needn’t pair. The interval of command is about 1 second.
Default parameter: Baud rate:9600N81, ID: linvor, Password:1234
quindi perchè non provare a farlo fare ad Arduino, io proverei così:
mattoide:
... resta il fatto che mi risponde in byte e non a lettere come negli esempi.
Ehhhhh ? ? ? :o :o :o
Ma ti rendi conto che quelle che tu chiami lettere sono solo delle convenzioni e che, secondo uno standard, normalmente ASCII, ad ogni numero corrisponde una lettera? ... Esempio la lettera 'A' è il byte che vale, in esadecimale 0x41, in ottale 0101 ed in decimale 65 ... ma sempre la setssa cosa è !!!
Ora, se ti studi la classe Serial ti accorgi che sta a te scegliere la chiamata più opportuna per vedere quel byte visulalizzato come un numero o come un carattere!
Scusa, sto lavorando e ho scritto di fretta e un po a cane era solo per dire che nell'esempio (anzi in tutti gli esempi) fa vedere sempre che risponde con il codice ascii anche se usa la .read().
Comunque @dam034 a me era il carattere di terminazione da impostare da monitor seriale, facci sapere
mattoide:
Nella sezione Megatopic c'e questo https://forum.arduino.cc/index.php?topic=104903.0, e a quanto pare nel mio caso dovevo impostare i i caratteri di fine riga da monitor seriale.. in basso a destra.
...è cosa buona e giusta cercare nel forum, andrebbe sempre fatto prima di chiedere, ma se chiedi, devi leggere le risposte (#3) ...
Federico66:
inoltre avete provato ad impostare il Monitor seriale in modo che invii "CR+LF"?
mattoide:
... era solo per dire che nell'esempio (anzi in tutti gli esempi) fa vedere sempre che risponde con il codice ascii anche se usa la .read(). ...
Hai letto bene quanto ho scritto? ...
gpb01:
Ora, se ti studi la classe Serial ti accorgi che sta a te scegliere la chiamata più opportuna per vedere quel byte visualizzato come un numero o come un carattere!
Allora, dato che non ho capito granché, e che sono alle prime armi con arduino, difficilmente riuscirò a fare qualcosa per configurare il modulo HC-06.
Ho capito che anche con la funzione read() rimane sempre l'ASCII, ma il resto no.
A me serve configurare il nome del dispositivo bluetooth e il pin, anche con uno sketch adatto, invece di usare il monitor seriale.
Dopo, vorrei fare un'altra cosa (se possibile): usare arduino e HC-06 come ponte di collegamento tra monitor seriale e telefonino, in modo tale da avere una cosa del tipo:
Tramite app sul cell (che so fare) voglio inviare una stringa, e visualizzarla nel monitor seriale del pc. Ma questo è da fare dopo, quando prendo un po' più pratica.
Per ora è possibile avere uno sketch che configura il nome del dispositivo bluetooth e il pin?
dam034:
Allora, dato che non ho capito granché, e che sono alle prime armi con arduino, difficilmente riuscirò a fare qualcosa per configurare il modulo HC-06.
...
Per ora è possibile avere uno sketch che configura il nome del dispositivo bluetooth e il pin?
...ma li leggete i post o oggi sono invisibile!!!
Lo hai letto il mio post #10?
Hai provato se funziona?
@Federico66 e @gpb01 chiedo scusa, ero di corsa e ho letto e risposto di corsa.
@dam034 se anche con le guide non riesci, scrivimi in privato, che in questi giorni ho fatto quasi solo questo e mi farebbe piacere dare una mano. Sarebbe anche un modo per me per migliorare quello che ho capito