I'm an electrical engineering student at Arizona State University, working on a project with a team of fellow students. We choose to use PSoC in our design and have ordered the CY8C4126AXI-M443. We are implementing 3 separate MCUs in our design and we're having issues when it comes to programming them for the first time. After soldering them to our custom PCBs and doing continuity checks we power the chip with the cypress programmer from the CY8CKIT-043. On almost every chip we have tried, the select debug target window comes up. It shows the KitProg, below that instead of showing the PSoC chip it shows Cortex-M0 and gives an error on the right saying, "This device was recognized, but PSoC Creator does not support using it at this time". One of our chips programmed on the first time and had no issues, my MCU is finally being recognized and programming after updating the components in the project. We're down to our last board and we can't seem to get this one be recognized even after following the same steps we attempted that made the last chip work.
Has anyone had any issues with soldering and programming a bare chip on a custom PCB? We originally thought we fried the chips with ESD, but after de-soldering and re-soldering, we're still getting the same results. We've made new PCBs as well and thoroughly checked them for any errors in the traces and know the boards are good. At this point, I believe it's something we're not doing correctly to initialize the chip for the first time or it's something we are doing that we shouldn't.
I'm not sure what other information I can give to help. If you need any information to better help me with this issue please ask and I'll provide it as quick as I can.
How about a schematic for your board. What kind of ESD protection do you have and what kind was designed into the board. How did you solder this part on the board? What device programming pins did you add to your design?
The schematic is included in this post. We are doing as much of our work as we can inside our electronics lab and we have ESD mats on every desk, no ESD protection in the board. The only reason we thought that was what happened was another student in another group had the same issue and he changed out the chip and suddenly it started working. We have no way of testing whether that's what was actually wrong it was just an assumption on our part. The first couple times we used solder paste and a reflow oven for all our surface mount parts and now we've gotten to a point where we're hand soldering (very carefully) all the parts and checking power and signals as we go. As you can see in the schematic we're using the 5 pin SWD pins, VTARG is connected to all VDD pins, GND is connected to all GND pins through a ground plane, RST is connected to XRES on the MCU, SWDCLK is connected to P3, and SWDIO is connected to P3.
It is hard to solder the chips by hand as small solder shorts can happen. Are you using ESD bands on your hands ? Is your soldering iron an ESD safe device? There is a lot of things that can cause assembly errors.
So are you trying to program each device with the same programming port J11 on your schematic.? You said that you have 3 Psoc devices but I only see one on the schematic.
They definitely are intimidating at first but our professor showed us how to solder them and they're really not that bad. You just get it lined up well on the pads, hold it in position with the tweezers and solder one pin in the corner, then do the same with a corner across from it. After that just pull the hot iron across all the pins with the solder. It will bridge them all but you just use solder wick after that and it removes all the bridging. We are very meticulous in our continuity checks to ensure all bridging is removed before putting any power to the MCU.
Unfortunately, we don't have ESD straps and I'm unsure about the iron but they're not cheap I can assure you of that.
We have been using the breakaway programmer from the CY8CKIT-043, I believe it's called KitProg. We were just given the Mini Prog 3 from our professor but we're still receiving the same error.
I'm sorry, I wasn't clear on exactly what's going on inside my design. So we're designing a home security system we have a main hub and two external sensors. Each MCU has its own board and Programming port. The contact sensor is the one we're currently having issues with so I only provided the schematic for that sensor. I'll include the other schematics for you to look at but they're all electrically connected the same way.
So only one of the main boards is not being programmed. What is the status LEDS saying see chart
Also so you are using a kitprog with a USB power that is 5 Volts to program a 3.3 Volt chip?
Are you powering the controller from an external source or using KitProg to power your target board? It shall power the target board at 5V. Can you measure the power on the target board? if the voltage reads fine, then can you do the following:
1. Download and install the latest PSoC Programmer - www.cypress.com/programmer
2. Ensure you have the latest KitProg firmware - connect your board to PC, open PSoC Programmer, go to the Utilities tab and click Update
3. After update, KitProg should show up in the programmer window.
4. Connect to the KitProg and try programming from PSoC Programmer - if it gives any error, then please let me know
5. If step 4 is not succesful, press the reset switch on KitProg for longer than 5 seconds - at this time, KitProg should re-enumerate as a mass-storage device and the status LED should start "Breathing"
6. Drag and drop your hex file in the enumerated mass-storage device. You should be able to check the programming status in the status file stored in the drive. If any errors, please share the text of the file.