TMDSEMU110-U: Hi, I'm new here and this is what I'm planning to do with the MMWAVEICBOOST + IWR6843AOP device.

Part Number: TMDSEMU110-U
Other Parts Discussed in Thread: IWR6843AOPEVM, MMWAVEICBOOST,

Tool/software:

Seems like no other place to post this, so posting here.

Greetings, my name is Daniel Donnelly.  I'm working on a sweat equity project (no initial pay).  They would like to demo capabilities for 3D people tracking in a room (for home audio tuning / fall sensing), my "bosses".

What I've done so far is completely rewritten about 60% of the Industrial Visualizer provided by TI that's written in python for the xWR6843 devices.   We had a hunch that it was Python slowing down and causing the app to crash.  It turns out that the C++ version I wrote, probably because I used the same JSON internal data structures, turned out to be slower.

It was a PyQt5 to Qt/C++ conversion.  I took me a good 150 hours of manual coding.  But now that I have some auto-coding (Claude Sonnet 4) under my belt.  If I ever convert Python to C++ again, I would definitelly make use of the AI tools where I can.

Anyhow, we determined that this crash is completely caused on the hardware side, and cannot be gotten out of unless you unplug/plug back in the IWR6843AOPEVM module.   Then you have 5 minutes of Industrial Visualizer play time before it starts slowing down and eventually sending corrupt packets or nothing at all (I've forgotten).

So my plan is to debug the IWR6843AOPEVM's out-of-box demo using CCS.  I have the code in a project, it builds, but when I use the MMWAVEICBOOST onboard XDS110, I am unable to get a breakpoint to work.  You can set it when the code is not debugging.  Then click debug, and they disable (temporarily only while it's running),  so that's a problem, because breakpoints are my most used tool in my Debug arsenal.


Then when I plug in the XDS110 external debugger I have, I believe it's the original Texas Instruments XDS110 DEBUG PROBE (v1, but not written), with serial # TMDSEMU110-U, I can't begin to debug because of an error.  It suggests I set TCLK, and I've tried both 100.0kHz as well as 1.0MHz, the default is 5.0MHz.

It says some other things too I don't quite understand, but here it is:

CS_DAP_0: Error connecting to the target: (Error -267 @ 0x0) The controller could not detect valid target supply. Check target JTAG connection and/or connection setting specifying voltage level. (Emulation package 20.3.0.3656) 

If I can get this demo debugged, I would be glad to help others get a working demo out of this (I would share my bugfix guidance in the forums).  I believe when researched this crashing Industrial Visualizer issue prior to this occasion, the forums said it was on the Python side, and that 5minutes is good enough for a demo before the crash.   Also, this crash occurs consistently across three different client machines / three different IWR6843AOPEVM modules.  They are simply wrong about this.  The crash is in the hardware code.  I am confident I can debug it having over 15 years of debugging experience under my belt, and I know C very well.


Claude Sonnet 4 suggests I probe the JTAG header with a multimeter, which I will try doing tomorrow.  But if anyone knows just what is wrong, from experience, that would be great.

Yours truly,
Debug Master Dan

  • Crap, that's the wrong error message, I will get it when I plug everything back in :)

  • Okay, here's the real error message I can't get past:

    CS_DAP_0: Error connecting to the target: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 20.3.0.3656)


    The hardware I think is all connected and is in really good condition.  The only thing used is the XDS110 debug probe, but it's in great condition.  Maybe a loose JTAG pin, IDK!

  • And I've tested my old IWR6843AOPEVM, it connects and runs the demo (before crashing) in the Python industrial visualizer.  So I know it works and can do this.  It's to do with the Debug Probe connection then.

  • Forgot to mention, I also have XDS110 / JTAG jumper pins J14, J15 jumpered to 2-3, for external debug probe, SW1 OFF, and SW3 ON.  Per Claude's instructions, but I didn't really find this data anywhere else.

  • Hi Dan, 

    Thank you for all the context on the issues you are dealing with, it is very helpful. However, I do still have a couple additional questions that I'm hoping you could answer to help me better understand your situation.

    1. Which demo/example software are you running at the moment? You mention both 3D people tracking and the Out of box demo which are actually separate examples. Can you clarify which example is loaded when you are facing the issue? Also, which Radar Toolbox and/or mmWave SDK version do you have installed?
    2. When running with the python visualizer and experiencing crashes after ~5 min, what configuration are you sending to the to the sensor? Are you using one of our default configs (if so which?) or a custom configuration you have developed?

    Regarding using the MMWAVEICBOOST vs the external XDS debugger (TMDSEMU110-U), technically either of these could be used for debugging this device. However, I would strongly suggest using the MMWAVEICBOOST because the connections will be much easier, simply mounting the IWR6843AOPEVM directly onto the MMWAVEICBOOST and ensuring the correct switch settings on both boards is all that is needed. 

    We have a guide here which gives the correct switch settings you should use. Please refer to the sections titled 'mmWaveICBoost Initial Configuration' and 'AOP With mmWaveICBoost Attached' to confirm your settings and connections are correct. http://dev.ti.com/tirex/local?id=evm_setup_operational_modes&packageId=radar_toolbox 

    Regarding the issues that you described with the breakpoints, as you mentioned, if you place a breakpoint before beginning the debug session, then all breakpoints will become disabled. You can however enable them again once you have started the debug session, by right clicking the breakpoints in the breakpoint window (View->Breakpoints). Alternatively, you can place the breakpoints you need after the code has been loaded but before pressing resume (execution must be paused) and then you should be able to place breakpoints normally. 

    Finally, you may already be aware of this but incase not I wanted to link our general guide for debugging in CCS with mmWave devices. Are you already following the steps described here? http://dev.ti.com/tirex/local?id=Debugging_with_older_CCS_versions&packageId=radar_toolbox 

    Best regards,

    Josh

  • The demo/example I run in the Industrial Visualizer doesn't seem to matter, though my go to has been the demo that my bosses first need which is:

    Demo: 3D People Tracking

    Config: AOP_6m_default.cfg

    However, the crash will occur with any Demo/Example selection. 

    The out-of-box-demo code I was referring to is the name of the xWR6843 firmware example project (hardware side).  I figured "out of box demo" would be the firmware it came with.  I somehow found it in the CCS examples browsing for it using CCS itself.

    Specifically, it's a copy of out_of_box_6843_aop.    I'm assuming there's only one firmware project I need to look at the one it's using, right?  

    I will now look at those documents to see if there's anything I missed.

  • http://dev.ti.com/tirex/local?id=evm_setup_operational_modes&packageId=radar_toolbox 

    Checked this document, my switch setting on the MMWAVEICBOOST already match the developer mode switch settings: all ON except for 1,8,9 which are OFF.

    I didn't seem mention of xWR6843 anywhere in that document so stopped reading.  I can't just think hmm what's the closest match, as it pertains to this document, because I don't really know!


    Now I will try your suggestion with the breakpoints and then go through the last debugging document you linked to.

  • Josh, 

    Okay, your suggestion with the breakpoints worked.  Pausing and then setting the breakpoint seems to keep it red (enabled) even when I hit continue.  However, I don't know how I'm gonna find the main loop where I can actually test the breakpoint.  I will work on that next.

    Related question: how do I find what firmware project is currently running on the xWR6843?   What firmware should I be debugging is the question...

  • This actually doesn't solve the breakpoint problem (suggestion about pausing, setting breakpoint, then continuing).  I set breakpoints doing this in both the control loop and the radar loop, and they're seemingly never hit.   So breakpoints are still not working.

    Secondly, I plugged in my dev machine the xWR6843 itself so that I can trigger the crash, the Python Industrial Visualizer demo then just spins (takes away GUI responsiveness, and does nothing).   

    Not sure where to begin on this...

  • Hi Dan, 

    My apologies for the delayed response, I had been out of office the past couple of days and it seems this thread was not appropriately handled in my absence. I think there's a couple of things I can clarify here to help out.

    First, I noticed you are using CCS 20+ and I had linked the debugging guide for the old CCS version (eclipse based).... Please refer to this guide instead: http://dev.ti.com/tirex/local?id=Debugging_with_CCS_20&packageId=radar_toolbox 

    Second, as mentioned in the guide, the first step is that you must load a debug binary image to flash memory before you can load the out of box example (or any example that you wish to debug). This requires that you install the mmWave SDK and use Uniflash to load the ccs debug image. In your case, this is xwr68xx_ccsdebug.bin.

    Also, I want to clarify that the demo/example selected in the visualizer must match what is actually running on the board, so if you are trying to run the people tracking example, then you must import and build and load the people tracking example within CCS, not the out of box demo. We have specific steps for doing this in the Developer's Guide section of the 3D People Tracking User Guide.

    I didn't seem mention of xWR6843 anywhere in that document so stopped reading.  I can't just think hmm what's the closest match, as it pertains to this document, because I don't really know!

    Please refer to the section called AOP with mmWaveICBoost attached as seen below. This is the relevant section for your setup. 

    Best regards,

    Josh