Documentos de Académico
Documentos de Profesional
Documentos de Cultura
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Los mdulos de bluetooth HC-05 y HC-06 son mdulos muy populares para
aplicaciones con microcontroladores PIC y Arduino. Se trata de dispositivos
relativamente econmicos y que habitualmente se venden en un formato que
permite insertarlos en un protoboard y cablearlo directamente a cualquier
microcontrolador, incluso sin realizar soldaduras. En esta entrada del blog vamos
a explicar un poco del funcionamiento de estos mdulos y como configurarlos.
Tambin abordaremos las diferencias entre el HC-05 y el HC-06.
En la foto de portada del artculo vemos de izquierda a derecha: los mdulos
HC-05 y HC-06 en formato amigable para protoboard y un mdulo HC-05 en
formato compatible con zcalos para Xbee (mdulo bluetooth bee).
1/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Mdulo HC-05 montado en una tarjeta adaptadora compatible con zcalos Xbee
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
2/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Para las pruebas y configuracin del mdulo bluetooth es conveniente tener a mano un
adaptador USB-Serial TTL como los basados en el FT232RL o circuitos similares.
Nosotros usamos las tarjetas mostradas en la fotografa para probar los comandos
descritos en este artculo.
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
3/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
4/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
5/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Realizando pruebas con un mdulo HC-06 y una tarjeta USB serial con FT-232RL
El mdulo HC-06 acepta un set muy bsico de comandos (algo raros por cierto),
que permite pocas configuraciones, pero que sin duda ser util para personalizar
este econmico mdulo y configurarlo para satisfacer las necesidades de la
aplicacin.
Los comandos que soporta son:
Prueba de funcionamiento:
Envar: AT
Recibe: OK
Configurar el Baudrate:
Envar: AT+BAUD<Numero>
El parmetro nmero es un caracter hexadecimal de 1 a c que
corresponden a los siguientes Baud Rates: 1=1200, 2=2400, 3=4800, 4=9600,
5=19200, 6=38400, 7=57600, 8=115200, 9=230400, A=460800, B=921600,
C=1382400
Recibe: OK<baudrate>
Configurar el Nombre de dispositivo Bluetooth:
Envar: AT+NAME<Nombre>
Recibe: OKsetname
Configurar el cdigo PIN de emparejamiento:
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
6/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
7/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
char rxChar;
// Variable para recibir datos del puerto serie
int ledpin = 13;
// Pin donde se encuentra conectado el led (pin 1
3)
// Configurar el arduino
void setup()
{
// Pin 13 como salida
pinMode(ledpin, OUTPUT);
// Comunicacin serie a 9600 baudios
Serial.begin(9600);
}
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
8/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
48
49
50
51
52
53
54
55
56
57
rxChar = Serial.read();
Conclusin
Como podemos observar, los mdulos HC-05 y HC-06 son bastante sencillos de
configurar para usarse con el microcontrolador de nuestra preferencia. El HC-06
es el modelo ms sencillo, presentando menos opciones para su configuracin,
pero siendo bastante util y econmico para conectar nuestros dispositivos con
microcontroladores a la PC, tablets, celulares, etc. El HC-05 por otra parte, nos
permite hacer algunas cosas que su hermano menor no permite, como enlaces
punto a punto entre dos mdulos y tambin teniendo un juego de comandos ms
completo y un poco ms formal, con algunas caractersticas interesantes como el
control de pines de GPIO.
Ambos mdulos son excelentes para proyectos escolares, de investigacin e
incluso para su integracin en equipos o prototipos en el campo profesional, sin
embargo, hay poca documentacin formal. Esperamos que este artculo sea de
utilidad para comprender mejor el funcionamiento y la configuracin inicial.
55Comentarios
Recomendar 2
GeekFactoryMxico
Compartir
Iniciarsesin
ordenarporelmsnuevo
netealadiscusin...
diego hace4das
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
9/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
diego hace4das
Tengounaduda.Laverdadquieromoverdosmotoresconelarduinoy
tambienconbluetooth.Siendosinceroyatengoelprogramaperono
puedohacerquelasmeprendanunosledscomoprueba.Podriasrevisar
micodigoyverquelefaltaparaquedelassenales?Laaplicacionque
usoesbluetoothrccontrol
#include<softwareserial.h>
intbluetoothTx=1
intbluetoothRx=0
SoftwareSerialbluetooth(bluetoothTx,bluetoothRx)
charMANDO
voidsetup(){
pinMode(13,OUTPUT)
pinMode(4,OUTPUT)//unoalmotor1directa
pinMode(5,OUTPUT)//unoalmotor1inversa
pinMode(6,OUTPUT)//unoalmotor2directa
pinMode(7,OUTPUT)//unoalmotor2inversa
Serial.begin(9600)
verms
Responder Compartir
marcoarias hace5das
Buenas...cualeselarticuloenelcualsevaavercomoconfigurardos
modulosHC05paraqueseentrelacenentreellosypuedantransmitir
datosesqueloestoyocupandoparaunproyecto..graciasymuybuen
articulo..
Responder Compartir
Brenda hace12das
MuybuenArticulo:)Gracias
Responder Compartir
Ruben
Moder. >Brenda
hace12das
Seagradecemuchotucomentario,saludos!
Responder Compartir
alfredo haceunmes
NosabesdequemanerapuedoamplificarelalcancedemiHC06
?saludos.
Responder Compartir
Ruben
Moder. >alfredo
haceunmes
Metemoquenoesposiblehacemucho,talvezdebasutilizarotra
tecnologacomoradiosXbeequetambinfuncionanvaUART.
Tambinpodrasprobarconlasiguientemodificacin:
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
10/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
http://www.instructables.com/i...
Responder Compartir
RamiroMadriaga hace2meses
Muchasgracias,fuedeutilidad.
Responder Compartir
Ruben
Moder. >RamiroMadriaga
hace2meses
Mealegrasaberlo,saludos!
Responder Compartir
Marianoski hace2meses
ERROR
Enlalnea37delcdigoqueapareceenestapginahacefaltala
comparacindentrodel"if".
if(Serial.available())queenrealidaddeberadellevarunmayora0.
esdecir:
if(Serial.available()>0)
Responder Compartir
AdrianVazquezLobato>Marianoski hace2meses
Serial.available()vienedevolviendounvalorfalsooverdadero...
nounvalornumrico.
Saludos:)
Responder Compartir
Ruben
Moder. >AdrianVazquezLobato
hace2meses
Buenastardes.
Serial.Availabledevuelveelnmerodebytesdisponibles
enelbufferserial.Lasdosformasquemencionanson
equivalentesdadoqueCyC++considerancualquier
enterodiferentede0comoverdadero.Elvalorde
serial.availablesolamenteimportasiqueremosconocer
conexactitudcuantosdatoshay.Porejemplo:
uint8_ti
//Obtenemoseltotaldedatosenbuffer
uint8_tdatos=Serial.available()
//Cicloparaleeryreenviarlosdatos
for(i=0imenorquedatosi++)
Sinembargoparecepocoprcticoyconvenientedeesta
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
11/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Sinembargoparecepocoprcticoyconvenientedeesta
forma.
Responder Compartir
Carlomurillo hace2meses
buendia
intentohacerlacomunicacinentredosplacasdearduinoUNOpor
mediodeunBTBeehc05,tengolaXbeeshieldv1.1,comopuedo
configurarloshc05comomaestro/esclavo?saludos
Responder Compartir
Guillem hace2meses
LosqueteniselmduloconelpinENysinbotn,paraentrarenModo
ATdebisconectaruncabledelasalidade3,3V(arduino)alpin34del
mdulobluetooth.EnmicasoelHC05vieneconunplsticode
proteccin,tansolohacefaltaintroduciruncablemachoparaquehaga
contactoconelpin.Deestamaneranohacenfaltapinzasnisoldaduras,
sesostieneporsisolo.RecordadtambinencruzarlospinesTXyRX.
Apartedeestoylaconexina5Vnohacenfaltamscablesniinicializar
ningnpinenmodoHigh.
ActoseguidodeverificarlaconexinyqueestamosenmodoATse
puededesconectarelpin34delVoltajeyseguiroperando.
Creoqueeslasolucinmsprcticadetodas.UnSaludo
Responder Compartir
FranciscoPerez hace5meses
Hola,hiceunproyectoconelH05yLeonardo,peronopuedoconectar
micelularconelBluetooth,losincronizo,eronuncaseestablecela
conexin,laconfiguracinqueusoeslamismaquemuestras,perosin
xito.comopuedosaberqueestafallando
Responder Compartir
davidEsquivel hace6meses
Informacinbastantetil.Graciasporcompartirla.
Responder Compartir
DanielLadino hace6meses
Buenda
Actualmenteestoyhaciendounpuentelevadizocondosseccionesque
seabrenycierrancondosmotoresdecorrientecontinuaydesde
bluetoothcontroloquecadaseccionseabraosecierreconunprograma
llamadoAPPINVENTOR(eselquepermitecrearlaaplicacionen
android,buencreoquetienesconocimientodel)ellioeseste,mi
profesorquierequeyocontrolelasseccionesdelpuentedesdevarios
celulares,porejemplouncelularabrelaseccin1delpuenteyelotro
celularabrelaseccindos,tequerapreguntar,esesoposible?el
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
12/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
celularabrelaseccindos,tequerapreguntar,esesoposible?el
moduloHC05(conpulsadorenmicaso)puederecibirlaconexinde
varioscelularesparacontrolarmiprogramaenarduino?,agradezco
infinitamentetuayudaytustutoriales.
Responder Compartir
GerardoRodriguez hace9meses
Buenastardes,
SiguiendoeltutorialheconectadoelmoduloHC05conarduinouno,pero
alenviarloscomandosenlugardeobtenercomorespuestaOK,salen
unaseriadecaracterescomoestos
EnterATcommands:
Queestarpasando?
1
Responder Compartir
Matias>GerardoRodriguez hace4meses
debestenermalconfiguradolosbaudiosenelmonitorserial
Responder Compartir
malloc69>GerardoRodriguez hace6meses
Hasconseguidosaberqueesloqueestabaocurriendo?
Responder Compartir
FranciscoAquino hace10meses
Holaatodos,quieroconectarelHC5aldsp30F4011peronoencuentro
loscomandosparaincluirlosenelprograma.
GraciasdeAntemano
Responder Compartir
gonzalo haceunao
enmipaiselmoduloylaplacaadaptadoravienenporseparadosin
soldarmipreguntaessiunarduinoshieldbluetoothesclavome
funcionariaigualqueunmodulohco6esclavo
Responder Compartir
SargeYoukai haceunao
Hola,encontrmuyinteresanteestetemaperotengounproblema,yo
tengounHC05peronomehacenada,cuandoestenmodoATy
escriboenelmonitorserial"AT"sesuponequemedeberaresponder
"OK"peronolohace,cadavezqueleescribounaordennomeresponde
quepodraestarmal?esperomepuedanayudar,saludos.
4
Responder Compartir
ChristopherBueno haceunao
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
13/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Hola,despusdepeleartodaunanochemicompaeroyyoconelHC
05,tengounaduda...todomefuncionaperfecto,peroalenviarle
AT+NAMEnomerespondenada.Sinembargo,medejacambiarleel
nombrealdispositivo.Alguiensabedondemeestoyequivocando?
Muchasgracias
Responder Compartir
CesarSanchez>ChristopherBueno hace10meses
creoquetefaltaestesignoalfinaldelNAME?
Responder Compartir
RoEspinosa haceunao
AmigocomopuedocambiarelFirmwaredeunHC06aunHC05?
Responder Compartir
jose haceunao
alguiensabeelcodigodeandroidparaenviardatosalarduinopor
ejemploescribireneltelefonoholayenlapantalladearduinomuestre
esacadenamandadaporeltelefono
Responder Compartir
ChristopherBueno>jose haceunao
pruebaconunaappquesellamablueterm.
Responder Compartir
JuanFelipeLozanoArmas haceunao
Hola,Alguiensabecomoutilizarelhc05paraunacomunicacionmastro
esclavoconunpic18f4550?
Esdecir,queunsolopicresivaytransmitadatospormediodelhc05
Responder Compartir
Ruben
Moder. >JuanFelipeLozanoArmas
haceunao
Holaestimadoamigo.
Terecomiendoquereviseselsiguienteartculoenlapginade
nuestrosamigosdewww.aquihayapuntes.com:
http://www.aquihayapuntes.com/...
Sitepuedoapoyarconalgo,porfavorindicame,yaqueyoestoy
preparandounarticulorelacionadoparanuestroblog.
Saludos.
Responder Compartir
JuanFelipeLozanoArmas>Ruben haceunao
Hola,Graciasporrespondertanrpido.
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
14/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Hola,Graciasporrespondertanrpido.
Miraloqueintentohaceresquepormediodeunaterminal
BluetoothenAndroid(BlueTerm)enviardatosalpic
18f4550yquesegnloqueenvi,elpicrealiceunacierta
actividad.despusderealizarlaactividadquemeenvia
laterminarBluetermlosresultadosdeloquehizo.
Unejemplopodriaserqueyocontroleunmotorcon
Blueterm,enviolasordenesdearrancarelmotoralpic,o
decambiarelgiro,despuesdequeelpicrealiceesto
entoncesenviaunarespuestaaelBluetermdndomelas
rpm,elconsumoenergetico,tiempoquetieneoperando
EtcEtc.
algoasiesloquequierohacerqueUNSOLOPICenviey
recivadatos.yesoesconloqueestoyteniendo
problemas
Pensenusarunmaestroyesclavoperonecesitaria2
modlosBluetoothyporconsiguientedosconexiones,2
pic,2terminalesEtc.Ylaideaesutilizarsolouno.
Esperohabermeexplicadoynohaberteagobiadocon
tantotexto.
Enfinmuchasgraciasyesperoturepuesta.
Responder Compartir
Anima haceunao
Holabuenas,noosimaginaiscuantoseagradecelainformacinsobreel
tema.
EstamosintentandoconectarunmoduloXbeeHC06conelmismo
aspectoquemostrisaqualaplacaArduinoUNO,peroporloque
hemosvisto,serequiereunaespeciedeadaptadorounashieldpara
anclarelmoduloalArduinoytodoesodisparaelpresupuesto.
Sepodraconectardeotraformadirectamentealaplacaomediante
protoboardonoesposible?Desconocamoslapeculiaridaddelos
mdulosXBee.
Graciasporadelantado!
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
15/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Responder Compartir
Ruben
Moder. >Anima
haceunao
Buenastardes.
Quisieracomentartequesiesposibleconectardirectoel
bluetoothbee,aunqueposiblementedebersagregaralgunos
cablessoldadosoconseguirlosheadersespecialesparael
mduloyelresultadopuedenosertanagradablealavista,ya
quecomohabrsvistolosheadersnosoestndar.
Puedesusarlasalidade3.3VdelArduinoyunpindeGNDpara
laalimentacindelmdulo.Porotraparte,enelpinTXdelArduino
quevaaRXdelmdulobluetoothdebersagregarcuandomenos
undivisorresistivoquerecortelos5voltsdelpina3.3Vque
requierenlosmdulosdebluetooth.ParaelpinRXdelarduino
quevienedeTXdelBluetoothnohacefaltaponernada,yaqueel
arduinoreconocelos3.3Vcomoestado"alto".
Sinomehelogradoexplicar,congustopuedespreguntarotra
vezparasermsespecfico.
Responder Compartir
Anima>Ruben haceunao
Holabuenas,muchasgraciasporlarespuesta.
Hemosrealizadolasconexionescomocomentaste,nos
hemosapaadoconeldivisorresistivodeTXArduinoa
RXdeBluetooth,aunquemidiendotensionesestepin(TX
Arduino)nosdaba4Vnosemuybienporqu(elrestode
pinessiquenosdan5V).
DetodasformasdemomentoparecequeOK.
Graciasdenuevo!
Responder Compartir
Ruben
Moder. >Anima
haceunao
Hola:
Quebuenoquefuncion:).Pruebacon
resistenciasde330y220ohms.Lade330debeir
conectadaatierraylade220debeiralpinTXde
arduino.Deesaformaelvalordelvoltajedebera
rondarlos3voltsalasalidadeldivisordevoltaje.
Elmenorvoltajepuededeberseaqueestn
demandandomuchacorrientedelpinconlos
resistoresqueestanutilizando.
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
16/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Saludos.
Responder Compartir
Anima>Ruben haceunao
Yaest.Perdonlasmolestias.
Saludos!
Responder Compartir
Ruben
Moder. >Anima
haceunao
Enhorabuena!nosvasacontarporqueno
funcionaba?
Responder Compartir
Anima>Ruben haceunao
Losbaudiosalosqueestabaconfiguradoylosque
lepedamosenelcdigoArduinonocoincidanah
lanotransmisindedatos.
Saludos!
Responder Compartir
Anima>Ruben haceunao
Holadenuevo.
Si,seguramenteseaeso,graciasporla
sugerencia.
Aunquehemosconseguidoconectaryvincularel
mdulocondispositivosAndroid(nuestroproyecto
tienequeverconestetema)hemosprobadoya
convarioscdigosdeArduinoperono
conseguimosenviarcomandosatravsdeeste
soloparaprobarsifunciona.
HemosprobadoconprogramascomoBlueTermo
BluetoothTerminalpero,aunquelaappseconecta
conelmdulo,norecibimosrespuestadelas
rdenesqueenviamos,inclusohemoselaborado
unaappenAppInventor.Demomentosolo
buscamosencenderunLED.
LoscdigosdeArduinoquehemosmiradoparece
serquefuncionanconloshc06yhc05ms
tpicos(losadaptadosaArduinomerefiero).
Pensbamosqueelproblemapodavenirdelos
baudios(segnexplicaenesteenlacesobrelas
caractersticasdelmduloel"4"corresponderia
con9600ynoel"1"comosueleserhabitual:
http://www.elecfreaks.com/wiki...perohemos
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
17/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
http://www.elecfreaks.com/wiki...perohemos
cambiadolaconfiguracinysiguesinfuncionar...
Esospodemoscambiarpasswordyname
perfectamente(baudiossuponemosquetambin
peronopodemosobservarlodirectamenteclaro).
Cmopodramostestearnuestromdulodealguna
formaparasabersipuederecibiryenviardatos
(mejoraunenAndroid)?
NospreocupaqueesteXBeepuedaplantear
diferenciasconelresto.
Recuerdoconexiones(mdulo/Arduino):GNDa
GND,VCCa3,3V,DOUT(TX)aRX,DIN(RX)a
TX.
Graciasdeverdadporlaayuda,cuestaencontrar
buenainfoycolaboracinsobreeltema.
Lo ms vendido.
Arduino UNO R3
$380.00 $360.00
HC-SR04 Sensor de distancia ultrasnico econmico
$50.00
Jumpers para protoboard 65 piezas
$65.00
Servo SG90 Tower Pro Servomotor Micro
$60.00
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
18/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Sobre nosotros
Cmo comprar?
Quines Somos?
Formas de Pago
Contacto
Distribuidores
Cursos de Arduino en Mxico
Poltica de Privacidad
Afiliados y estadsticas
Afiliados:
Visitantes:
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
19/20
4/11/2015
BluetoothHC05yHC06TutorialdeConfiguracinGeekFactory
Diseado por Elegant Themes | Desarrollado por WordPress
http://www.geekfactory.mx/tutoriales/bluetoothhc05yhc06tutorialdeconfiguracion/
20/20