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.

TM4C129ENCPDT: firmware update between mcu and esp32 module via uart

Part Number: TM4C129ENCPDT
Other Parts Discussed in Thread: EK-TM4C1294XL

Hello All,

I have  custom board which has both tiva mcu and esp32/wifi. I want to do firmware update. to do that, I need to connect to the tcp server which comes firmware file. After custom board connect to tcp server via wifi/esp32 and send 0x43 (C) data to the server, firmware update will start. it means, tcp server will start to send hex data to the esp32 module. and esp module will send these hex data to the mcu via uart.

sending process will be like :

mcu will send C to the esp32 via uart, esp module send C to the tcp server

after tcp server recieve C, will start to send 1024 data packet to the esp module. mcu will take this packet from esp32 via uart.

after mcu take this packet, will send ACK to the esp, esp will send ACK to the server.

after tcp server receive ACK, will send another data packet to the esp. 

and so on.

I have done connecting to the server and mcu via esp module. 

but I dont know how to firmware update.

Does this method work correctly ? Is there any example code and source to do that? Do you have any idea or advice to do that?

thank you

BR

Bekir

  • Hi,

      I understand what you are trying to do. We don't have such example involving ESP32 for OTA update. The ESP32 is a third party device that we don't have any experience with. What we have is a bootloader example via UART. This can be found in the TivaWare library. The example can be found in C:\ti\TivaWare_C_Series-2.2.0.295\examples\boards\ek-tm4c1294xl\boot_serial. The boot_serial is a boot loader.  There is an example application firmware that can be found at C:\ti\TivaWare_C_Series-2.2.0.295\examples\boards\ek-tm4c1294xl\boot_demo1. The bootloader will boot and load the firmware boot_demo1 from the UART interface. In your case, you will need to create your software for the ESP32 to receive the UART command from TM4C129 during bootload process and then relay the command to the TCP server. 

      Please refer to section 5 in the bootloader user's guide for the UART packet exchange protocol  that the ESP32 needs to adhere to. The user's guide can be found at https://www.ti.com/lit/pdf/spmu301