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.

CCS/TM4C1294NCPDT: XDSDFU.exe - Stuck in DFU mode.

Part Number: TM4C1294NCPDT
Other Parts Discussed in Thread: CC1350,

Tool/software: Code Composer Studio

We have a custom design that uses the TM4C1294NCPDT.

Using xdsdfu.exe -e I can see the device connected to my laptop. 

It reads Device Name " Tiva Device Firmware Update" and Mode DFU.

I program it with a firmware.bin and it shows it gets programmed, but no matter how many times I try, it will not ever come up not in DFU mode.

When I program I use the -r at the end to reset.

I also have unplugged the device from my laptop and re-plugged in.

Any tips to get this thing unstuck from DFU mode?

Thanks!

-Ryan

  • Ryan Erb said:
    We have a custom design that uses the TM4C1294NCPDT.

    Does the design have the RBIAS resistor fitted?

    If not, maybe you are being affected by the following errata:

  • Yes, RBIAS is there. See attached schematic.

    Note I am trying to program over USB via XDSDFU.exe.

    Have not tried JTAG programming yet, still need to make a cable.

    I was hoping to complete this project without needing JTAG, but if I'm stuck with USB, then I may need to.

  • Also, if it helps, we tried to almost directly copy the reference design of the CC1350 LaunchPad.
  • Ryan Erb said:
    Using xdsdfu.exe -e I can see the device connected to my laptop. 

    I think xdsdfu.exe is for programming the XDS110 firmware. Not sure if LM Flash Programmer or dfuprog should be be used instead.

    Also, how is the binary file created?

    The 6.2 Tiva-Specific USB Download Commands section of the TivaWare™ Boot Loader USER’S GUIDE suggests an 8 byte header is required for the image:

    To ensure that a host application which does not have explicit support for Tiva-specific commands can still be used to download binary firmware images to the device, the protocol is defined such that only a single 8 byte header structure need be placed at the start of the binary image being downloaded. This header and the DFU-defined suffix structure can both be added using the supplied “dfuwrap” command-line application, hence providing a single binary that can be sent to a device running the Tiva USB boot loader using a standard sequence of DFU_DNLOAD requests with no other embedded commands or device-specific operations required. An application which does understand the Tiva-specific commands may make use of them to offer additional functionality that would not otherwise be available.

    [These suggestions are vague since I haven't myself tried programming TM4C129 devices via the USB DFU]

  • Chester,

    Thank you for the information.

    I used the xdsdfu to program the Tiva on the CC1350 LaunchPad. Basically the Tiva acts as the XDS110. Note if you look at the XDS110, it is the Tiva MCU. processors.wiki.ti.com/.../XDS110

    The binary was a default binary that I got and did not manually create. This binary and process works fine on the CC1350 LaunchPad board I have, which our product is essentially a copy of.

    I can try to dump the firmware.bin to pull the header if you think this would be helpful.

    Thank you!
    Ryan
  • Ryan Erb said:
    The binary was a default binary that I got and did not manually create. This binary and process works fine on the CC1350 LaunchPad board I have, which our product is essentially a copy of.

    The CC1350 LaunchPad contains a CC1350 target device and uses a TM4C1294NCPDT as the XDS110 emulator.

    Can you just clarify if the "default binary" was created for the CC1350 target or TM4C1294NCPDT.

  • Chester, it appears the binary was for the XDS110.

    Anyways, I was able to resolve this by re-flashing the bootloader.axf file through CCS. I was hoping to resolve it over USB, but it did require JTAG access.