I am trying to instantiate a UART module in my bootloadable application but as soon as the module is placed into the PSoC does not enter the bootloadable application but stays in the bootloader.
I am using the UART Bootloader GUI and project supplied by Cypress as a basis. See AN68272 for a reference
You have established BL application works independently and that UART
physical layer meets RS232 levels, UART set up as 3 wire no flow control,
maybe 9600 baud on both PSoC and PC side ?
Yes I have established that the project works independently but not as a bootloadable project. The bootloadable project is successful if the UART module is removed from the project. I have added other communication devices and not received the same issues as well.
As for the UART configuration yes those are what I am using for the project.
You may use the same communication interface for the bootloader and for the bootloadable project. Since at a given time only one of the program parts is active they do not influence each other. Even the parameters for the interface may differ from each other, the initialization routines will care for that.
I would prefer to use a UART for my communication needs in my bootloadable program. The issue is if I instantiate a UART module in my bootloadable project the bootloader never passes onto my bootloadable program.
I have tried switching between a USB or UART communication module for my bootloader with the same results. As soon as I delete the UART from my project the bootloadable is successfull and the bootloader passes control onto the bootloadable.
At this point I am wondering if there is a known issue with the PSoC and bootloadable applications with a UART component. I have also experimented with other components the USBUART works as expected. The I2C component is successful if it is a fixed-function module but the UDB component has the same issue as the UART, where the bootloadable is never successfully loaded.
Any Guidance would be appreciated. My client designed his project expecting UART communication.
I suppose, you should create a technical "MyCase" at Cypress to get help soon. Use (at top of this page) "Support & Community -> Technical Support -> Create a MyCase". You can send your project to them and you may refer to this thread.
It would be nice when you keep us informed about the results.
This seemed to be the issue, from Cypress Technical Support:
Now please un-check the option "Store Configuration Data in ECC Memory" of the Bootloadable project. Now clean and build All projects-> Program Bootloader -> Bootload using the Host Application provided with AN68272.