Building and flashing the firmware - sonyxperiadev/CDB-Assist GitHub Wiki
###Build the firmware
PSoC Creator is used to compile both the Verilog hardware description files as well as the C code for the Cortex-M3 MCU. PSoC Creator is (so far) a Windows-only product. Building the complete firmware image is done by opening up the CDBAssistNextGen workspace located in the Firmware-v3 folder and hitting F6 (Build all projects). The file to be flashed using the USB bootloader will be called CDBAssistNextGen.cyacd and will be located in the Firmware-v3/CDBAssistNextGen.cydsn/CortexM3/ARM_GCC_*/Debug folder.
###Flashing the firmware
If your host system is a Linux or OS X one and want to update the CDB Assist firmware I recommend the "generalization" branch of bootloaderhost. This tool will read the metadata from the bootloader and the firmware file making every effort not to flash firmware that does not match the board (unless you force it to using the -f option). The tool should compile on Windows as well but that has not been tested.
If your host system is a Windows one and you have installed PSoC Creator it includes a Bootloader Host GUI tool that can be used. Note though that their tool doesn't check any metadata so it will happily let you flash any random PSoC5LP (and potentially PSoC3) .cyacd file to the board.
The board will stay in the bootloader for a few seconds during power-up, this is indicated by rapid flashing of the Status LED.
###Bootloader bug
When reflashing the firmware over USB the bootloader is left unmodified. If the bootloader is reflashed over SWD currrently a small change has to be made to the generated code due to a bug in v1.40 of the Cypress Bootloader component used. In Bootloader_1_PVT.h around line 96 there will be a "#define Bootloader_1_RSP_SIZE_GET_METADATA (0x56u)". What they meant to write (and what has been there previously) is 56 in decimal, not hex. This has been brought up with Cypress and they will fix this in an upcoming release.