PSoC® Creator™ 3.0 Bootloader with PSoC 4 Devices with Less Than 32K Flash – KBA91658

Version: **

 

Question: How do I make the PSoC® Creator™ 3.0 Bootloader Component work with a PSoC 4 device with less than 32K flash?

 

Answer:

A defect exists in PSoC Creator 3.0 that causes the bootloader to halt and stop working in any PSoC 4 part with less than 32K flash. The defect is fixed in the latest PSoC Creator 3.0 SP1, which can be downloaded from www.cypress.com/PSoCCreator.

Note that the file cydevice_trm.h may be automatically regenerated after a build, which will overwrite the change. So after building your bootloader project, you may have to modify the file again and rebuild.

A workaround exists. After the bootloader project is built, go to the PSoC Creator Workspace Explorer window, navigate to the folder Generated Source > PSoC 4, open the file cydevice_trm.h, and change

#define CYDEV_FLASH_SIZE 0x00008000u

to one of the following:

#define CYDEV_FLASH_SIZE 0x00004000u

#define CYDEV_FLASH_SIZE 0x00002000u

You must change the CYDEV_FLASH_SIZE macro definition to 0x00004000u for devices with 16K flash and 0x00002000u for devices with 8K flash.

After making the change, rebuild the bootloader and all associated bootloadable projects.