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.

SEVERE: Cannot perform operation, target is not connected.

Other Parts Discussed in Thread: MSP430F2618, CODECOMPOSER

I am new to TI CodeComposer, having only done some builds of other people's stuff for a project I am working on.  I need to write a bunch of test scripts for this software.  We are running on a TI MSP430F2618 with Code COmposer v5.1 and the USB emulator pod.  When I run the example script, I get an error when I try to execute the following line:

debugSession.memory.loadProgram("/Users/rbrown/workspace_v5_1/xPG/Debug/xPG.out");

loadProgram: ENTRY sFileName: /Users/rbrown/workspace_v5_1/xPG/Debug/xPG.out
SEVERE: Cannot perform operation, target is not connected.
SEVERE: Error loading "/Users/rbrown/workspace_v5_1/xPG/Debug/xPG.out": Cannot perform operation, target is not connected.

I can get connected to the target inside Code COmposer, but the script is having troubles.  For what its's worth, here is what I get when I try to open the session:

debugSession = debugServer.openSession(".*");
openSession: ENTRY sPattern: .*
start: ENTRY
start: Firing: onServerStarting()
start: Connecting to XPCOM DebugServer
start: Initializing DebugServer using specified configuration: "C:\Users\rbrown\workspace_v5_1\xPG\MSP430F2618.ccxml"
waitUntil: ENTRY com.ti.ccstudio.scripting.environment.ScriptingEnvironment@1c695a6 timeout: infinite
<init>: CPU Name: MSP430
<init>: PartNum: MSP430F2618
<init>: Family: 430
<init>: SubFamily/MajorISA: 0
<init>: Revision/MinorISA: 0
<init>: Platform: EMULATOR
<init>: Processor ID: 1803550720
waitUntil: RETURN com.ti.ccstudio.scripting.environment.ScriptingEnvironment@1c695a6
start: Firing: onServerStarted()
start: Searching for devices
listDevices: ENTRY
listDevices: Found debuggable device: TI MSP430 USB1/MSP430
listDevices: RETURN
start: RETURN
openSession: Searching for device exactly matching name: .*
openSession: No exact name matches found.  Searching for device matching regular expression: .*
open: Initializing RTDX: "RTDXServer.1"
getServer: ENTRY sServerName: RTDXServer.1
getServer: Getting definition for: RTDXServer.1
getServer: Constructing server
getServer: RETURN com.ti.debug.engine.scripting.RTDXServer@7eb6e2
openSession: ENTRY sDebugSession: TI MSP430 USB1/MSP430
getServer: ENTRY sServerName: DebugServer.1
getServer: Getting cached server: DebugServer.1
getServer: RETURN com.ti.debug.engine.scripting.DebugServer@166a22b
openSession: ENTRY session: com.ti.debug.engine.scripting.DebugSession@118d189
openSession: RETURN com.ti.debug.engine.scripting.RTDXSession@648016
openSession: RETURN
openSession: RETURN TI MSP430 USB1/MSP430
com.ti.debug.engine.scripting.DebugSession@118d189

I did have to change a few things in the dsp.bat script, as it was apparently trying to use non-existent versions of files.  Since I am a Linux/emacs nut, I converted dss.bat into dss.sh so I could run it under cygwin from my beloved xemacs.  Just in case I botched something, here is the dss.sh script I use to invoke Rhino:

#!/usr/bin/bash

# dss.sh -- cygwin port of dss.bat, script to run js scripts on TI DSS.

# Path to necessary binaries
DEBUGSERVER=/cygdrive/c/ti/ccsv5/ccs_base/DebugServer
PATH=/cygdrive/c/ti/ccsv5/eclipse/plugins/com.ti.dvt.ofssymbolmanager_3.1.0.201110191212:$PATH
PATH=/cygdrive/c/ti/ccsv5/eclipse/plugins/com.ti.dvt.tidisassembly_3.1.0.201110191212:$PATH

# DOS Path to Rhino JAR File
RHINO_JAR='C:\ti\ccsv5\ccs_base\DebugServer\packages\ti\dss\java\js.jar'

# DOS Path to DVT Scripting JAR File
DVT_SCRIPTING_JAR='C:\ti\ccsv5\ccs_base\dvt\scripting\dvt_scripting.jar'

# DOS Path to DebugServer JAR File
SCRIPTING_JARS='C:\ti\ccsv5\ccs_base\DebugServer\packages\ti\dss\java\dss.jar'

# Name of Rhino Shell Java Application
RHINO_SHELL=org.mozilla.javascript.tools.shell.Main

# Name of Rhino Debugger Java Application
RHINO_DEBUGGER=org.mozilla.javascript.tools.debugger.Main

# use java run-time installed with code composer
JAVA_HOME=/cygdrive/c/ti/ccsv5/eclipse/jre
PATH=/cygdrive/c/ti/ccsv5/eclipse/jre/bin:$PATH

# Launch Rhino script engine.  Import the scripting package.
java.exe -Xms40m -Xmx384m -cp "$RHINO_JAR;$SCRIPTING_JARS;$DVT_SCRIPTING_JAR" $RHINO_SHELL $*

 Can anybody help me with this problem?  I am stumped at this point.

Thanks!  :-)

 

 

  • There should be a line in the script like target.connect(). This is the call to connect to the target. So you see it in your script?

  • No, not in my script, nor in the example from TI either.

    Where does this "target" object come from?  I have "script", "debugServer", and "debugSession" objects cloned from the example script, but no "target" object anywhere.

    Here is what I get when I try to execute the call you provided:

    js> target.connect();
    js: "<stdin>", line 19: uncaught JavaScript runtime exception: ReferenceError: "target" is not defined.
    js>

    Likewise, when I try to invoke the "connect" method from my "debugSession" object, it doesn't know that method:

    js> debugSession.connect();
    js: "<stdin>", line 20: uncaught JavaScript runtime exception: TypeError: Cannot find function connect.
    js>

    So where do I get this "target" object from???

  • An instance of the target class gets created when a debug session is launched. So you would use it with your 'debugSession' object:

    debugSession.target.connect();

  • GOT IT !!!

    "target" is a member of "debugSession", so the following works:

    js> debugSession.target.connect();
    connect: ENTRY
    connect: Requesting target connect
    waitUntil: ENTRY timeout: infinite
    log: Target is now connected
    waitUntil: RETURN
    connect: RETURN
    js>

    THANKS !!!  :-)