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.

LM Flash Tiva DFU Device Detection fails with Updated Stellaris ICDI Drivers

Other Parts Discussed in Thread: TM4C1232D5PM, LMFLASHPROGRAMMER

For others facing an issue where previously- working hardware designs now fail in the board-programming process:
The updated Tiva/Stellaris DFU Windows driver supplied in the recent "XDS-ICDI Debug Probe" update
of 09 October 2014, contains changes that cause LM Flash to fail to detect Tiva C devices connected as DFU. 

Manually reverting to the drivers in the TivaWare folder or the StellarisWare folder restores connectivity.

Driver  V 1.4.0.0 (09 Oct 2014) fails.

Driver V 1.2.9270.0 (03 Aug 2012) (Old StellarisWare) works correctly.

Driver V 1.3.953.0 (05 Sept 2012) (New StellarisWare) works correctly.

Driver V 2.1.0.12573 (07 Feb 2014) (New TivaWare) works correctly.

In Windows Device Manager, simply toggling between these drivers causes connected devices in DFU to be
detected / not detected in LM Flash.

My configuration:  Win7 x64,  LM Flash Build 1613,  connecting to TM4C1232D5PM factory-fresh devices on PCB.

_______________ More forensics:

In the INFs that work:

;
; NOTE:
;
; The following GUID is used by software that accesses Stellaris DFU devices
; (dfuprog and LM Flash Programmer).  If you want your device to be accessible
; by these tools, don't change it.
;
[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{D17C772B-AF45-4041-9979-AAFE96BF6398}"

..... And this Interface GUID is missing from the XDS-ICDI Debug Probe INF.


Note that in Windows,  a newer-date signed driver will supersede other drivers with similar match levels, so
until a new SIGNED driver for VID/PID 1CBE/00FF is released, using "Search Automatically" in "Update Driver" will cause the BAD version to be active.

HTH -- Good Luck!

EDIT: updated title... ICDI driver update is the cause.

  • Hello Joe,

    Thanks for bringing the recovery steps up.

    Forum,

    Please note that XDS-ICDI is different from Stellaris ICDI and would not be supported by LMFlashProgrammer. So this "Tip" by Joe is very useful

    Regards

    Amit

  • Hi Amit--
    It looks like the offending INF file was acquired through an update to CCS6:

    The update that installed this appears to have been "TI Emulators" 5.1.600.0.
    The corresponding Eclipse feature is com.ti.emulation.pack.win32.

    I'm adding this info because I didn't intend to update a debug probe, and specifically install this XDS DFU driver, I just wanted XDS100 support for a later project.  The update uses DPINST to override the current driver,
    and set the formerly working TivaWare Device Firmware Upgrade to the non-working instance, in a silent
    and automated process.

    Is it possible to request the DFU device name in the XDS-ICDI INF be changed to indicate its specific usage for probe update?
    Now, it is:

    DESCRIPTION_0 = "XDS-ICDI Debug Probe"

    DESCRIPTION_1 = "XDS-ICDI DFU Interface"
    DESCRIPTION_2 = "XDS-ICDI Data Port"
    DESCRIPTION_3 = "Stellaris Device Firmware Upgrade"
    SERVICE       = "XDS-ICDI Device Interfaces"

    ... The same name specified in the StellarisWare INF.

    If the name were changed, then at least there would be a clue in Device Manager that
    a different driver was needed.


    Thanks!