The first time I bought some UART bluetooth devices, I ordered them on suntekstore.com website. Since these devices seems promising, i ordered a few more on DealExtreme for my job.
I discovered that even these boards seem identical, they had different firmwares.
The suntekstore ones has HC05 firmware, the DealExtreme ones has linvor 1.5 firmware.
The differences between them is mainly the AT command set.
Linvor 1.5 also known as HC06
This firmware offers a very limited set of AT command.
By default the baudrate is 9600 8N1.
For this firmware you have to not send LF or CR character at the end of your AT command.AT programming mode is up when your board is not paired by bluetooth devices. For this firmware, you have to copy/paste AT command since timings is important. You can send about one command per second.
Command
|
Response
|
Note
|
AT
|
OK
|
Usefull
to check connection and baudrate
|
AT+VERSION
|
Linvor1.5
|
Get
the version of the module
|
AT+BAUDx
|
OKyyyy
|
Set
the baudrate :
x can
take the following values :
|
AT+NAMEString
|
OKsetname
|
Change
bluetooth device name :
String
can be any string you want ! be creative !! (20 characters
limited)
|
AT+PINxxxx
|
OKsetpin
|
Set
the bluetooth pincode :
1234 by
default
|
And that's it !!! No other AT command.
In the next, post I will provide some links to the HC05 firmware. This one is a bit better than HC06.
In dealextreme module the Pin 24 is for connection led.
ReplyDeletethank you i will test and update
ReplyDeleteYou can also set the parity with:
ReplyDeleteAT+PN -> None
AT+PE -> Even
AT+PO -> Odd
Thanks a lot for the info. I order a few of these modules and to my surprise, they are HC-06. I have a few questions, they may be trivial, but I'm am a novice in electronics:
ReplyDelete1. How important is the value of the resistors? I mean, it seems to be a voltage divider, can you provide some info on Vin/Vout? I don't think I have these resistor values around and I would like to get started on this.
2. Will the activity led remain at pin 24? I saw some diagrams for HC-05 where the led was connected to another pin, but I guess this change is done in firmware since this are programmable I/O pins
1. http://www.magic-worlld.narod.ru/ try to calculate good values. vin 5 and vout 3.3
ReplyDelete2. led connection its done by firmware so hc05 diagrams show right pin for led
http://microsin.ru/content/view/1284/44/
ReplyDeleteINFOS for and Pictures for the
BlueFlashCmd Tools.
Gruss Holger.
If the voltage divider is for vin 5v and vout 3.3v then a Schottky/3.3v pullup divider should also work, correct?
ReplyDeleteThanks
probably !!!
ReplyDeleteHi Byron, first I'd like to thank you for all information about BT modules you have provided here and on DX website. I bought several modules on DX with linvor 1.5 fw. Unfortunately these modules work bit strange. Once everything works fine another time there are some interuptions in communication or it's not possible to establish connection. From this reason I'd like to update these modules to HC05 fw. I've downloaded original fw acording to your describtion. It wasn't possible to open LPT port, so I re-installled drivers ...//driver/win32/*.bat restarted PC, after restart it work fine(WXP, LPT1 EPP mode). In the next step I need to dump configuration constants related to concrete module, but I didn't catch how to proceed from your describtion of PSKEY command. Please,could you describe it more in detail? Will you post step by step instructions how to flash linvor to hc05 fw? thx JAN
ReplyDeleteIn fact you only have to keep your Bluetooth identifier. You can make this by script with pscli command or via the pskey tool provide by CSR
ReplyDeleteHi,
ReplyDeleteCan be used as a bridge between bluetooth and RS232 ?
My model is Linvor (EGBT-046S) from DX.
Thank You,
Best regards,
Csaba Aranyi
Hi Byron,
ReplyDeletehow do You set command mode?
I have 2 types of BT modules, for BTM0604 http://www.oemblue.com/BTM06%20class2%20standard.html there is software to set UART mode parameters and Manual with AT cmds, for the second one A18 http://www.ktlink.cn/en/product2show.asp?id=6 only pin placement, both use CSR BC417 (does the same chip on Your modules?)
The first already works as BT-RS232 bridge; to set it in cmd mode one must connect Vcc to PIO6/WLAN_Active/Ch_Data pin. Is it so in Your modules?
Vadim
Now this might be a stupid question, but it has been years since I used AT commands (when we still needed modems and a phone to connect to internet), so I forgot if e.g. "AT+VERSION" actually means that you have to type the "+" character as well
ReplyDeletehi.
ReplyDeleteis it possible to disable the pairing PIN code request of the module with HC06 fw?
since some of my devices have problems with pairing with bt passkey, i have to disable it.
thanks..
Sir you are the boss!
ReplyDeleteI have been trying to get this bluetooth adapter working with the arduino, and ended up spending almost 16hours straight just trying to interface with a pc to try the AT codes!
I will try again tomorrow, and hope for the best!
Thanks!
Thank you for support. I'm glad that all this stuff help some of you !
ReplyDeletefeel free to buy me a beer with a donation ! ;-)
It seems they are on to us :p I am unable to download bluesuite from CSR.
ReplyDeleteI am starting to get annoyed. I'm in my third year of Computer Sciences, understand all the terminology, and still can't get a $10 bt module to work.
Oh, and if I ever succeed, your beer for a week is on me :)
after a quick registration, you can find it there :
Deletehttps://www.csrsupport.com/PCSW#s7313
It seems you have found a loophole in CSR's website. Well done.
DeleteI have downloaded all the available files. I am now looking for a way to use a USB-spi controller for programming/upgrading the firmware.
It looks promising, but may take a while. (I have no parallel ports on any (working) computers :p)
I'm already on it. I'm porting frans-willem dll for buspirate.
DeleteFor now i'm able to communicate with the CSR bluecore but it's seems that the whole download procedure doesn't work ...
I think that I have some problem with endianess when I send data back to the dll...
I need some data dump of guys playing with frans-willem DLL..
I unfortunately do not have a bus pirate. After more extensive reading I think that one isn't required, since I believe I can replicate its function using an Arduino.
DeleteWe use SPI to communicate with the bluecore right? Why not just use a USB-SPI programmer, or create a custom interface using the ATMega microcontroller? If I had access to a parallel port, I probably could sniff the communication and have a better chance.
If you have an arduino board, you should take a look to frans willem work !
Deletehttps://github.com/Frans-Willem/CsrSpiDrivers
Already did :)
DeleteI also have another problem. I realized that I never tried the BT modules, even with their current firmware. While I am able to send AT, AT+PIN, AT+BAUD, and receive the correct response, I am unable to send AT+NAME, and I can't find it using bluetooth (Tried a laptop, PC with dongle, 2 phones and a WM6 PDA).
I soldered an LED with the correct resistor to PIO1 (24), and it blinks normally, and the device is able to reset.
Any ideas?
Also, even though I have yet to succeed, I had to buy you that beer (or 2, have no idea how much beer costs outside of Greece :) as a thank you for your trouble
DeleteCheers!
I managed to find a (very) old pc with an LPT port. I will try to create a programmer like yours, and give it a try. This is getting frustrating :p
ReplyDeleteI tried to understand Frans-Willem's work, (thankfully I know VB/C#), but have never heard of BlueLab. Is this part of CSR's Bluesuite? Is it downloadable?
Also, I still haven't managed to find the bluetooth module by scanning. I am beggining to think that they were part of a pair, and these were master, not slaves. I read somewhere that if the module doesn't respond to AT+NAME, then it is in fact, a master.
Damn.
Bluelab 4.1 is the SDK for developping custom firmware.
DeleteIt is NOT freely available but you should find it with google or torrent search.
For AT mode be sure that your module is NOT paired with a bluetooth device. It is a common mistake !
Never heard that a master couldn't respond to AT+NAME...
Byron, this is getting annoying :p
ReplyDeleteThe device can't be paired (even by accident - the led on 24 blinks normally). I am unable to find the module using bluetooth, I have searched using all kinds of devices, but it seems it isn't broadcasting.
I have a pair of the same devices, and have the same problem.
Do I need to pull-up/down any other pins? I have reset pulled high, and that's all.
I really have to try to downgrade the firmware to H05.
Thanks for all your help!
I got the device to (almost) pair. It was discovered once, but now is gone :(
ReplyDeleteI soldered a wire to KEY, and just left it hanging. I powered on, and touched it, and the led started pulsing at about 500ms (instead of 100ms as it usually does). I quickly searched, and found it.
Can you please confirm that it should blink at 500ms when waiting to pair? Have you seen it blink at 100ms?
Thanks!
Mine worked 1st try. It's a 121326 from DX.com.
ReplyDeleteI hooked up 5V, and its LED started blinking.
I scanned for BT devices with my android phone, and "linvor" showed up. I paired with it, passcode was 1234, and the LED went solid on.
Downloaded SENA BTerm from the marketplace, and told it to scan for devices, then connected to linvor.
When I type on the screen, I see the TX line from the module change on a scope.
Folks, I really need some advice on this, its driving me up the wall.
ReplyDeleteI have a Linvor 1.5 purchased from Ebay.
When I tried it first, it pretty much worked in all respects.
Now, it still seems to do about everything, EXCEPT it somehow seems to have lost its name 'Linvor'. Shows up by its address on my Android. Also, when I try the AT commands, all work EXCEPT for the AT+NAMEJOHN_DOE. This always brings up the response OKsetname, but doesnt actually change the name. Any idea at all what could be happening?
Like I said, the PC-to-module connection is fine, so is the wireless bluetooth. Just the issue with not being able to change (or give one) the name.
Thanks and Regards!
hello,
DeleteFor some android phone (such as my HTC Desire) the class 0000 0000 is not pairable ! so you need to change it with PStool.exe
For the name of your device you may need to delete your module in your windows environment... I think that some registry key store the name of your bluetooth module according to your bluetooth MAC address.
Hi Byron, thanks for the response.
DeleteAn update...
For some reason, the above was happening while I was using Hyperterminal (copy-pasting into it from notepad). I used sscom32E.exe, and all is well.
Also, thanks for the tip on PStool.
Regards,
Anand Dhuru
hello, i have the same problem, i can change the name usin AT+NAME, and i cant see in my, pc, tablet, and phones
DeleteHello. How to control In/Out ports if i have Linvor 1.5 software ? Regards, Karol
ReplyDeleteHello Byron,
ReplyDeleteDo you know why it is showing multiple serial ports? It is really messing up the Arduino IDE. It still has the Linvor firmware on the device. I really like the simplicity of this firmware, but the multiple serial ports with serial ports that don't work right is making it a pain to work with.
Thanks,
Frnak
Good day.
ReplyDeleteDid you know - is there a firmware version with hardware flow control?
(years later) flow control needed here too
DeleteHello, if linvor 1.5 have mac address or spp/uuid? where can i find it in csr bluetooth module? i have HC-06 ;(
ReplyDeleteHi Byron and everybody,
ReplyDeleteHow can I change BaudRate: I want to set 7 bit instead 8 bit ?
Thank's for help
Not directly related (mine is the breakout version) but may be useful to some. Found and changed a simple Arduino sketch to allow AT commands to be sent to the Bluetooth adapter.
ReplyDeleteLink to the code: http://eclipse.clinertech.com/arduino/bluetooth/blth.html
I really thank you. It was usefull to set up my new livor boards, to work with a MegaSquirt. Thanks!
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteHello,
ReplyDeleteI have WML-C40AH module, can anyone BlueRadio (BR-C40#) or other firmware posting for this module?
This comment has been removed by the author.
ReplyDeleteNice blog!
ReplyDeleteI have the Linvor module. Can send and receive from terminal but can not get any response from AT commands....?
Have tried unpairing the module on the PC and added \n and \r\n to AT in case it's HC-05 firmware but no joy.
Also tried powering the module with Pin 26 and Pin 34 to force the module to forget last pair but again no luck.
Any help much appreciated.
Hi. Nice Blog. I need to establish a 7bit -> 1200,7,Odd,1 connection
ReplyDeleteI cant, but I just connected a 1200,8,Odd,1
Any idea why not 7 bits??
Hi Byron
ReplyDeleteI will send you beer money if you answer my question.
When I change the baud rate using AT+BAUD8, I am changing the bluetooth baud not the arduino baud. The arduino baud stays at 9600.
If there a way to change the arduino baud? I need that to be at 115200
Hi !
DeleteCould you tell me what kind of response you got from the module ?
It should be OK115200.
If you got the right response, your module should be good when you reset your device or leave the AT mode (just try to pair it with a blutooth device).
Hi Byron
ReplyDeleteYes it does do into the higher baud on the bluetooth side. So I do get a ok115200.
But on the arduino side(with the wires) it stays at 9600.
PLEASE HELP ME >>>>>
ReplyDeleteI TRY EVERY THINK TO GET RESPONSE FROM BLUETOOTH
EVERY TIME I SEND AT COMMAND NO RESPONSE I GET
T USE HYPER TERMINAL & PUTTY BUT THE SAME PROBLEM
HELP ME>>>>
Hi Byron, Thank you so much for supplying this information. This is very helpful!
ReplyDeleteI have an HC-06 module. It was working fine, and then I enabled 460800 mode - now I cannot communicate with it- I only see garbage in transmission.
Is there a way to reset the factory baud rate with this module? maybe with a pin connection upon power-up?
Thank you,
Brent
Since you don't succed to communicate with this baudrate, I'm affraid that you have to acces your module with spi interface and try to modify some pskey with pskey tools
DeleteThanks. I noticed the HC-05 allows you to pull a pin high to force the 38400 baud rate. Is the HC-06 different?
DeleteI'll look at the pskey tools. Thanks again!
Hi, can someone tell whether the device supports baudrate 8192?
ReplyDeleteHi Byron, Thank you so much for supplying this information. This is very helpful!
ReplyDeletebut i m unable to get response from my hc05 module ...
please suggest asap
hi i need help, i have a EGBT-046S module and I tried to set role to MASTER with comand AT+ROLE=1 where 1 is a master, but the module not respond
ReplyDeletedear sir, plz help me ...my JY-MCU linvor 1.5 showing LED steady RED by connecting over Putty but not getting connected over android mobile. I tried various apk like arduino commander, microcontroller BT, MI device control....APP inventor made BT apk...plz help me....
ReplyDeleteThis device is horrible. The one I have answers as linvor 1.8 and is supposed to be an HC-06, but no matter what I do, I can't get the bluetooth function to send or receive anything. I thought it was a baud rate issue, but it's not. I cycled through all the baud rates. I flipped rx/tx but still nothing. The lack of documentation when you order the product is pathetic.
ReplyDeleteplz any one resolve my issues....is there anything related to master slave funda.....
ReplyDeleteHi! First of all, thanks for the information. I purchased two BT modules with HC-06 firmware. Can they work as Master device or i have to download the HC-05 firmware. Thanks again!
ReplyDeleteDeveloping a wireless Audio or Data accessory can become a tedious, expensive and risky project. By offering a fully integrated solution with certifiedBluetooth Module the associated development kits and Smart Phone Apps
ReplyDeleteset this bluetooth to 1382400 baud, now do not get to communicate with bluetooth because I have a program that trebaje at that speed.
ReplyDeletehow do I return to a "normal" speed 9600 baud.
greetings and thanks for the attention :)
Thank you so much, your hint with Copy-Paste
ReplyDeleteHI everybody!
ReplyDeletehow to connect hc05 wit hc 06 ?
thank!
I set my JY MCU (BT Board V1.05) baud rate 9600 to 460800.
ReplyDeleteThe response from JY MCU was OK460800.
But now it is not communicating to normalize (9600). (Previously i tried for to 115200 and normalize successful)
So please guide how to chance baud rate from 460800 to 9600.
thanks alot for documenting the linvor 1.5 commands! priceless info
ReplyDeleteThis comment has been removed by the author.
ReplyDelete+1 to folks not able to set name on linvor slave modules. I have about 30 of these all working nicely. After two misbehaved I found they would not respond to set name or version command but would respond to AT and AT+PIN commands. They were also no longer discoverable by other bluetooth devices. it turned out I was driving the modules with 3.1V which is on the threshold of them working. Enough power to satisfy some AT commands but not enough for others....
ReplyDeleteMasterCoder, I have the same exact symptoms as you, but I'm driving 5.03 volts into the unit. I'm actively searching for a solution.
Deletehi guys
ReplyDeletei connected a hc 06 bluetooth module with my phone using sena bterm
but i m getting funny character
i ve set the baudrate to 9600
what did i miss?
Hi guys,
ReplyDeleteI ended up buying JY-MCU HC-06(by mistake), if I have followed this blog correctly it means by changing firmware I can change HC-06 to HC-05? Is there HW difference?. I intent to use it with Arduino which needs to have both modes Master and Slave. This would really help me
Thanks
VU2IIA
Does any one have the source code for th HC05 or HC06 ?
ReplyDeleteI want to do something very simple which I could not find anywhere ...
I want the led to be off when not connected and on when connected - why ? - this will enable me to turn on a device (on led) when i connect to an approved bt phone (after pairing) - i.e unlock my car!!! open my door!!! - no Arduino - no CPU - just this simple BT module .
Can anyone pls pls help me - this idea is free for anyone .
pls contact me if there is a simple way to have one of the pins on these module 1 when paired . very simple - pls email me at moriszen[AT]gmail[DOT]com.
Thanks!!!!
I was wondering if,we purchase just BC417 ext chip and one EEPROM(for storing stack) and integrating it on breadboard(instead of purchasing HC-06 module). Can we flash this integrated module(on breadboard) with some firmware and make it work as HC-06 module. It will be big college project if we can do so !!! Is it possible ?
ReplyDeleteHi
ReplyDeleteIs it possible to read the software from another module?He wants to make copies of acting ?
HOW TO SEND AND RECEIVE DATA FROM MY MOBILE TO BLUETOOTH DEVICE. EVERYTHING IS WORKING FINE, BUT I CAN'T SEND DATA TO THE BLUETOOTH DEVICE
ReplyDelete