As embedded devices evolve in both capability and connectivity, so does the need to enable remote application updates. Not limited to a single communications protocol, embedded connectivity takes many forms and is essential in growing markets including the Internet of Things (IoT). Remote firmware updates allow for simplified and efficient upgrades to an existing application while increasing a product's useful life. The addition of new features to a product can be used to maintain a competitive advantage against new market offerings or unlock existing fee-based premium content. Additionally, software fixes can be quickly propagated to ensure reliable system operation.
To take advantage of this connectivity, bootloader firmware must reside within memory to provide self-programming capability to the microcontroller. Developing custom bootloader code can be a complex and time-consuming process. We provide a 16-bit bootloader to assist developers using PIC24 microcontrollers (MCUs) and dsPIC33 Digital Signal Controllers (DSCs). The simple GUI interface enables you to create bootloader firmware designed to suit your application needs. We also provide application firmware configuration that enables you to easily customize the bootloader with your application.
To complement the bootloader generator, we also provide a unified bootloader host application. This tool is used to transfer new application code to the embedded device that contains the bootloader code. This GUI application can communicate with the target device using the bootloader command protocol through any of the supported physical layer interfaces.
Refer to the MPLAB Code Configurator (MCC) 16-bit Bootloader release notes for the list of supported devices. Future releases of the MCC 16-bit Bootloader will include support for additional PIC24 MCUs and dsPIC33 DSCs and features.
For devices and communication interfaces that are not yet supported by the MCC 16-bit Bootloader, please use Easy Bootloader (EZBL). For advanced Live Update feature support to update firmware in real time, please refer to Online Firmware Updates in Timing-Critical Applications (AN2601) along with Easy Bootloader (EZBL).
The software in this section is subject to the U.S. Export Administration Regulations and other U.S. law, and may not be exported or re-exported to certain countries or to persons or entities prohibited from receiving U.S. exports (including Denied Parties, entities on the Bureau of Export Administration Entity List, and Specially Designated Nationals).
I'm working on a UART Bootloader Project and trying to find a source like "Bootloader Host" Tool which can Flash the .cyacd file . I opened the Bootloader Tool and went straight to "Help". Upon Reaching the Help Section I saw :
"Note This is a working example of a Bootloader Host tool. You may use the tool as is, or use the provided source code to create your own bootloader host application. The source code is located in the following directory:
Have a look at app note AN68272. It shows the path to the source code files.\ PSoC Creator \ \ PSoC Creator \ cybootloaderutilsand that's where I found them on my computer. BTW Section 2.5 of that app note is a good read.
If you need a stand alone Bootloader Host to try out (while creating your own), the one provided by Cypress/Infineon has been successfully detached from having to install Creator. -Creator-Designer/Standalone-bootloader-host-download/td-p/659...Jump to the solution for download link (otherwise it's a lengthy thread to read).
In my application I'm using ESP32 via UART with my Cypress MCU. I use this ESP32 for transferring the Switch Information to android application. I was in search of creating a way to update my code using ESP32. So I looked at the ".cyacd" file. Later I connected CP210x based TTL and tried reading the acknowledgment My Cypress MCU Sends to Bootloader Host. I'm trying my best to read and understand the cyflash from github. The only technique to send the