I have a workspace with two projects. One for the bootloader and one for my application. For programming i use UART communication. Programming of my application over UART works fine with the "Bootloader Host" tool shipped with PSoC Creator and with the example tool "UART Bootloader Host GUI" which is delivered with the UART Booltloader example (AN68272).

My problem is that i have to reset the device manually and my final device should never have a reset button or any other button, only CapSense.

If i debug the bootloader and set a breakpoint in the function "Bootloader_HostLink" of the file "Bootloader.c" at "Bootloader_COMMAND_EXIT" in the switch statement, it never reaches this lines of code after successful bootloading. But there is the needed "CySoftwareReset()" and this should reset the device after bootloading. I have tested both above mentioned tools.

If i take a look at the source files in the folder "cybootloaderutils" in the main directory of PSoC Creator at file "cybtldr_api2.c" in function "CyBtldr_RunAction", there is a call to "CyBtldr_EndBootloadOperation()" after the bootloading operation which generate and send the "EXIT COMMAND"... I have implemented a own tool with the mentioned source files but this does also not reset my bootloaded device :-(

Now i have logged the transmitted data while bootloading and i see that the last command is not complete. The last command contains the EXIT COMMAND, but the command packet is not complete. It starts with 0x01 but never ends with 0x17. I have marked the last command packet with red. This occurs with "Bootloader Host" and with "UART Bootloader Host GUI"!