AN68272 describes a UART-based bootloader for PSoC® 3, PSoC 4 and PSoC 5LP. In this application note, you will learn how to use PSoC Creator™ to quickly and easily build a UART-based bootloader project, and bootloadable projects. It also shows how to build a UART-based embedded bootloader host program and a C#-based bootloader application.
Introduction
Bootloaders are a common part of MCU system design. A bootloader makes it possible for a product's firmware to be updated in the field. At the factory, initial programming of firmware into a product is typically done through the MCU's Joint Test Action Group (JTAG) or the ARM® Serial Wire Debugger (SWD) interface. However, these interfaces are usually not accessible in the field.
This is where bootloading comes in. Bootloading is a process that allows you to upgrade your system firmware over a standard communication interface such as USB, I2C, UART, or SPI. A bootloader communicates with a host to get new application code or data, and writes it into the device's flash memory.
The following table indicates the PSoC devices, PSoC Creator versions, compilers, and development kits that will work with this application note project:
Project | Device |
PSoC Creator Version |
Development Kit CY8CKIT-xxx |
||||
Architecture |
Silicon Revision |
V3.1 CP1 or higher |
V3.0 SP1 |
001 DVK |
030/050 DVK |
042 Pioneer DVK | |
AN68272.zip | PSoC3 | Prod | YES | NO | YES | YES* | N/A |
PSoC4 | Prod | YES | NO | YES | N/A | YES** | |
PSoC5LP | Prod | YES | NO | YES | YES* | N/A | |
AN68272_Archive.zip | PSoC3 | Prod | NO | YES | YES | YES* | N/A |
PSoC5 | Prod | NO | YES | YES | YES* | N/A |
* Refer to Migrating CY8CKIT-001 DVK project to CY8CKIT 030/ 050.
** The project can be easily adapted to this DVK.
- For PSoC 5 project and related document, please download file AN68272_Archive.zip.
Projects associated with this application note can be downloaded from the ‘Related Files’ section below. For your convenience, we have provided projects that are compatible with the two most recent versions of PSoC Creator:
- AN68272.zip is used with PSoC Creator 3.1 CP1
- AN68272_Archive.zip is used with PSoC Creator 3.0 SP1
The project’s default settings may not be compatible with your device or kit, and you may need to change your project settings. For more information, see: