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.

TM4C1294NCPDT: Ethernet Bootloader. Problem.

Part Number: TM4C1294NCPDT

Hello, everyone. 

I'm not very experienced in TivaWare, but I try to use boot_emac_flash. I haven't got any development kit, but my design works well, including ethernet connection to PC GUI. 
Now I'm trying to use ethernet flash bootloader. I work with Keil and ULINK2. After programming by boot_emac_flash I look for ip of my MCU (arp -a in cmd.exe), but I can't find it. As I understood bootloader should receive dynamic ip. What's wrong?

  • Hi Ivan,

     The Boot Loader works with a BOOTP request. The BOOTP is a pre-dated form of DHCP where the BOOTP server assigns an IP address temporarily. For the local switch to understand the IP address you will need to run other Ethernet example such as enet_io to first acquire the IP address. Once the local switch maps it in its L2 table, the IP address can be reused.

     With that said, you need to first pick a TivaWare Ethenet example. I will suggest you use enet_io. After you run enet_io it will display an IP address on the Virtual Com port terminal. This IP address will then be registered in your local switch. This IP address will be reused when you run the boot_emac_flash.

     Once the boot_emac_flash is running, you will put the IP address acquired from enet_io into the below LM flash programmer shown below. You will have your own IP address.

     Next go to the program tab and specify the file location to the boot_demo_emac_flash.bin file and click the Program button. The boot_emac_flash (the bootloader) will start to download the application (boot_demo_emac_flash) to the flash. See below wireshark traces showing the download via the TFTP protocol. 

  • Thank you for answer. There is a lot of new information for me, so I will get acquainted with it later.

    I've decided to use UART, which works well: boot_serial + [sflash](bitbucket.org/.../sflash) + Ubuntu 16.