Other Parts Discussed in Thread: UNIFLASH
We are now facing an issue in our firmware that is developed with F28069 DSPs which works with F28069U, F28069F, and F28069M models that are having USB enabled, so basically the overall design of the firmware is as below:
- Run-time code
- Boot-loader code
The Run-time code is the code that we are continuously developing and expanding, it utilizes various features of the DSP including the USB communication as a Virtual COM port.
The Bootloader works with a USB device firmware upgrade program published by Texas with very minimal changes.
Now the problem is we've been using this combination for over 3 years without any issues, but as our Run-time code is expanding and occupying more RAM and FLASH now we see that after the boot-up the Run-time code doesn't run and the device goes back in DFU mode! In our system, the DFU mode is made to happen only if a specific GPIO is pulled-down, but due to some strange reason, the Run-time code forces the DFU back.
One thing that we found is, once we totally disable the USB functionality in the Run-time code, by removing the usblib.lib and driverlib.lib and all the associated libraries of the USB the Run-time code works again, but of course, we lose the possibility of having the COM port which is not acceptible for our application.
So I'd like to know where should we start looking, as we tried various methods but with no success.