PSoC 6 HSSP for programming other PSoC 6: Guidance

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

cross mob
BeBl_4528851
Level 2
Level 2
First like received Welcome!

I am working to implement a High Speed Serial Programmer (HSSP) using a PSoC 6, to program other PSoC 6 devices using SWD.

I haven't found much information on the forum about PSoC 6 implementations.

My starting point is AN73054 "PSoC 3 and PSoC 5LP Programming Using an External Microcontroller (HSSP)", with additional info from the PSoC 6 MCU Programming Specifications Document.

1) Is there a PSoC 6 specific version of the AN73054 document and related code?

2) Are there any notable problems to watch out for when adapting the PSoC 5LP version for use on a PSoC 6 for programming PSoC 6 devices?

3) Is there any existing information on implementing the lifecycle / eFuse programming in an HSSP beyond the PSoC 6 MCU Programming Specs document?

Thanks!

1 Solution
DheerajK_81
Moderator
Moderator
Moderator
First comment on KBA First comment on blog 5 questions asked

Hello,

I haven't found much information on the forum about PSoC 6 implementations.

We do not have any reference examples for HSSP implementations using PSoC6.

My starting point is AN73054 "PSoC 3 and PSoC 5LP Programming Using an External Microcontroller (HSSP)", with additional info from the PSoC 6 MCU Programming Specifications Document.

I would suggest making use of PSoC4 Programming using External Controller using HSSP guide as the programming steps are closer to PSoC6. Most of the code should be reusable but you need to strictly follow the PSoC6 MCU Programming Specification.

1) Is there a PSoC 6 specific version of the AN73054 document and related code?

Nope. Only the ones mentioned above.

2) Are there any notable problems to watch out for when adapting the PSoC 5LP version for use on a PSoC 6 for programming PSoC 6 devices?

HSSP is all about timing. So make sure you modify the entire project based on the PSoC6 device you are using and set the right parameters. Do not program the efuse until you are absolutely sure. Transitiioning to different lifecycle modes come with different level of restrictions and you could render the device non-accessible if done wrongly. Learn more about Device Security in the PSoC6 Architecture TRM

3) Is there any existing information on implementing the lifecycle / eFuse programming in an HSSP beyond the PSoC 6 MCU Programming Specs document?

You can refer the PSoC6 Architecture TRM to understand more about the EFuse Memory itself. We also have a project used to program EFuse memory which you can find at this path: "C:\Program Files (x86)\Cypress\PDL\3.1.2\security\secure_image\examples\psoc_creator\efuse_gen.cydsn" which should be useful. Note that you will be able to get this project only if you have PDL downloaded. If you haven't already, you can download it from here.

Regards,

Dheeraj

View solution in original post

1 Reply
DheerajK_81
Moderator
Moderator
Moderator
First comment on KBA First comment on blog 5 questions asked

Hello,

I haven't found much information on the forum about PSoC 6 implementations.

We do not have any reference examples for HSSP implementations using PSoC6.

My starting point is AN73054 "PSoC 3 and PSoC 5LP Programming Using an External Microcontroller (HSSP)", with additional info from the PSoC 6 MCU Programming Specifications Document.

I would suggest making use of PSoC4 Programming using External Controller using HSSP guide as the programming steps are closer to PSoC6. Most of the code should be reusable but you need to strictly follow the PSoC6 MCU Programming Specification.

1) Is there a PSoC 6 specific version of the AN73054 document and related code?

Nope. Only the ones mentioned above.

2) Are there any notable problems to watch out for when adapting the PSoC 5LP version for use on a PSoC 6 for programming PSoC 6 devices?

HSSP is all about timing. So make sure you modify the entire project based on the PSoC6 device you are using and set the right parameters. Do not program the efuse until you are absolutely sure. Transitiioning to different lifecycle modes come with different level of restrictions and you could render the device non-accessible if done wrongly. Learn more about Device Security in the PSoC6 Architecture TRM

3) Is there any existing information on implementing the lifecycle / eFuse programming in an HSSP beyond the PSoC 6 MCU Programming Specs document?

You can refer the PSoC6 Architecture TRM to understand more about the EFuse Memory itself. We also have a project used to program EFuse memory which you can find at this path: "C:\Program Files (x86)\Cypress\PDL\3.1.2\security\secure_image\examples\psoc_creator\efuse_gen.cydsn" which should be useful. Note that you will be able to get this project only if you have PDL downloaded. If you haven't already, you can download it from here.

Regards,

Dheeraj