Sommario:

OldMan e Bluetooth: 5 passaggi
OldMan e Bluetooth: 5 passaggi

Video: OldMan e Bluetooth: 5 passaggi

Video: OldMan e Bluetooth: 5 passaggi
Video: Как восстановить заводские настройки Bluetooth-динамика JBL Flip 5 2024, Novembre
Anonim
OldMan e Bluetooth
OldMan e Bluetooth
OldMan e Bluetooth
OldMan e Bluetooth
OldMan e Bluetooth
OldMan e Bluetooth
OldMan e Bluetooth
OldMan e Bluetooth

Aggiornamento di aprile 2020, grazie a un commento di un lettore, Krasla, ora sono in grado di entrare in modalità di comando con JDY-31.

Proverò a partecipare al concorso Sensor.

Quindi questo Lazy Old Geek (L. O. G.) ha appena completato un progetto GPS:

www.instructables.com/id/Old-Man-and-the-Arduino-GPS/

e stavo pensando a come comunicare con il GPS. Bene, avevo dei vecchi moduli Bluetooth in giro e ho deciso di vedere se potevo farli funzionare. Ora questi erano i moduli Bluetooth HC-05/HC-06 che forse ho ordinato funzionavano ma non molto bene.

Quindi ho fatto molte ricerche su Internet. Una delle migliori risorse che ho trovato è stata Martyn Currey:

www.martyncurrey.com/hc-05-zg-b23090w-bluetooth-2-0-edr-modules/#more-5681

Passaggio 1: test Bluetooth

Test Bluetooth 2
Test Bluetooth 2
Test Bluetooth 2
Test Bluetooth 2
Test Bluetooth 2
Test Bluetooth 2

Ok, il prossimo passo è parlare Bluetooth. Quindi ho uno smartphone Android e ho provato un'app chiamata B-BLE. Non sono riuscito a farlo funzionare. Quindi ho provato "Terminale Bluetooth" Questo ha funzionato.

Procedura Smartphone

Vai su Google Playstore e installa il terminale Bluetooth.

Configura HC-06 con Seeduino (o CP2102) e connettiti al PC, apri il terminale seriale Arduino.

Su Smartphone, fai clic su Impostazioni, trova Bluetooth, fai clic su Associa nuovo dispositivo. Se è la prima volta che ti connetti dovresti vedere qualcosa di simile a questo:

00:12:09:27:18:94

Questo è l'indirizzo MAC dell'HC-06. Cliccaci sopra

Se non è la prima volta, mostrerà il nome Bluetooth, ad esempio my2BT, fai clic su di esso. Guarda l'immagine

Ti chiederà la Password, quelle che ho io sono 1234. (Se hai accesso ai comandi puoi cambiare la Password). Guarda l'immagine.

Sullo smartphone apri l'app Terminale Bluetooth. Dovrebbe aprirsi con la schermata dei dispositivi associati, vedere l'immagine, Selezionare il nome BT, (my2BT).

A proposito, è qui che il LED lampeggiante del modulo BT dovrebbe diventare fisso.

Dovrebbe essere visualizzata la schermata Terminale. Guarda l'immagine

Dove dice "Inserisci comando ASCII", digita qualcosa da inviare al PC. Quindi tocca (Invia ASCII) (ho programmato alcuni BTN).

I dati inseriti dovrebbero apparire sul terminale seriale Arduino del PC. Guarda l'immagine

Per inviare da PC, (l'ho cambiato in (sia NT che CR) nella casella di comando, digita quello che vuoi inviare quindi fai clic su (Invia). Dovrebbe apparire nella schermata del terminale Bluetooth, vedere l'immagine precedente

Sì, stiamo comunicando!

Passaggio 3: il mio problema

Il mio problema
Il mio problema
Il mio problema
Il mio problema
Il mio problema
Il mio problema

Come ho detto prima, questi moduli sono progettati per segnali di ingresso 5V e 3.3v. Per me, questo è il peggio dei due mondi. Il modo corretto di usarlo è con un Arduino 5V, quindi convertire i livelli TX e RX in quelli corretti. Alcune persone usano divisori di resistori. Ora penso che il mio Seeduino anche in modalità 5V emetta segnali a 3.3V ma altri Arduino no.

Ora utilizzo principalmente dispositivi a 3,3 V come Adafruit Feather M4 Express. L'M4 Express non ha alimentazione a 5V, quindi come posso utilizzare questi moduli. Un modo è utilizzare il modulo HC-06 nudo senza base, ma è più difficile lavorarci. Quello che ho deciso di fare è stato convertire i miei moduli BT solo a 3.3V. Questo è ciò che indica il grande 3 giallo.

Con un po' di aiuto su Internet, sono arrivato a un paio di versioni schematiche del modulo JY-MCU BT (vedi immagine) e le ho inserite in Eagle Cadsoft, vedi zip.

TECHNOBABBLE: Il BTI BCM è il Bluetooth e il resto è la scheda base. Sfortunatamente, ci sono molte diverse schede di base. Alcuni non hanno il diodo B1, altri hanno un mosFET del canale P per abilitare il dispositivo. Ma in questo caso i problemi principali sono B1 e il regolatore a 3,3V. Con un ingresso a 3,3 V non avresti 3,3 V sull'HC-06.

Quindi ho ponticellato il pin di ingresso VCC (5V) a 3.3V sul pin 12 del modulo. Ora penso che sia tutto ciò che serve, ma ho anche rimosso il regolatore (XC6206P332, ma potrebbe essere di tipo diverso). Da un punto di vista tecnico, non credo sia una buona idea fondamentalmente cortocircuitare l'ingresso e l'uscita di un regolatore. Non lo spiegherò in modo più dettagliato poiché ogni scheda base potrebbe essere diversa. Vedi filo giallo nella foto.

Quindi ora questi moduli funzioneranno su sistemi a 3.3V.

Passaggio 4: adattatore seriale

Adattatore seriale
Adattatore seriale
Adattatore seriale
Adattatore seriale
Adattatore seriale
Adattatore seriale

Quindi, invece di usare un Arduino sul PC, puoi anche usare un convertitore USB-seriale. I vecchi Arduino usavano l'FTDI232 ma sono costosi, quindi usavo i convertitori USB-seriale PL2303. Ma poiché non sono riuscito a trovare un driver per i modelli precedenti per Windows 10, ho iniziato a utilizzare i CP2102. Ora di nuovo il problema è che i pin di uscita hanno tutti 5V (provenienti direttamente dal connettore USB). E ci sono molte varietà. Ad ogni modo, di solito li modifico per 3.3v e saldatura su un'intestazione femmina, quindi funziona con molti dei miei progetti Instructables. Ora ho aggiunto anche un regolatore 3.3v (L4931C33 credo) Vedi foto. La maggior parte dei circuiti integrati coverter ha un'uscita a 3,3 V, ma penso che la maggior parte sia limitata a circa 50 mA. In realtà, per parlare solo con l'HC-06, 50 mA sono sufficienti.

Va bene, quindi questi possono essere collegati all'HC-06 come segue:

BTCP2102

Gnd Gnd

3,3 V 3,3 V

Rx Tx

Tx Rx

Guarda l'immagine

Collegare il CP2102 all'USB del PC. Ora Arduino Serial Terminal non è il più facile da usare, quindi ho provato Tera Term e Putty ma non hanno funzionato molto bene e non sono riuscito a capire come configurare senza fine linea, quindi sto ancora usando Arduino. Funziona bene.

Passaggio 5: Bluetooth JDY-30/31

JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth
JDY-30/31 Bluetooth

Quindi, se cerchi su ebay HC-06, sono più difficili da trovare e spesso otterrai invece JDY-30. Quindi, poiché sembravano essere più economici, ne ho acquistati un paio in realtà da Aliexpress. Dovrebbero essere compatibili.

Alcune persone e fornitori affermano che JDY-30 e JDY-31 sono uguali. Non sono così sicuro.

Ad ogni modo, quelli che ho ricevuto sembrano essere compatibili con i pin e il mio è arrivato su una scheda base simile all'HC-06.

Test: aggiornamento di aprile 2020: grazie a un commento di Krasla, ora sono in grado di connettermi al mio JDY-31 in modalità comando. Il suggerimento principale era che il comando "AT" non riceve una risposta, ma altri comandi come "AT+VERSION" funzionano correttamente. E devi aggiungere CR + LF. È interessante notare che non sono riuscito a farlo funzionare con Tera Term o Putty, ma funziona con Arduino Serial Monitor.

Ad ogni modo, quindi ho deciso di provare con Bluetooth. Utilizzando la stessa configurazione dell'HC-06 sono riuscito a connettermi con Bluetooth a 9600 baud.

Anche in questo caso la prima volta che viene accoppiato il nome del dispositivo sarà un indirizzo MAC, ma una volta accoppiato il nome Bluetooth è: JDY-31-SPP. Funziona bene.

Così ho trovato anche un altro BT chiamato JDY-31, vedi foto. Quello che mi piace di loro è che hanno i fori per un'intestazione maschio senza bisogno di una basetta. Vedi le immagini. Così ho ordinato un paio di questi.

Questa è la mia esperienza finora con i moduli Bluetooth.

Consigliato: