Upgrade firmware over UART

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

cross mob
Mrinal
Level 4
Level 4
First solution authored 50 replies posted 25 replies posted

Hi!

I am working on a PSOC-4L project that requires the firmware to be upgraded over UART. I have gone through a few documents that describe how to configure PSOC-5 to act as a bootloader host for programming other PSOC targets. However, the master MCU that will provide new firmware to the slaves is not a PSOC-5 based MCU, it is an Atmel MCU.

What is the procedure to load new firmware to a target over UART? Please remember that the host cannot run any Cypress based API. It can only provide the new .HEX file over UART. Everything else will have to handled by the target (PSOC-4L)

Thank you!

0 Likes
1 Solution
Anonymous
Not applicable

Hello,

The target, host, and UART are three separate components. The communication occurs through the UART, and the host merely needs to use the same protocols/messages to interact with the target device to implement the bootloading over UART. It doesn't need to be a PSoC 5 chip for the host to work, but the example is a PSoC 5 for the sake of demonstration purposes.

View solution in original post

0 Likes
3 Replies
RyanZhao
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi Mrinal,

Here are some example code about P4 UART bootloader/upgrade.

http://www.cypress.com/documentation/application-notes/an68272-psoc-3-psoc-4-psoc-5lp-and-psoc-analo...

Hi!

Thanks for the reply. Although this document is helpful in implementing a PSOC-5 based host controller, it does not mention anything about how to use a non-PSOC MCU as host controller to update a PSoC target device.

It is required to update firmware over UART. The new Hex file will be transferred to the target device over UART and will be stored in memory. Whenever required the target device will update itself. All the update process has to be done by the target. The UART port is to be used only to receive new data.

0 Likes
Anonymous
Not applicable

Hello,

The target, host, and UART are three separate components. The communication occurs through the UART, and the host merely needs to use the same protocols/messages to interact with the target device to implement the bootloading over UART. It doesn't need to be a PSoC 5 chip for the host to work, but the example is a PSoC 5 for the sake of demonstration purposes.

0 Likes