Go Down

Topic: [HOWTO] Guida (più o meno) completa all'utilizzo di Moduli Bluetooth (Read 90153 times) previous topic - next topic

zuzzuz

ok ho fatto un tentativo anche dal cellulare tramite il bt console di pyton, il dispositivo viene associato e il led13 di arduino si accende ma non ottengo alcun dato sul cellulare è possibile che si sia danneggiato il modulo bt?

lollotek


ok ho fatto un tentativo anche dal cellulare tramite il bt console di pyton, il dispositivo viene associato e il led13 di arduino si accende ma non ottengo alcun dato sul cellulare è possibile che si sia danneggiato il modulo bt?


Prova a resettarlo con il comando
Code: [Select]
AT+ORGL

lollotek

Mi sono arrivati finalmente i moduli segnalati da Igor (grazie).
Stavo ora provando ad usare il modulo come master per collegarmi e leggere dei dati da una periferica.
Ho inviato i seguenti comandi:

Code: [Select]

AT+ROLE=1
AT+CMODE=1
AT+INIT
AT+INQ
AT+LINK=15,71,6c585
AT+RNAME?0015,71,06c585
AT+CMODE=0
AT+UART=57600


Il link funziona perchè dopo AT+RNAME mi restitusce il nome del modulo.
ma non mi è chiara una cosa, ora che il modulo è configurato, ha la periferica in elenco, e gli ho messo lo stesso baud rate, quando lo  resetto con il pink KEY LOW, dovrebbe fare tutto lui? io dovrei aspettarmi di vedere i dati che mi arrivano dalla periferica e basta? perché a me pareva di aver capito così, ma in realtà sulla seriale non mi arriva nulla.

Ah, se a qualcuno interessa, io per programmare il modulo ho usato un arduino togliendogli l' atmega, e collegando tx con tx e di conseguenza rx con rx.

zuzzuz

Quote

Prova a resettarlo con il comando
Code: [Select]
AT+ORGL

non ricevo risposte dai comandi AT

lollotek


Quote

Prova a resettarlo con il comando
Code: [Select]
AT+ORGL


non ricevo risposte dai comandi AT


bene, siamo sulla stessa barca, anche io ora ho lo stesso problema, però mi si è staccato un piedino, ora risaldo e riprovo..
prova con diversi baudrate..

lollotek

Risaldando il GND ha tornato tutto a funzionare.

Sono riuscito a collegarmi alla periferica usando questi comandi, ed ora si collega automaticamente:

Code: [Select]

AT
AT+ROLE=1
AT+CMODE=1
AT+INIT
AT+PSWD=0000
AT+INQ
At+pair=0015,71,06c585,20
at+fsad=0015,71,06c585
AT+LINK=0015,71,06c585
AT+CMODE=0


Praticamente mi mancava il paring e per farlo ho dovuto modificare la password da 1234 a 0000

pitusso

#141
Sep 24, 2012, 10:31 am Last Edit: Sep 24, 2012, 10:40 am by pitusso Reason: 1
@lollotek

Quote
Praticamente mi mancava il paring e per farlo ho dovuto modificare la password da 1234 a 0000


il pin del modulino va cambiato perchè deve essere quello del dispositivo slave a cui ci si vuole collegare  :P

Il comando FSAD ti conferma se il device è nella lista dei paired, ma a mio avviso non è necessario ogni volta - nel senso che lo puoi usare per vedere se il pairing ha avuto successo.

Cmq qui:
http://arduino.cc/forum/index.php/topic,114984.msg865815.html#msg865815
trovavi un esempio di collegamento del modulo come master ad una antenna GPS BT slave  ..

zuzzuz

Risalve, premesso che uso questo shield, http://iteadstudio.com/store/index.php?main_page=product_info&cPath=18&products_id=307
ho provato a inviare i comandi AT da arduino anzicchè dalla porta com (ho cambiato lo switch 4 a board) ed ho caricato lo sketch del tutorial.
Ottengo dalla porta di arduino la risposta "Seriali attive..." ma non ottengo alcuna risposta ai comandi AT inviati, inoltre dopo qualche secondo inizia a scorrere come se arrivassero dei caratteri vuoti sullo schermo anche senza che io invii alcun comando.
Nessuno ha una board simile?

pitusso

Ciao
la prima cosa che ti dico di fare, è verificare a che velocità "viaggia" il modulo, e di impostare quindi questa velocità sia per la seriale che per la sotfware serial nello sketch.

zuzzuz

allora non avendo modo di rimandare comandi AT per riconfigurare tutto, ho configurato tutto a 9600 baud che è il default, ma non visualizzo niente.
L'unica cosa che mi fa ben sperare è che effettivamente il programma di test che ho postato qualche post prima, inizia effettivamente a inviare dati alla seriale dopo che riesco ad aprire la seriale bt, quindi in qualche modo la scheda riesce ad associarsi e ad aprire la seriale, però i dati non arrivano corretti, ho provato con quel codice tutte le velocità supportate dalla board ma con nessuna visualizzo il messaggio come con la seriale di arduino

zuzzuz

Ok sono riuscito a inviare i comandi AT, ed ho reimpostato la velocità a 9600 (ammesso che non fosse già quella), la board risponde correttamente ai comandi AT, ma non riesco cmq a scambiare dati dalla porta COM bt.

pitusso

@zuzzuz
quindi sei riuscito a inviare comandi AT e ad ottenere risposta dal modulo a questi comandi.
Come mai prima non andava? Una piccola spiegazione può essere d'aiuto anche ad altri utenti in difficoltà.

Quote
non riesco cmq a scambiare dati dalla porta COM bt.


come stai facendo questa prova?
Che sw usi? Lato Arduino che sketch hai messo?

Ho provato a guardare il datasheet dello shield che hai acquistato, sinceramente non ho capito bene come funzionala comunicazione seriale.
C'è uno switch a bordo, riesci a guardare le piste e a vedere a che pin son collegate?


zuzzuz

Per inviare i comandi AT ho seguito questa guida di un utente della mia board è in inglese ma risulta di facile comprensione, di pm provo a cambiare adapter BT del pc, e faccio nuove prove.

You definitely need a tutorial on how to set this up.
To get into AT command mode, set the switches to "FT323" and "5V"
Plug you shield into an Arduino
Plug the Arduino into your computer via USB
Upload a blank sketch to your Arudino (to make sure it's not transmitting serial message)
Open a serial terminal program (My favorite is CoolTerm for OSX)
Make sure you have the options set to 9600 Baud, data bits 8, parity none, stop bits 1
Open a port to the Arduino (so it would be your USB connection, NOT bluetooth)
You should be able to type "AT" now and see "OK" as a response
The rest you should be able to figure out from the datasheet
Once you've programm

P.S.
Le prove le sto facendo con lo sketch che ho postato qualche post fa, come terminale seriale ne ho provati diversi da accessport di windows a gtkterminal su linux, ma ho gli stessi risultati la porta com non restituisce alcun risultato, visto che cmq il dispositivo funziona da android con librerie amarino, voglio provare a cambiare adapter bt magari è quello che non va, o il driver di windows 7 che usa.

pitusso

Ciao,
quel messaggio l'ho già visto nei commenti, nella pagina dello store dello shield.

Ti ripeto la mia domanda, per cortesia verifica sullo shield le piste a che pin vanno (dallo switch FT232/Board), oppure fai due foto definite dello shield sopra e sotto, in prossimità appunto dell'interruttore FT232/Board e pin Digitali.
C'è bisogno di capire che pin vengono utilizzati, se solo i seriali hw oppure qualche altro per una seriale sw.

zuzzuz


Ciao,
quel messaggio l'ho già visto nei commenti, nella pagina dello store dello shield.

Ti ripeto la mia domanda, per cortesia verifica sullo shield le piste a che pin vanno (dallo switch FT232/Board), oppure fai due foto definite dello shield sopra e sotto, in prossimità appunto dell'interruttore FT232/Board e pin Digitali.
C'è bisogno di capire che pin vengono utilizzati, se solo i seriali hw oppure qualche altro per una seriale sw.


http://iteadstudio.com/store/images/produce/Shield/BTshieldv2/Sheild-BT-schematic.pdf
Lo switch 4 in questione connette ai pin 1-2 di arduino o 5-6 cmq tutto quello che vuoi sapere sta sullo schematic.
Ho appena testato un altro adapter usb e con questo funziona, quindi il problema è di quell'adapter, farò ulteriori test, ma magari semplicemente si è rotto quello.

Go Up