This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
I am using Serial Bootloader to program TM4C123GH6PM over UART0. To flash the firmware onto the microcontroller I am using TM4C Serial Bootloader Demo software.
When I flash the program for very first time, it gets flashed successfully and the microcontroller works as programmed. But when I try to re-program it, the TM4C Serial Bootloader Demo software shows "ERR_DNLD 012: TIMEOUT FROM TARGET".
Is there something wrong with the firmware or do I need to add some special piece of code for the microcontroller to be reprogrammed?
Has anyone faced a similar problem? Please help.
These are the pin-connections:
PA0 UART0RX
PA1 UART0TX
PB4 BOOT_CONTROL
GND GND
RST Reset
Hello Shailav,
The firmware needs to invoke the boot loader sequence either by entering a Flash boot loader in the device Flash memory or by invoking the ROM boot loader.
Is there anything in your firmware which is triggering the boot loader sequence on the device after the first programming?
When you program the device for the very first time, you are using the ROM boot loader to do the programming which is why it is working correctly.
I don't have any code currently present in my firmware that triggers the bootloader sequence.
Can you please direct me to the bootloader sequence code if TI already has it? if not where can I find it?
Also, is there any hope of recovering my present microcontroller?
Thanks.
Hello Shailav,
Shailav Bharadwaj said:Can you please direct me to the bootloader sequence code if TI already has it? if not where can I find it?
We have two examples for this provided with TivaWare 2.2.0.295:
1) ROM-based demo with boot_demo_uart_rom located in [Install Path]\TivaWare_C_Series-2.2.0.295\examples\boards\ek-tm4c123gxl
2) Flash-based demo with boot_serial and boot_demo1/boot_demo2 located in the same root directory as above.
Shailav Bharadwaj said:Also, is there any hope of recovering my present microcontroller?
If it's a LaunchPad, just connect over CCS or if the device is locked, use LMFlashProgrammer to unlock the device.
If it is a custom board and you have a JTAG interface there are options there too. One would be to just debug on CCS if you have a debug probe that connects to it.
There are ways to execute a device unlock over JTAG without LMFlashProgrammer as well if needed.