Other Parts Discussed in Thread: TM4C1292NCPDT, AM1802
Tool/software: Code Composer Studio
How to configure 2x XDS200 (USB) so that they can each be used to debug their specific Tiva TM4C1294NCPDT board?
Using a single xds200 with single TM4C1294NCPDT target works fine. Now there is a need to debug two boards at the same time. To do this we have 2 XDS200 debuggers, each connected to their own board. The CCS wiki instructions tell that this should be a working configuration. The CCS wiki instructions tell that the devices should have Serial number enabled and serials different from each other. Instructions also tell that CCS should have a custom target configuration which has the two debug probes and their routing paths set, and each debugger should have a specific I/O port number.
So, the target set up is done according to the instructions:
target.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configurations XML_version="1.2" id="configurations_0">
<configuration XML_version="1.2" id="Texas Instruments XDS2xx USB Debug Probe_0">
<instance XML_version="1.2" desc="Texas Instruments XDS2xx USB Debug Probe_0" href="connections/TIXDS2XXUSB_Connection.xml" id="Texas Instruments XDS2xx USB Debug Probe_0" xml="TIXDS2XXUSB_Connection.xml" xmlpath="connections"/>
<connection XML_version="1.2" id="Texas Instruments XDS2xx USB Debug Probe_0">
<instance XML_version="1.2" href="drivers/tixds560cs_dap.xml" id="drivers" xml="tixds560cs_dap.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds560cortexM.xml" id="drivers" xml="tixds560cortexM.xml" xmlpath="drivers"/>
<platform XML_version="1.2" id="platform_0">
<instance XML_version="1.2" desc="Tiva TM4C1294NCPDT_0" href="devices/tm4c1294ncpdt.xml" id="Tiva TM4C1294NCPDT_0" xml="tm4c1294ncpdt.xml" xmlpath="devices"/>
</platform>
</connection>
</configuration>
<configuration XML_version="1.2" id="Texas Instruments XDS2xx USB Debug Probe_1">
<instance XML_version="1.2" desc="Texas Instruments XDS2xx USB Debug Probe_1" href="connections/TIXDS2XXUSB_Connection.xml" id="Texas Instruments XDS2xx USB Debug Probe_1" xml="TIXDS2XXUSB_Connection.xml" xmlpath="connections"/>
<connection XML_version="1.2" id="Texas Instruments XDS2xx USB Debug Probe_1">
<instance XML_version="1.2" href="drivers/tixds560cs_dap.xml" id="drivers" xml="tixds560cs_dap.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds560cortexM.xml" id="drivers" xml="tixds560cortexM.xml" xmlpath="drivers"/>
<property Type="stringfield" Value="1" id="portAddr1"/>
<platform XML_version="1.2" id="platform_0">
<instance XML_version="1.2" desc="Tiva TM4C1292NCPDT_0" href="devices/tm4c1292ncpdt.xml" id="Tiva TM4C1292NCPDT_0" xml="tm4c1292ncpdt.xml" xmlpath="devices"/>
</platform>
</connection>
</configuration>
</configurations>
When launching the target configuration, the launch will end in error.
CORTEX_M4_0: GEL Output:
Memory Map Initialization Complete
CS_DAP_0: Error initializing emulator: (Error -2083 @ 0x0) Unable to communicate with the debug probe. Confirm debug probe configuration and connections, reset the debug probe, and retry the operation. (Emulation package 8.0.803.0)
Checking the Windows 10 device manager shows Ports: 2x XDS200 Emulator CDC Serial port and 2x XDS 200 User CDC serial port, each with their unique COM port assigned. No conflicts are indicated here.
Using xds2xx_conf tool to check settings:
C:\ti\ccsv8\ccs_base\common\uscif\xds2xx>xds2xx_conf.exe get xds2xxu 0
boardRev=1
ipAddress=0.0.0.0
ipConfig=dhcp
ipGateway=0.0.0.0
ipNetmask=0.0.0.0
productClass=XDS2XX
productName=XDS200
serialNum=00:0E:99:04:37:16
swRev=1.0.0.8
hostCPU=AM1802
emuCtrlType=Bit bang
extMemType=SDRAM
portUSB=true
portENET=false
portWIFI=false
portRS232=false
EnableUSBSerial=true
CurrentMeasure=false
I assume the other XDS200 should have ID 1 as argument to the command (xds2xx_conf.exe get xds2xxu 1), but this command does not seem to work.
So, disconnected the other XDS200 and checked the other XDS200 settings alone:
C:\ti\ccsv8\ccs_base\common\uscif\xds2xx>xds2xx_conf.exe get xds2xxu 0
boardRev=1
ipAddress=0.0.0.0
ipConfig=dhcp
ipGateway=0.0.0.0
ipNetmask=0.0.0.0
productClass=XDS2XX
productName=XDS200
serialNum=00:0E:99:04:40:4F
swRev=1.0.0.8
hostCPU=AM1802
emuCtrlType=Bit bang
extMemType=SDRAM
portUSB=true
portENET=false
portWIFI=false
portRS232=false
EnableUSBSerial=true
CurrentMeasure=false
To me, this looks like Windows 10 or CCS8 cannot differentiate between the two XDS200 devices.
How to proceed?