PSoC Programmer (MiniProg3), Hex Files, schmartBoard with PSoc5

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

cross mob
WaMa_286156
Level 5
Level 5
First comment on blog 100 replies posted 50 replies posted

  I have successfully wired up an iDAC, read it with the DeltaSigma ADC, tied an RTD to it, and read the temperature and put it out as a pulse based frequency on the PWM, using the CYC8Kit-050.

   

   I got a minProg3, was able to plug it into the XyC8Kit-050 and program the board with it, using PSoC Creator, the board being powered from 9VDC in order to prove it wasn't following the other USB path.

   

  I used the "aux" connector to do this.

   

  I bring up PSoC programmer, because I wanted to program the device from the Hex file that the PSoC creator created.  The following happened:

   

    1) PSoC programmer found the MiniProg3.

   

    2) The PSoC5LP device was not discovered.  The PSoC5LP is NOT in the list of "custom" devices.   

   

    MiniProg3 Questions:

   

    1) How can I program a device the programmer doesn't have in its list?

   

    2) I found 7 hex files created by PSoc Creator.  2 config.hex, 2 eeprom.hex, 2 protect.hex, 1 file named after my project.  Do I program ALL the files, one after another, or one of them?  I've done Google searches to no avail.

   

  I got a schmartBoard.  It powers up, and blinks its LED indicating the "bootloaded" program is working.  However, using the MiniProg3 and the PSoc Programmer, I could not find it.  I finally got the selection window to show up by right clicking on pretty much everything, and accidentally found the setup window.  Choosing 5 pin caused it to work.  Funny, never saw that in documentation, probably oversight on my part.  PSoC Creator can program it, but PSoC programmer can't.  Go figure.

3 Replies
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Verify that programmer is latest version 3.22

   

Remove Miniprog & Target, re-boot your PC

   

Start Programmer (you even might select now device family as CY8C5xxxLP but that's not necessary)

   

Plug in MiniProg3, it now should show up in the "Port Selection" window

   

Set programming mode to "Reset", AutoDetect "On", use 5 pins, SWD, and select your board's supply voltage, do not power externally

   

Plug in yout board now, toggle power to "On", check for board's power LED

   

Select your project.hex file, buried deep in project's path\CortexM3\Debug(or Release)... etc \projectname.hex

   

Try a "Read" first and check for correct device and family

   

Device and family cannot be set in this stage when "Auto Detect" is "On"

   

 

   

Bob

0 Likes
JiGi_284761
Level 4
Level 4
Welcome!

Ive done hundreds of schmartboards and they can be troublesome for Miniprog3 to acquire. Sometimes Programmer will hang and you have to unplug miniprog3 many times before it will find the chip. Sometimes even reboot the program. Not all are like this. Just some.

   

Do what Bob says.

   

I usually power them from the Miniprog3 if there are not soldered to a board.

   

To find your hex file go to the blue folder at the top of the page. Click on it go to the location where you keep your program files and click on your program folder. The folder will be named something like Design1.cydsn. Click the Cortex file. then click the Arm file. Click the Debug File and you will find your hex file. Click on it and Programmer will know where to find it. You dont need to find it again if you are editing your program and make changes. As long as it still shows in the file path at the top of the page it will load the changes.

   

Watch your settings on programmer. Sometimes they will change all by their selves. If it hangs, minimize your windows one at a time. There is probably a popup open that is preventing Programmer from finding the port. You have to have a little patience and wait for programmer to load before trying to acquire a device. Otherwise it will hang.

   

If you use auto detection. Programmer will detect the device for you. If you want to select the device Your self you need to use the CY part number of the device that is written on the top of the device.

0 Likes
WaMa_286156
Level 5
Level 5
First comment on blog 100 replies posted 50 replies posted

  I finally got everything to work.  It was a combination of problems.  Mainly due to learning curve on the way that Cypress expects you to do things.  Thanks to everyone who responded.

   

  1)  Unclicking Auto on PSoC programmer *still* does not list PSoC 5 family in the dropdown list boxes, version 3.22 of PSoC programmer.    However, since PSoC Creator programs the device directly, not using PSoC programmer, was able to work around that.  You have to unclick auto on the PSoC programmer to enable the dropdown.   In Auto, once you get MiniProg3 working, PSoC programmer still can't see the PSoC5LP devices or program them.  Moral of the story: Don't use PSoC programmer with PSoC 5LP devices yet.

   

  2)  The USB connector for the SchmartBoard *sucks*.  It almost works with some USB cables, not with others.  Finally went with the 7805 onboard 5v regulator and external power supply and got it to power up.  It was intermittently running previously.  Took me a while to sort that out, it *didn't* help the miniprog3 issues.  Moral of the story: Assure steady power to your PSoC 5.  

   

  3) The MiniProg3 selection dialog under PSoc Creator has a "right clickable" setting for the MiniProg3 list line that allows you to select the connector that MiniProg3 uses, among other things.  Turns out that MiniProg3 *has* to have the right connector selected.  It is unable to auto detect.  That is ok, that is how it was built.  However, it initially was not obvious to me, even after scanning the troubleshooting guide.  You can also get to the "Configure" right click menu item by pushing the "Port Setting" button on the Select Debug Target Dialog.

   

    In addition, if you got one successful detection, even if incorrect, on the MiniProg3, you can't get that dialog back up unless you unplug the miniprog3 from the PSoc5 device.  Minor inconvenience, but confusing while on the learning curve.  It shows up if you change targets between programming sessions.  Duh!

   

  4) Once you get past all of these items and understand what they are doing, the Cypress devices are quite good.  The LP versions work far outside of their temperature boundaries.

0 Likes