tag:blogger.com,1999:blog-13226776087605216442024-03-17T06:50:18.109+01:00Byron's BlogByron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.comBlogger7125tag:blogger.com,1999:blog-1322677608760521644.post-70676208017608825482014-04-12T14:47:00.001+02:002014-04-12T15:01:17.770+02:00I need workHi guys !!<br />
<br />
I would like to give you some news.<br />
It's been a long time since I don't post anything over there.<br />
As some of you already know, my private life is a bit complicated and I have to fight against financial difficulties.<br />
So... If you need some C, java, embedded development for a short period of time, i can be your man !<br />
Please consider this proposal as freetime job.<br />
Just let me know.<br />
<br />
Thank you for all the comments you gave me for my work.
RobinByron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.com12tag:blogger.com,1999:blog-1322677608760521644.post-49435440340412854702012-01-26T13:26:00.000+01:002012-02-08T15:27:21.004+01:00[DRAFT] Byron's programmer details<div>
<br />
<br />
<br />
<br />
Hello,<br />
This post will talk about the conception of my programmer. Thank's to my colleague Alexis, we think about a cool way to flash 20 Linvor module with HC05 firmware.<br />
The goal was to not have to solder all these modules to program them.<br />
So first, here comes the LPT programmer. Since I'm a kind of sniper with my glue gun, I decided to solder it without PCB neither protoboard.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNvsokeZwhnf6LI0ZfgFgRfKMkqEwE6ED6_TMHwvAV3AfFnbY6W78gkoiyh2fhzu4Lkb92iMZjJitwJbwBw8Do59HEsGK0ZrQ-hFhIL6QLtNAJ5i8x4ySlymqasbyPdyP6T880RJuqVbjD/s1600/IMAG0053.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="191" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNvsokeZwhnf6LI0ZfgFgRfKMkqEwE6ED6_TMHwvAV3AfFnbY6W78gkoiyh2fhzu4Lkb92iMZjJitwJbwBw8Do59HEsGK0ZrQ-hFhIL6QLtNAJ5i8x4ySlymqasbyPdyP6T880RJuqVbjD/s320/IMAG0053.jpg" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX1ERto3al0NzqAbhfY0BHFUPNLGuFe8OTGxN2lsls6adiggLe35jwOJH6fRAgi1U-pdsztep8_Yagv1cDWpr7NvpiQZd166_U7I2LLl9CDlRJbur0Ek2wxBVEDG01MJKb3V_v0oQMwy3-/s1600/IMAG0054.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="191" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX1ERto3al0NzqAbhfY0BHFUPNLGuFe8OTGxN2lsls6adiggLe35jwOJH6fRAgi1U-pdsztep8_Yagv1cDWpr7NvpiQZd166_U7I2LLl9CDlRJbur0Ek2wxBVEDG01MJKb3V_v0oQMwy3-/s320/IMAG0054.jpg" width="320" /></a></div>
As Steve Jobs can no longer say : "It's AMAZING, uh ?" (RIP)<br />
<br />
<div style="text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Concerning the case, I wanted to ensure an excellent pin contact with the module. I opted for some test pins (with spring). The hard part was to make pretty sexy and reliable.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiTWVRWVSKeKi7ka7CP8k6AIdLnLntlJuswm-ahLf3___WVnmgBf4Zi8MfygAb3CbpLeeDN3fg-ygFnLCL5QtOqS3PzHUKdyl4fs0LfYtde7fAOtDv4RP4l6wEYVX69sFWXxIckOrswnA7/s1600/P1040778.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiTWVRWVSKeKi7ka7CP8k6AIdLnLntlJuswm-ahLf3___WVnmgBf4Zi8MfygAb3CbpLeeDN3fg-ygFnLCL5QtOqS3PzHUKdyl4fs0LfYtde7fAOtDv4RP4l6wEYVX69sFWXxIckOrswnA7/s320/P1040778.jpg" width="320" /></a></div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKTJR_srYBV4Hx6Of48QqqsoNjq1QLNxl-WnNj0U2dkRui7HcLcX-qO0omsxlRgiV43caswdsVPqe4882_TH-jptt9GoMjInSKPvJPVp-Ke0Z4rbt0pdKfYcihQVy9l2hl5SOeFnifTaaY/s1600/IMAG0149.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="191" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKTJR_srYBV4Hx6Of48QqqsoNjq1QLNxl-WnNj0U2dkRui7HcLcX-qO0omsxlRgiV43caswdsVPqe4882_TH-jptt9GoMjInSKPvJPVp-Ke0Z4rbt0pdKfYcihQVy9l2hl5SOeFnifTaaY/s320/IMAG0149.jpg" width="320" /></a></div>
As you can see I just add a knob soldered on a pogo pin.<br />
This can facilitate the module insertion and provide a funny way to reset the bluetooth chip !<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwLlfccxfdi86-m49PM3n242BXBph-gmKjqNq4qR7Aava5T5Tv3ncf_ih70vqVQglqJvvNiTvTa69c9rhZxHvSPjEYKTa5ZykCE35WTqZE54_AAqXVleU7uye_UJWORFepHTmAb4ITKS7x/s1600/IMAG0057.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="191" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwLlfccxfdi86-m49PM3n242BXBph-gmKjqNq4qR7Aava5T5Tv3ncf_ih70vqVQglqJvvNiTvTa69c9rhZxHvSPjEYKTa5ZykCE35WTqZE54_AAqXVleU7uye_UJWORFepHTmAb4ITKS7x/s320/IMAG0057.jpg" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br /></div>Byron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.com60tag:blogger.com,1999:blog-1322677608760521644.post-32018288246882164222011-09-30T22:37:00.004+02:002021-12-02T09:56:33.621+01:00Flashing a new firmwareI hope you had a good time soldering your programmer.<br />
<br />
I take the time to refine mine to make a bit more sexy !<br />
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEickbZN-Y0gEcZeC3e6rrMmqtavnEjrMfI6TGdGhKGpHXnaCM4YEoenpjWcC6xaPG9bwsD0yzGpjoegZE_vJ81nO50C_1yFp4XSmM0Yd2FkCttTSSNa04RAOEErxboUferRnfX-cP6AnRE6/s1600/P1040772.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEickbZN-Y0gEcZeC3e6rrMmqtavnEjrMfI6TGdGhKGpHXnaCM4YEoenpjWcC6xaPG9bwsD0yzGpjoegZE_vJ81nO50C_1yFp4XSmM0Yd2FkCttTSSNa04RAOEErxboUferRnfX-cP6AnRE6/s320/P1040772.jpg" width="320" /></a></div>
<br />
I show you the ugly part too : <span class="Apple-style-span" style="background-color: white; font-family: inherit;">(<span class="Apple-style-span" style="color: #333333;"><span class="hps">I'm a little</span> <span class="hps">proud)</span></span></span><br />
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW33F20Wz7RelWMPWxuQJvt02e9Tre96RexRs4udKbwHpNQvrQBhOJ4SwgBCwEicremSkoKBhXoK29tdTaah_1Vr9noCvuTR0nE-KvOfm5JEN3ZCEulbWvTAmoXQUDnXuONkjyUDMshmV6/s1600/P1040775.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW33F20Wz7RelWMPWxuQJvt02e9Tre96RexRs4udKbwHpNQvrQBhOJ4SwgBCwEicremSkoKBhXoK29tdTaah_1Vr9noCvuTR0nE-KvOfm5JEN3ZCEulbWvTAmoXQUDnXuONkjyUDMshmV6/s320/P1040775.jpg" width="320" /></a></div>
<br />
So !!!! are you ready ?<br />
We have to test it a bit before trying to upload some cool stuff in it.<br />
First you can play a little with the PSTool. But I prefer command line.<br />
<br />
<span class="Apple-style-span" style="color: #3d85c6; font-size: large;"><b><u>Saving your own firmware :</u></b></span><br />
You can find in the Bluelab/Tools/bin directory, a tool to make a extraction of the firmware.<br />
You can download your firmware with the following command :<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">BlueFlashCmd -DUMP my_saved_firmware</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br /></span><br />
<span class="Apple-style-span" style="font-family: inherit;">The BlueFlashCmd should create in your current directory, two files called </span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">my_saved_firmware.xdv</span><span class="Apple-style-span" style="font-family: inherit;"> and </span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">my_saved_firmware.xpv</span><span class="Apple-style-span" style="font-family: inherit;">. </span><br />
<span class="Apple-style-span" style="font-family: inherit;"><br /></span><br />
<span class="Apple-style-span" style="font-family: inherit;">Take care of these files, they can be useful if you missed something in the next steps.</span><br />
<span class="Apple-style-span" style="font-family: inherit;"><br /></span><br />
<span class="Apple-style-span" style="font-family: inherit;">If you don't manage to extract these files, DO NOT PROCEED FURTHER. I have to make a little disclaimer, i will not be responsible if you broke your bluetooth module, please be careful, don't do thing you don't understand. Ask me before if you have any doubt.</span><br />
<span class="Apple-style-span" style="font-family: inherit;"><br /></span><br />
<span class="Apple-style-span" style="color: #3d85c6; font-size: large;"><b><u>Saving your personal bluetooth module parameters :</u></b></span><br />
<span class="Apple-style-span" style="font-family: inherit;">One another cool program is </span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">pscli.exe</span>. CSR firmware contains some special parameters that can be dump, upload, modify by <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">pscli.exe</span><span class="Apple-style-span" style="font-family: inherit;"> and </span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">PSTool.exe</span><span class="Apple-style-span" style="font-family: inherit;">.</span><br />
<span class="Apple-style-span" style="font-family: inherit;"><br /></span><br />
I will not describe each PSKEY as you can have useful information via <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">PSTool</span>.<br />
pscli.exe can extract a set of PSKEY by passing PSKEY queries in a config file.<br />
<br />
The goal is to save your bluetooth UUID and some crystal calibration data to restore them after the firmware download.<br />
<br />
You have to know that downloading my firmware to your module will make a perfect copy of my module. So if you planned to make several HC05 modules you have to make them unique if you want to pair them together.<br />
<br />
The PSKEY query file (data.psq) is made like this :<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// PSKEY_BDADDR</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">?0001=</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// PSKEY_ANA_FTRIM</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">?01f6=</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// PSKEY_ANA_FREQ</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">?01fe=</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br /></span><br />
<span class="Apple-style-span" style="font-family: inherit;">Each line starting by a </span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">?</span><span class="Apple-style-span" style="font-family: inherit;"> is a query to grab the corresponding PSKEY stored in your module.</span><br />
You can invoke the following command to stored those PSKEY in your computer :<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">pscli query data.psr data.psq</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br /></span><br />
<span class="Apple-style-span" style="font-family: inherit;">Some explanations ? Be careful ! 3 parameters :</span><br />
<br />
<ul>
<li>1st parameter : The command query</li>
<li>2nd parameter : The response file</li>
<li>3rd parameter : The query file</li>
</ul>
<div>
Do you see it ? you have to pass the the output file (data.psr) before the input file (data.psq). If you change this order, you will delete the psq file :-/</div>
<div>
<br /></div>
<div>
You can check the data.psr file to verify that you manage to get these PSKEY with your text editor.</div>
<div>
<br /></div>
<div>
<span class="Apple-style-span" style="color: #3d85c6; font-size: large;"><b><u>Flashing another firmware :</u></b></span></div>
<br />
Flashing the firmware, you can simply invoke that command :<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">BlueFlashCmd HC05</span><br />
<span class="Apple-style-span" style="font-family: inherit;">please notice that you should have the following HC05.xpv and HC05.xdv files in your current directory.</span><br />
Be patient and take care that everything is working well.<br />
<br />
<br />
<div>
<span class="Apple-style-span" style="color: #3d85c6; font-size: large;"><b><u>Restoring your personal data :</u></b></span></div>
<div>
At this point you have a perfect copy of my own module.</div>
<div>
You had to restore your Bluetooth address and crystal factory setting to your module.</div>
<div>
This can be done with this command :</div>
<div>
<div>
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">pscli merge data.psr</span></div>
</div>
<div>
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br /></span></div>
<div>
<span class="Apple-style-span" style="font-family: inherit;">The data.psr file is the one that you created before.</span></div>
<div>
<span class="Apple-style-span" style="font-family: inherit;"><br /></span></div>
<div>
<span class="Apple-style-span" style="font-family: inherit;">Et voilà !!!</span></div>
<div>
<span class="Apple-style-span" style="font-family: inherit;">Please don't hesitate to comment this post if you have any question. You would be gentle to share this information if it helps you.</span></div>
<div>
<span class="Apple-style-span" style="font-family: inherit;">And don't forget to donate if you want to thank me !</span></div>
<div>
<br /></div>
You can download those files in the following link :<br />
<a href="https://drive.google.com/file/d/0B0vPEqAPVPICWndKVm85Z3VyUkE/view?usp=sharing&resourcekey=0-wFH5hsKe6ScD6NKY4JzSuw" target="_blank">Google Drive</a><br />
<a href="http://www.4shared.com/zip/44O3SFhM/update.html" target="_blank">4shared</a><div><br />
<br /></div>Byron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.com191tag:blogger.com,1999:blog-1322677608760521644.post-28249854642915875622011-09-28T09:07:00.001+02:002011-10-04T18:17:48.979+02:00Upgrade your bluetooth module<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgmfCM2IUAtZ4XvdAEFuwUB0w3dTK7oic9-0Brh-J486A0MyWglEsTO1LM0qaGX3kAR-148UtlLu9j83yPwGVH53dsNbX4X7qLjA0KJXx-HoS_Gr80PRnK28ug59KYuS2A-NNWR9hDfl0l/s1600/pinout.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgmfCM2IUAtZ4XvdAEFuwUB0w3dTK7oic9-0Brh-J486A0MyWglEsTO1LM0qaGX3kAR-148UtlLu9j83yPwGVH53dsNbX4X7qLjA0KJXx-HoS_Gr80PRnK28ug59KYuS2A-NNWR9hDfl0l/s320/pinout.jpg" width="288" /></a></div>
Hello,<br />
<br />
Here we are. In the post, you will find (i hope) useful information to upgrade your module with HC05 firmware.<br />
<br />
<a href="http://www.csrsupport.com/">CSR support website</a> provides a complete SDK with very useful tools. You only have to register to access to <a href="https://www.csrsupport.com/document.php?did=31600">bluesuite 2.4</a> download page.<br />
<br />
During the installation, let's talk about the pinout needed to gain write access to the internal firmware.<br />
<br />
CSR BC417 chip native firmware flashing is possible by SPI connection.<br />
<br />
SPI pinout :<br />
<br />
<ul>
<ul>
<li><div style="margin-bottom: 0cm;">
PIN16 : CSB</div>
</li>
<li><div style="margin-bottom: 0cm;">
PIN17 : MOSI</div>
</li>
<li><div style="margin-bottom: 0cm;">
PIN18 : MISO</div>
</li>
<li><div style="margin-bottom: 0cm;">
PIN19 : CLK</div>
</li>
</ul>
</ul>
<div style="margin-bottom: 0cm;">
On PC side, CSR toolkit uses LPT port to emulate SPI protocol.
</div>
<div style="margin-bottom: 0cm;">
With few resistor, you can make your own programmer.</div>
<div style="margin-bottom: 0cm;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPNoTFV7h4DWCpmZRvdMRZ5d5879-m55HMk-pXlhWRQEC1O0OM-aKPLsy_ITS3Y9MxQA_2dD5f-E4x4wlQD6MjN3WDKkNd7u2e3TBpbKTZaEq-buY2PSPLEHpXhY844dav2dQGEktGvAD7/s1600/spi.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="227" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPNoTFV7h4DWCpmZRvdMRZ5d5879-m55HMk-pXlhWRQEC1O0OM-aKPLsy_ITS3Y9MxQA_2dD5f-E4x4wlQD6MjN3WDKkNd7u2e3TBpbKTZaEq-buY2PSPLEHpXhY844dav2dQGEktGvAD7/s400/spi.jpg" width="400" /></a></div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
You will need a 3,3 V power source, I opted for a USB 5V with 3,3 V regulator.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
When it's done, you will be ready to read the next post about firmware upgrading commands.</div>
Byron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.com76tag:blogger.com,1999:blog-1322677608760521644.post-55946866825225826532011-09-27T17:54:00.000+02:002011-09-30T23:38:03.665+02:00HC05 Firmware<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWthh9HiecPT7kqp8VUWK5J1LhoeNdkoGSuWT33ZP_xw7eAkW_a1BS_VGH5anKgGSJJ07xwcWAkH7Afn3iuzRJmfah-usF7QZMIlUbC9JpEv3hRDobb1pmocokwwHqPfOZN_KPji72IZrA/s1600/T1JFFEXkXeXXaq5X6X_084144.jpg_310x310.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWthh9HiecPT7kqp8VUWK5J1LhoeNdkoGSuWT33ZP_xw7eAkW_a1BS_VGH5anKgGSJJ07xwcWAkH7Afn3iuzRJmfah-usF7QZMIlUbC9JpEv3hRDobb1pmocokwwHqPfOZN_KPji72IZrA/s1600/T1JFFEXkXeXXaq5X6X_084144.jpg_310x310.jpg" /></a><br />
<div style="margin-bottom: 0cm;">
Hello,</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Let's take a look to the <b>HC05</b>
firmware.</div>
<div style="margin-bottom: 0cm;">
This one offers a wider range of AT
command set.
</div>
<div style="margin-bottom: 0cm;">
With these AT commands you can set the
module to master or slave devices.
</div>
<div style="margin-bottom: 0cm;">
I will not describe all the AT command
since you can refer to online documentation.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Before going on, you had to know that
entering in the AT mode is a bit more difficult with <b>HC05</b>
firmware.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
This firmware provides 2 ways to
activate AT mode :
</div>
<div style="margin-bottom: 0cm;">
The first way is described as below :
</div>
<ul>
<ul>
<li><div style="margin-bottom: 0cm;">
set low level on PIN34</div>
</li>
<li><div style="margin-bottom: 0cm;">
Supply power to the module</div>
</li>
<li><div style="margin-bottom: 0cm;">
set high level on PIN34</div>
</li>
</ul>
</ul>
<div style="margin-bottom: 0cm;">
Then the module will enter on AT mode
without your configured baud rate (default : 9600 8N1)</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
The second way :</div>
<ul>
<ul>
<li><div style="margin-bottom: 0cm;">
set high level on PIN34,</div>
</li>
<li><div style="margin-bottom: 0cm;">
Supply power to the module</div>
</li>
</ul>
</ul>
<div style="margin-bottom: 0cm;">
The module will ALWAYS enter in AT mode
with a 38400 baud rate (8N1).</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
The second way is kind useful if you
don't remember your configured baud rate.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
As you probably notice, AT mode can be
reached only when PIN34 is high.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Moreover sending AT commands is
different from the HC06 firmware (Linvor). In HC05 firmware you have
to send CR and LF after each command.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
For your information, here comes some
useful AT commands :</div>
<ul>
<ul>
<li><div style="margin-bottom: 0cm;">
<span class="Apple-style-span" style="color: #3d85c6;">AT\r\n </span> AT<span class="Apple-style-span" style="color: #6fa8dc;"> </span>test command should
respond OK\r\n</div>
</li>
<li><div style="margin-bottom: 0cm;">
<span class="Apple-style-span" style="color: #3d85c6;">AT+ROLE=1\r\n</span> Set master mode</div>
</li>
<li><div style="margin-bottom: 0cm;">
<span class="Apple-style-span" style="color: #3d85c6;">AT+ROLE=0\r\n</span> Set slave mode</div>
</li>
<li><div style="margin-bottom: 0cm;">
<span class="Apple-style-span" style="color: #3d85c6;">AT+VERSION?\r\n</span> Get the firmware
version</div>
</li>
<li><div style="margin-bottom: 0cm;">
<span class="Apple-style-span" style="color: #3d85c6;">AT+UART=115200,1,2\r\n</span> Set the baud
rate to 115200 (8E2)</div>
</li>
<li><div style="margin-bottom: 0cm;">
<span class="Apple-style-span" style="color: #3d85c6;">AT+PIO=10,1\r\n</span> Set PIO10 to high
level</div>
</li>
<li><div style="margin-bottom: 0cm;">
…</div>
</li>
</ul>
</ul>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Further information can be found in
this <a href="http://elecfreaks.com/store/download/datasheet/Bluetooth/HC-0305%20serail%20module%20AT%20commamd%20set%20201104%20revised.pdf">documentation</a>.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
That's it for now...</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
The next article will answer this question : <i>Can I upload a HC05 onto a linvor module ?</i></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
Byron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.com50tag:blogger.com,1999:blog-1322677608760521644.post-63009207997415172702011-09-27T08:50:00.001+02:002012-01-25T21:53:17.566+01:00One board... several firmwares<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHwE_lczzt-fpH5uP8cAnBCHYjlkXk1YkDBR-qxuDGD0zP2BiZu_0sIKWsP864ldyEgfWXjPY-rW5jsYWm1XSeW6l79OJOuzqbKO8S3EqhpIuWWxmygguT3G1LpFLkVFroCiCtChytUAwm/s1600/HC05.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHwE_lczzt-fpH5uP8cAnBCHYjlkXk1YkDBR-qxuDGD0zP2BiZu_0sIKWsP864ldyEgfWXjPY-rW5jsYWm1XSeW6l79OJOuzqbKO8S3EqhpIuWWxmygguT3G1LpFLkVFroCiCtChytUAwm/s320/HC05.png" width="244" /></a>Hi !<br />
<br />
The first time I bought some UART bluetooth devices, I ordered them on <a href="http://suntekstore.com/wireless-bluetooth-transceiver-module-rs232-%7C%7C-ttl.html">suntekstore.com</a> website. Since these devices seems promising, i ordered a few more on <a href="http://www.dealextreme.com/p/wireless-bluetooth-rs232-ttl-transceiver-module-80711">DealExtreme</a> for my job.<br />
<br />
I discovered that even these boards seem identical, they had different firmwares.<br />
<br />
The suntekstore ones has HC05 firmware, the DealExtreme ones has linvor 1.5 firmware.<br />
<br />
The differences between them is mainly the AT command set.<br />
<br />
<b><u>Linvor 1.5</u> </b>also known as <b>HC06</b><br />
This firmware offers a very limited set of AT command.<br />
By default the baudrate is 9600 8N1.<br />
<br />
For this firmware you have to <b>not </b>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.<br />
<br />
<br />
<table cellpadding="2" cellspacing="0">
<tbody>
<tr>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: 1.00pt solid #808080; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0.05cm;" width="127"><div align="CENTER" style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;"><b>Command</b></span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: 1.00pt solid #808080; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0.05cm;" width="148"><div align="CENTER" style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;"><b>Response</b></span></span></div>
</td>
<td style="border: 1.00pt solid #808080; padding: 0.05cm;" width="327"><div align="CENTER" style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;"><b>Note</b></span></span></div>
</td>
</tr>
<tr>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="127"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">AT</span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="148"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">OK</span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: 1.00pt solid #808080; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0.05cm; padding-top: 0cm;" width="327"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">Usefull
to check connection and baudrate</span></span></div>
</td>
</tr>
<tr>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="127"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">AT+VERSION</span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="148"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">Linvor1.5</span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: 1.00pt solid #808080; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0.05cm; padding-top: 0cm;" width="327"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">Get
the version of the module</span></span></div>
</td>
</tr>
<tr>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="127"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">AT+BAUD<span style="color: red;">x</span></span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="148"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">OK<span style="color: #ffcc00;">yyyy</span></span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: 1.00pt solid #808080; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0.05cm; padding-top: 0cm;" width="327"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">Set
the baudrate :</span></span></div>
<div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: small;">x</span></span></span> <span style="font-family: Courier;"><span style="font-size: small;">can
take the following values :</span></span></div>
<ul type="DISC">
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">1</span></span></span> <span style="font-family: Courier;"><span style="font-size: x-small;">for </span></span><span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">1200</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">2</span></span></span>
<span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">2400</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps</span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">3</span></span></span>
<span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">4800</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">4</span></span></span>
<span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">9600</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">5</span></span></span>
<span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">19200</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">6</span></span></span>
<span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">38400</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">7</span></span></span>
<span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">57600</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">8</span></span></span> <span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">115200</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">9</span></span></span> <span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">230400</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">A</span></span></span> <span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">460800</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">B</span></span></span> <span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">921600</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps </span></span></div>
</li>
<li><div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: x-small;">C</span></span></span> <span style="color: #ffcc00;"><span style="font-family: Courier;"><span style="font-size: x-small;">1382400</span></span></span><span style="color: blue;"><span style="font-family: Courier;"><span style="font-size: x-small;"> </span></span></span><span style="font-family: Courier;"><span style="font-size: x-small;">bps</span></span></div>
</li>
</ul>
</td>
</tr>
<tr>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="127"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">AT+NAME<span style="color: red;">String</span></span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="148"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">OKsetname</span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: 1.00pt solid #808080; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0.05cm; padding-top: 0cm;" width="327"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">Change
bluetooth device name :</span></span></div>
<div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">String
can be any string you want ! be creative !! (20 characters
limited)</span></span></div>
</td>
</tr>
<tr>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="127"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">AT+PIN<span style="color: red;">xxxx</span></span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: none; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0cm; padding-top: 0cm;" width="148"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">OKsetpin</span></span></div>
</td>
<td style="border-bottom: 1.00pt solid #808080; border-left: 1.00pt solid #808080; border-right: 1.00pt solid #808080; border-top: none; padding-bottom: 0.05cm; padding-left: 0.05cm; padding-right: 0.05cm; padding-top: 0cm;" width="327"><div style="border: none; padding: 0cm;">
<span style="font-family: Courier;"><span style="font-size: small;">Set
the bluetooth pincode :</span></span></div>
<div style="border: none; padding: 0cm;">
<span style="color: red;"><span style="font-family: Courier;"><span style="font-size: small;">1234</span></span></span> <span style="font-family: Courier;"><span style="font-size: small;">by
default</span></span></div>
</td>
</tr>
</tbody></table>
<br />
<div>
<br />
And that's it !!! No other AT command.<br />
<br />
In the next, post I will provide some links to the HC05 firmware. This one is a bit better than HC06.</div>Byron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.com75tag:blogger.com,1999:blog-1322677608760521644.post-65606036418183766842011-09-24T22:06:00.000+02:002011-09-27T08:54:38.787+02:00Some words about me !Hi folks,<br />
<br />
So, here we go ! My first message on my first blog...<br />
<br />
Why this blog ? For whom ?<br />
<br />
Since I decided to take a little time for realised few projects I dreamt a long time ago, since no one takes the time to do them for me, I have to do this myself if I want to make it real.<br />
<br />
For your information, I'm french, 35 years old, engineer in embedded programming.<br />
Please be indulgent for my English skill.<br />
<br />
So !!! The reason why I start that blog is to share some information about <a href="http://www.dealextreme.com/p/wireless-bluetooth-rs232-ttl-transceiver-module-80711">CSR bluetooth board</a>. Some of you may have exchange some word on <a href="http://club.dealextreme.com/forums/Forums.dx/Forum.80711">dealextreme forum</a> (nickname Byron76).<br />
<br />
I realized that we can do a lot of cool stuff we that device... but it's a bit hard to find some resource and it's hard to get any help to start developing Bluecore4 chip ! Hope this blog we help some of you...<br />
<br />
Feel free to encourage me buying me a beer, some electronic gadgets or other stuff by cliking this button. It's not mandatory, don't blame me.<br />
<br />
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input name="cmd" type="hidden" value="_s-xclick" /><input name="hosted_button_id" type="hidden" value="FCWZARVLB3Z5Y" /><input alt="PayPal - The safer, easier way to pay online!" border="0" name="submit" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif" type="image" /><img alt="" border="0" height="1" src="https://www.paypalobjects.com/fr_FR/i/scr/pixel.gif" width="1" /></form>
<br />
That's all for presentations.<br />
<br />
<br />Byron76http://www.blogger.com/profile/18210773077196310652noreply@blogger.com25