I have been working on a project for some time and have come across a curious issue. I have a project that has been coded, compiled and loaded successfully onto a custom board. Through troubleshooting this project, adjustments were made on the boards layout and a new board was made. This new board I am having trouble programming. When I initiate programming, a prompt appears saying that the target cannot be acquired. The error message is,
"Error "Unable to acquire target device PSoC 3 CY8C3866PV*-070: Unable to read memory, Debug Enable is not set. Click Port Acquire to reset the chip and enable debug." was received while trying to change the selected target."
No matter how many times I follow its directions it doesn't solve the problem. I am convinced this is a hardware connection error causing this since that is the change between the two built units. The layout difference between the two are the capacitors connected on the VCCD and VCCA. On the first board the capacitors were forgotten. They were later white-wired on and the project worked. The new layout simply added space for the capacitors and made the proper connections.
Any help or ideas would be greatly appreciated.
Could you measure the voltage on VCCD/VCCA cap, the normal voltage should be 1V8.
Do you add pull-up(or pull-down) resistor on SWD lines?
The voltage on the caps are the expected 1.8V. There are currently no resistors involved with the programming traces. I didn't see any recommendations in the data sheets. I am using a Miniprog 3 though, and do not know if there are any used internally on that device. If it matters, I am using JTAG to program the PSoC and not SWD.
Do you mean the silicon on new board can be programmed through JTAG interface? Could you try both power cycle and reset programming mode and make sure connector (5pin or 10pin) setting is correct.
The new board is the one I cannot program. When I try to program it, it gives the error I stated in the first post. I cannot seem to acqure it as a target dispite clicking, pport acquire. When I click on the unit, I can see the Silicon ID but the revision is unassigned. I have been using the power cycle mode for programming, the external reset pin is not attached to the header now, there are multple types on MCU on this custom board and share the same header but not the pins of it. The programming method I have been using for both boards is JTAG, specifically 4 wire JTAG for programming and debugging.
In case this is still blocking you, though mostly not as it's been month. Some points you can check:
- Try to program the device with a blank project, if still fails, upload the project in this discussion so that someone can check.
- Go through the article which might be helpful.
It will be beautiful if you can share the point how you resolve the issue here if you have resolved it.
One more thing, are your programming the device from PSoC Creator GUI (which invoke Programmer) or from PSoC Programmer GUI? If Creator, you can try from Programmer and tell what you see.