AWR2944EVM: Gathering data with the DCA1000EVM with HECR demo running

Part Number: AWR2944EVM
Other Parts Discussed in Thread: DCA1000EVM, , AWR2944

Tool/software:

Hello TI engineers,

I have successfully gathered raw ADC data with the DCA1000EVM and the AWR2944EVM whilst running the OOB demo, I followed the steps described here:AWR2944EVM: Is it possible to use DDM mode for raw data capture with the DCA1000EVM?  

I don't know if that is correct, but from what I have observed during the work with the OOB demo is that if the DCA is armed then it will start gathering data when the radar starts streaming them, i.e. on the receival of the 'sensorStart'.

The HECR demo  doesn't use the CLI and is streaming data constantly during its operation. As such I was unable to gather data with the DCA1000EVM when I followed the same steps as I did with the OOB demo. Note: I did enable LVDS streaming in the chirp_design_HECR.h file.

So my question is how can I gather ADC data with the DCA1000EVM from the AWR2944EVM when running the HECR demo?

Best regards,
Mark

  • Hello,

    How did you enable LVDSM streaming in the chirp_design_HECR.h file? Can you try as shown

    Also how are you rebuilding the HECR demo after you make the changes? I just want to make sure when you use setenv.bat to configure the build environment, that you are using the setenv.bat file from SDK 4.7.0.1 since that is what was used to build this demo.

    Best,

    Gabriel

  • Hello Gabriel,

    Yes I did connect enable LVDS streaming in the chirp_design_HECR.h files of the demo.

    Here is precisely my setup:

    • AWR2944EVM configured such as during development with the CCS :
      • SOP0 only is connected
      • S1 switch is set to XDS
      • S2 switch is set to its lowest position
      • XDS_USB plugged in to the PC
    • DCA100EVM:
      • Switches set as shown in photo
      • Ethernet cable connected to my PC
      • (No USB connection)
    • DCA’s json script has been modified to work with real data chain only, please take a look at it maybe it is wrong.

    Here is how I execute every step and their sequence - which works with the OOB fine:

    • I flash the AWR2944EVM with the firmware, but at this stage I do not run it
    • I configure the DCA1000EVM with these commands:
      • exe fpga cf_awr2944.json
      • exe record cf_awr2944.json
      • exe start_record cf_awr2944.json
    • Now that the DCA1000EVM is listening for data I run both cores on the AWR2944EVM
    • I stop the DCA1000EVM after several seconds (say around 15) with:
      • exe stop_record cf_awr2944.json

    All DCA1000EVM commands get the status: “X” command : Success. But after the stop command I do not see any .bin file.

    EDIT:

    Based on the log files it seems that despite the settings in the HECR file, no LVDS data are being streamed: 

    ------------------------------- Attempted run with HECR -------------------------------
    Fri Oct 03 13:34:32 2025
    FPGA Configuration Command (req)
    
    Fri Oct 03 13:34:32 2025
    FPGA Configuration command : Success
    
    Fri Oct 03 13:34:33 2025
    Return status : 0
    
    Fri Oct 03 13:34:36 2025
    Configure Record Command (req)
    
    Fri Oct 03 13:34:36 2025
    Configure Record command : Success
    
    Fri Oct 03 13:34:37 2025
    Return status : 0
    
    Fri Oct 03 13:34:44 2025
    Start Record Command (req)
    
    Fri Oct 03 13:34:44 2025
    Start Record Command (req)
    
    Fri Oct 03 13:34:44 2025
    Start Record command : Success
    
    Fri Oct 03 13:34:44 2025
    Start Record command : Success
    
    Fri Oct 03 13:34:44 2025
    Return status : 0
    
    Fri Oct 03 13:35:14 2025
    No LVDS data
    
    Fri Oct 03 13:35:14 2025
    Record stop is done successfully
    
    Fri Oct 03 13:35:16 2025
    stop_record
    
    Fri Oct 03 13:35:16 2025
    No record process is running.
    
    ------------------------------- Attempted run with OOB -------------------------------
    Fri Oct 03 13:49:56 2025
    FPGA Configuration Command (req)
    
    Fri Oct 03 13:49:56 2025
    FPGA Configuration command : Success
    
    Fri Oct 03 13:49:56 2025
    Return status : 0
    
    Fri Oct 03 13:50:00 2025
    Configure Record Command (req)
    
    Fri Oct 03 13:50:00 2025
    Configure Record command : Success
    
    Fri Oct 03 13:50:00 2025
    Return status : 0
    
    Fri Oct 03 13:50:07 2025
    Start Record Command (req)
    
    Fri Oct 03 13:50:08 2025
    Start Record Command (req)
    
    Fri Oct 03 13:50:08 2025
    Start Record command : Success
    
    Fri Oct 03 13:50:08 2025
    Start Record command : Success
    
    Fri Oct 03 13:50:08 2025
    Return status : 0
    
    Fri Oct 03 13:50:48 2025
    Stop Record Command (req)
    
    Fri Oct 03 13:50:48 2025
    Record stop is done successfully
    
    Fri Oct 03 13:50:48 2025
    Stop Record command : Success
    

    Here is my used .json file:

    {
      "DCA1000Config": {
        "dataLoggingMode": "raw",
        "dataTransferMode": "LVDSCapture",
        "dataCaptureMode": "ethernetStream",
        "lvdsMode": 2,
        "dataFormatMode": 3,
        "packetDelay_us": 25,
        "ethernetConfig": {
          "DCA1000IPAddress": "192.168.33.180",
          "DCA1000ConfigPort": 4096,
          "DCA1000DataPort": 4098
        },
        "ethernetConfigUpdate": {
          "systemIPAddress": "192.168.33.30",
          "DCA1000IPAddress": "192.168.33.180",
          "DCA1000MACAddress": "12.34.56.78.90.12",
          "DCA1000ConfigPort": 4096,
          "DCA1000DataPort": 4098
        },
        "captureConfig": {
          "fileBasePath": "C:\\ti\\mmwave_studio_03_01_04_04\\mmWaveStudio\\PostProc",
          "filePrefix": "adc_data",
          "maxRecFileSize_MB": 1024,
          "sequenceNumberEnable": 1,
          "captureStopMode": "infinite",
          "bytesToCapture": 4000,
          "durationToCapture_ms": 4000,
          "framesToCapture": 40
        },
        "dataFormatConfig": {
          "MSBToggle": 0,
          "laneFmtMap": 0,
          "reorderEnable": 0,
          "dataPortConfig": [
            {
              "portIdx": 0,
              "dataType": "complex"
            },
            {
              "portIdx": 1,
              "dataType": "complex"
            },
            {
              "portIdx": 2,
              "dataType": "complex"
            },
            {
              "portIdx": 3,
              "dataType": "complex"
            },
            {
              "portIdx": 4,
              "dataType": "complex"
            }
          ]
        }
      }
    }

    Best regards,

    Mark

  • I found out the issue which is causing this behaviour to be inside the demo's source code. I will open a new thread on that soon.