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.

Linux/TM4C1294NCPDT: Flashing Tiva with DFU in Linux

Part Number: TM4C1294NCPDT
Other Parts Discussed in Thread: UNIFLASH

Tool/software: Linux

Hello,

Is there an update on the ability to flash TIVA through Linux? In Windows environment we make sure the device comes up as a "Stellaris Device Firmware Upgrade" and then use the program dfuprog.exe through a command prompt to flash a dfu image. Is there anything equivalent that can be ran from Linux?

I found this earlier post though I don't see an official reply and the links in the original post are now inactive so I'm not sure if the page they reference has changed or is stil the same. e2e.ti.com/.../417569

Thanks,
Juan

  • Hi Juan,
    UniFlash v3 has support for DFU interface but only on Windows. This is because the dependent Tiva DLL that UniFlash relies on is only available on Windows. Sorry

    ki
  • Hello Ki,

    Thank you for your reply. Is there anything similar we can do in Linux even if it's without UniFlash?

    Assuming the Tiva device is in a state that would be read as "Stellaris Device Firmware Upgrade" by Windows, and we have a valid dfu image, is there anything we can do through command line, or anything else really, that would successfully flash that new dfu image?

    There seems to be a Linux alternative to dfuprog.exe called dfu-util (dfu-util.sourceforge.net/) but not sure how we may be able to use that to fully replace the current Windows process. Any tips or ideas would be greatly appreciated.

    Thank you,
    Juan
  • Juan - I can only speak for UniFlash. I will let the other Tiva experts comment about an alternative solution.

    Thanks
    ki
  • Hello Ki,

    Is there anyone at TI that can help clarify if dfu-util can be used? Would really like to see if it's possible to send a valid DFU to our Tiva device from within linux.

    Thanks,
    Juan

  • Uniflash is necessary for loading the bootloader which we don't need to do from linux. The question is once the device can accept DFU images through the dfuprog.exe in Windows, is there a method for achieving the same firmware flashing from linux instead of windows? With a potential alternative to dfuprog.exe (windows) being dfu-util.
  • I can confirm that dfu-util version 0.8 can be used to download DFU binary to TM4C123; for example:

    cp blinky.bin blinky.dfu
    dfu-suffix -a blinky.dfu -v 0x1cbe -p 0x00ff
    dfu-prefix -s 0x0000 -a blinky.dfu
    dfu-util -D blinky.dfu

    Target does not reset after firmware download. You can do so by downloading a special DFU file:

    $ hexdump -C reset.dfu 
    00000000  07 00 00 00 00 00 00 00  ff ff be 1c ff 00 00 01  |................|
    00000010  55 46 44 10 10 91 ca fd                           |UFD.....|
    00000018