How to change address of BLE chip using Programmer Socket

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

I had written this post on my other recent thread, but since it really is a different question, it will probably be much better and more organized to start a new thread on it.

I bought the CYBLE-022001-PROG EZ-BLE™ Module Programming Kit.  Programming chips using that socket, the BLE Pioneer kit, and PSoC Programmer seems to work.  However, I cannot figure out how to change the UUID or send other commands to the chip.

When I first clamp down on the chip in the socket, Tera Term shows this message:

@E,003B,BOOT,E=0101011A,S=03030035,P=0103,H=03,C=01,A=00A0504D7B26

@E,000E,ASC,S=01,R=03

Then, attempting to enter in any commands result in the doubling of characters.  For example, entering UUID results in UUUUIIDD being displayed in the terminal, and upon sending the command the display of this message:

@E,000B,ERR,E=0203

Any ideas?

0 Likes
1 Solution

Plug the CYBLE-022001-PROG with CYBLE-022001-00 loaded (that is what I referred to as 'EZ-BLE Module (socket board)') on to CY8CKIT-042-BLE.

Connect the CY8CKIT-042-BLE to PC and program the Solar BLE Sensor HEX file on to CYBLE-022001-00.

Open TeraTerm and select CY8CKIT-042-BLE's COM port, and try setting UUID from the UART.

View solution in original post

11 Replies
SrikanthD_56
Employee
Employee
25 sign-ins First question asked First comment on blog

Hi,

This is because the EZ-SERIAL™: EZ-BLE MODULE FIRMWARE PLATFORM firmware is programmed on the EZ-BLE Module.

Check out the EZ-Serial BLE Firmware Platform User Guide for details.

0 Likes
Anonymous
Not applicable

Wait, are you saying I cannot program the CYBLE--022001-00 chip using the CY8CKIT-042-BLE Pioneer Baseboard?

0 Likes

No, I said that the data you are seeing on the serial port (TeraTerm) is from EZ-Serial firmware.

To program the EZ-BLE Module using the CY8CKIT-042-BLE Pioneer Baseboard, connect the kit to your PC, open the PSoC Programmer software, select KitProg/<serial_number> in the Port Selection window, load your application HEX file and hit Program button.

To change the BD address, open you project in PSoC Creator, double-click on the BLE Component in the Schematic, go to GAP Settings tab and change the device address. Rebuild your project and program it on to the EZ-BLE Module.

BD_Address.png

0 Likes
Anonymous
Not applicable

Right, OK, so it's coming from the EZ-Serial firmware.  That makes sense, I guess!

I am just trying to change the UUIDs on the CYBLE--022001-00s.

When using the Solar BLE Dongles plugged into their special Debug board, this was as easy as typing "UUID 00000000-0000-0000-0000-000000000001" in Tera Term.

Now, using the CYBLE--022001-PROG plugged into the CY8CKIT-042-BLE, that method does not seem to work.  I guess the CY8CKIT-042-BLE maybe doesn't support "EZ-BLE" mode as the Solar Kit Debug board does.

But anyway, that's fine, I just need to figure out a way to change the UUID, since the base station depends upon the particular unique UUID address to identify which dongles are present.

I found this thread: https://community.cypress.com/thread/12431?q=uuid%20address , and it seemed promising, but I have been unable to successfully use the method to change the address.  Not sure what I'm doing wrong.  Of course, it is in "Profile" mode while I am using "Broadcaster" mode.  Well, I'll keep trying!

0 Likes
Anonymous
Not applicable

Ah, I see you edited your post to include info on changing the BD address and a screenshot.  Thanks!

Yes, I have actually tried this.  It doesn't seem to work.  Here is my problem, to sum up: I am at a really basic level of stupidity.  I do not know what the "BD address" is.  Whatever it is, it does not seem to be the same as the UUID.  And the only thing I could figure out how to change arbitrarily and then recognize on a scan is the UUID.

And I cannot get the UUID to change.

0 Likes

To simplify things, try programming the EZ-BLE Module HEX file (from Solar BLE Dongles example you are referring to) on to the EZ-BLE Module (socket board) on BLE Pioneer Kit and see if you can set the UUID the ways you used to do it before (from TeraTerm).

0 Likes
Anonymous
Not applicable

That sounds like a very good troubleshooting step.

I have no idea how to do it.

Here is what I have:

boards.JPG

(I have other stuff too (such as 25 CYBLE--022001-00s needing to be programmed and re-addressed and another black debug board) but those seem to be the relevant hardware.)

The red board is the CY8CKIT-042-BLE.  Next to it is the CYBLE--022001-PROG, loaded with a CYBLE--022001-00 inside.

Below is a green board, which I was calling "their special Debug board" or "Solar Kit Debug board" and which according to Cypress (on this page: http://www.cypress.com/documentation/development-kitsboards/cyalkit-e02-solar-powered-ble-sensor-bea... ) is called the "BLE-USB Bridge and Debug Board."

Plugged into the green board is a Solar-Powered BLE Sensor Beacon.

In case this info is useful:

  • BLE-USB Bridge and Debug Board uses the following Cypress devices:
    • CY8C58LP PSoC 5LP for KitProg
    • CYBL10162 PRoC BLE
    • MB39C022G LDO

Is one of these things in the photo the "EZ-BLE Module (socket board)" to which you are referring?  If so, how would I plug it in to the CY8CKIT-042-BLE (red board)?

0 Likes

Plug the CYBLE-022001-PROG with CYBLE-022001-00 loaded (that is what I referred to as 'EZ-BLE Module (socket board)') on to CY8CKIT-042-BLE.

Connect the CY8CKIT-042-BLE to PC and program the Solar BLE Sensor HEX file on to CYBLE-022001-00.

Open TeraTerm and select CY8CKIT-042-BLE's COM port, and try setting UUID from the UART.

Anonymous
Not applicable

srds, sometimes the simplest solutions are the best ones.

What you suggested was what I had done in the beginning.  It is, of course, the obvious thing to do.  And that's what had not worked.

However, I decided to try it again.  Why not?  I can fiddle with things and change variables and maybe...

Well, I fiddled and I got the UUID to change.

The behavior of the board(s) is very finicky.  It will only work if you do it just right, and even then not every time.  The user must program the board using PSoC Creator, then immediately open and close the socket clamp, then immediately (within a second or two) enter in the desired command in a terminal program (such as Tera Term).

If it doesn't work -- Tera Term is showing line noise instead of "Start...", or just showing nothing and not responding, or showing the error/who-knows-what messages I posted in the thread's opening post, just open and close the clamp again.  And again.  Try several times until it does work.  After about seven times it still doesn't?  Start the process over: unplug and re-plug in the USB cable, re-program the chip in PSoC Creator, then immediately open and close the socket clamp,... etc.  Don't lose faith, it will work eventually.

Thanks for all your help, srds!  Merry Christmas Season!  And hopefully the final solution I found will help someone in the future.

0 Likes
Anonymous
Not applicable

do-not-lose-hope.JPG

See?  Do not lose hope!

0 Likes
Anonymous
Not applicable

You will probably find your finger works more reliably than the clamp to push down and engage the chip successfully.  A slow gentle push is good.

0 Likes