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.

TIDEP-01012: MSS ESM Fault error status Async event recieved(0x0, 0x2000000)?

Part Number: TIDEP-01012
Other Parts Discussed in Thread: MMWCAS-RF-EVM, AWR2243

I am debugging my RF-board which almost follows MMWCAS-RF-EVM.

I got an error message "MSS ESM Fault error status Async event recieved(0x0, 0x2000000)" using a lua MIMO script (attached) in mmwave stuido.
(log message is attached also)
And I couldn't get ADC data at this time,

What does this mean?

  • Hello User,

    Thankyou for your concern. We'll be happy to help.

    I think you missed your attachments here. 

    Now coming to your RF-board, are you using AWR2243 ES1.0 or AWR2243 ES1.1? In case you're not sure, please refer to AWR2243 Errata document, section 3 (link). 

    Looking at the ESM fault error, I'm guessing you have AWR2243 ES1.0. It is a known error during boot up in that device, but it doesn't affect the functionality or capture. So there's probably something else that is preventing your capture.

    Regards,

    Ishita

  • Thank you your answer.
    To be exact, my chip is XAWR2243P ES1.0 (not AWR2243P ES1.0).
    Does what you mentioned apply to my chip?
    Just in case, please let me confirm this.

  • Hello User,

    Yes, the MSS ESM Fault error that you just mentioned is a known error in ES1.0 silicon during bootup, but as I mentioned, it does not affect the functionality. So this has nothing to do with failed capture.

    Can you send me your mmWave Studio output log to help us understand your issue better?

    Regards,

    Ishita

  • Thank you for promptly handling this matter with care.
    I confirm precisely.

    >Can you send me your mmWave Studio output log to help us understand your issue better?
    lua script and the log are attached as bellow.

    The acutual lua script is changed at the point of the firmware version.
    (actual I used the firmware version for ES1.0)

    GM: Constructor
    GM: Mon Mar 22 15:31:06 2021
    RSTD.Transmit("/Settings")
    [15:31:07]  
    [15:31:07]  ### Running Startup script: "C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Startup.lua" ###
    [15:31:07]  RSTD.SetAndTransmit ("/Settings/Scripter/Display DateTime" , "1")
    [15:31:07]  RSTD.SetAndTransmit ("/Settings/Scripter/DateTime Format" , "HH:mm:ss")
    [15:31:07]  Scripter ignored: Attempt to UnBuild() again or before Build.
    [15:31:07]  RSTD.SetVar ("/Settings/Clients/Client 0/Dll" , "C:\\ti\\mmwave_studio_03_00_00_14\\mmWaveStudio\\Clients\\\\LabClient.dll")
    [15:31:07]  RSTD.SetVar ("/Settings/Clients/Client 0/Use" , "TRUE")
    [15:31:07]  RSTD.SetVar ("/Settings/Clients/Client 1/Use" , "FALSE")
    [15:31:07]  RSTD.SetVar ("/Settings/Clients/Client 2/Use" , "FALSE")
    [15:31:07]  RSTD.SetVar ("/Settings/Clients/Client 3/Use" , "FALSE")
    [15:31:07]  RSTD.SetVar ("/Settings/Clients/Client 4/Use" , "FALSE")
    [15:31:07]  RSTD.SetVar ("/Settings/AL Client/AL Dll" , "C:\\ti\\mmwave_studio_03_00_00_14\\mmWaveStudio\\RunTime\\SAL.dll")
    [15:31:07]  RSTD.SetVar ("/Settings/Clients/Client 0/GuiDll" , "")
    [15:31:07]  RSTD.SetVar ("/Settings/AutoUpdate/Enabled" , "TRUE")
    [15:31:07]  RSTD.SetVar ("/Settings/AutoUpdate/Interval" , "1")
    [15:31:07]  RSTD.SetVar ("/Settings/Monitors/UpdateDisplay" , "TRUE")
    [15:31:07]  RSTD.SetVar ("/Settings/Monitors/OneClickStart" , "TRUE")
    [15:31:07]  RSTD.SetVar ("/Settings/Automation/Automation Mode" , "false")
    [15:31:07]  RSTD.Transmit("/")
    [15:31:07]  RSTD.SaveSettings(): Settings saved to "C:\Users\a144007\AppData\Roaming\RSTD\config.xml"
    [15:31:07]  RSTD.Build()
    [15:31:07]  RSTD.SaveSettings(): Settings saved to "C:\Users\a144007\AppData\Roaming\RSTD\config.xml"
    [15:31:07]  RSTD.Transmit("/")
    [15:31:07]  RSTD.AL_Build()
    [15:31:07]  RSTD.AL_LoadXml()
    [15:31:07]  RSTD.Transmit("/")
    [15:31:07]  RSTD.AL_Init()
    [15:31:07]  RSTD.Clients_Build()
    [15:31:07]  GM: Init
    [15:31:07]  GM: Loaded 'C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\Clients\\LabClient.dll'
    [15:31:07]  GM: 1 Guest (s) init
    [15:31:07]  GM: 1 Module(s) init
    [15:31:07]  GM: 2 Tab   (s) init
    [15:31:07]  RSTD.Client_LoadXml()
    [15:31:08]  [RadarAPI]: ar1.selectRadarMode(0)
    [15:31:08]  [RadarAPI]: Status: Passed
    [15:31:08]  Matlab Runtime Engine is installed
    [15:31:08]  [RadarAPI]: Starting Matlab Engine..
    [15:31:17]  [RadarAPI]: Matlab Engine Started!
    [15:31:19]  [RadarAPI]: ar1.selectCascadeMode(0)
    [15:31:19]  [RadarAPI]: Status: Passed
    [15:31:19]  [RadarAPI]: ar1.LoadSettings('C:\Users\a144007\AppData\Roaming\RSTD\ar1gui.ini')
    [15:31:19]  TESTING = false
    [15:31:19]  RstdNet: Port 2777: Listening..
    [15:31:19]  
    [15:31:19]  ***Script completed successfully.***
    [15:33:55]  Setting up Studio for Cascade started..
    [15:33:55]  [RadarAPI]: ar1.SelectCaptureDevice("TDA2XX")
    [15:33:55]  [RadarAPI]: Status: Passed
    [15:33:55]  [RadarAPI]: TDAStatusCallback Event Registered
    [15:33:55]  [RadarAPI]: registerTDAStatusCallback Status: Passed
    [15:33:55]  [RadarAPI]: ar1.ConnectTDA("192.168.33.180", 5001, 15)
    [15:33:56]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:33:56]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:33:56]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_VERSION_INFO Async event recieved() with status 0. TDA Version : REL_VISION_SDK_03_07_01_00 Aug  5 2019 15:04:45[15:33:56]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:33:56]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:33:57]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:33:57]  [RadarAPI]: ConnectTDACaptureCard Status: Passed
    [15:33:57]  TDA Capture Card Status : CONNECTED!
    [15:33:57]  ConnectTDA Successful
    [15:33:57]  [RadarAPI]: ar1.selectCascadeMode(1)
    [15:33:57]  [RadarAPI]: Status: Passed
    [15:33:57]  selectCascadeMode Successful
    [15:33:57]  Setting up Studio for Cascade ended..
    [15:33:57]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:33:58]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:33:58]  [RadarAPI]: ar1.FullReset(1)
    [15:33:58]  [RadarAPI]: Status: Passed
    [15:33:58]  [RadarAPI]: ar1.SOPControl_mult(1,4)
    [15:33:58]  [RadarAPI]: Status: Passed
    [15:33:58]  Master : SOP Reset Successful
    [15:33:59]  [DeviceId-0] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [15:33:59]  [DeviceId-0] MSS power up done async event received!
    [15:33:59]  [RadarAPI]: ar1.PowerOn_mult(1, 0, 1000, 0,0)
    [15:33:59]  [RadarAPI]: Status: Passed
    [15:33:59]  Master : SPI Connection Successful
    [15:33:59]  [RadarAPI]: ar1.DownloadBssFwOvSPI_mult(1, C:\\ti\\mmwave_dfp_02_02_00_03\\firmware\\xwr22xx_metaImage.bin)
    [15:34:01]  [DeviceId-0] MSS ESM Fault error status Async event recieved(0x0, 0x2000000)
    [15:36:09]  Master : FW Download Successful
    [15:36:10]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [15:36:10]  [RadarAPI]: Status: Passed
    [15:36:10]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [15:36:10]  [RadarAPI]: Status: Passed
    [15:36:10]  [RadarAPI]: ar1.deviceVariantSelection("XWR2243")
    [15:36:10]  [RadarAPI]: Status: Passed
    [15:36:10]  [RadarAPI]: ar1.frequencyBandSelection("77G")
    [15:36:10]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [15:36:10]  [RadarAPI]: Status: Passed
    [15:36:10]  Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [15:36:11]  [RadarAPI]: Device Restarted, Power On Async Event received
    [15:36:11]  [DeviceId-0] MSS power up done async event received!
    [15:36:11]  [RadarAPI]: ar1.RfEnable_mult(1)
    [15:36:11]  [RadarAPI]: Status: Passed
    [15:36:11]  [DeviceId-0] BSS power up done async event received!
    [15:36:13]  Master : RF Power Up Successful
    [15:36:13]  [RadarAPI]: ar1.ChanNAdcConfig_mult(1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 0, 1)
    [15:36:13]  [RadarAPI]: Status: Passed
    [15:36:13]  Master : Channel & ADC Configuration Successful
    [15:36:13]  [RadarAPI]: Device 2 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:36:14]  [RadarAPI]: Device 2 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:36:14]  [RadarAPI]: ar1.FullReset(2)
    [15:36:14]  [RadarAPI]: Status: Passed
    [15:36:14]  [RadarAPI]: ar1.SOPControl_mult(2,4)
    [15:36:14]  [RadarAPI]: Status: Passed
    [15:36:14]  Device 2 : SOP Reset Successful
    [15:36:14]  [DeviceId-1] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [15:36:14]  [DeviceId-1] MSS power up done async event received!
    [15:36:14]  [RadarAPI]: ar1.AddDevice(2)
    [15:36:14]  [RadarAPI]: Status: Passed
    [15:36:14]  Device 2 : SPI Connection Successful
    [15:36:14]  [RadarAPI]: Device 4 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:36:15]  [RadarAPI]: Device 4 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:36:15]  [RadarAPI]: ar1.FullReset(4)
    [15:36:15]  [RadarAPI]: Status: Passed
    [15:36:15]  [RadarAPI]: ar1.SOPControl_mult(4,4)
    [15:36:15]  [RadarAPI]: Status: Passed
    [15:36:15]  Device 3 : SOP Reset Successful
    [15:36:16]  [DeviceId-2] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [15:36:16]  [DeviceId-2] MSS power up done async event received!
    [15:36:16]  [RadarAPI]: ar1.AddDevice(4)
    [15:36:16]  [RadarAPI]: Status: Passed
    [15:36:16]  Device 3 : SPI Connection Successful
    [15:36:16]  [RadarAPI]: Device 8 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:36:16]  [RadarAPI]: Device 8 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:36:17]  [RadarAPI]: ar1.FullReset(8)
    [15:36:17]  [RadarAPI]: Status: Passed
    [15:36:17]  [RadarAPI]: ar1.SOPControl_mult(8,4)
    [15:36:17]  [RadarAPI]: Status: Passed
    [15:36:17]  Device 4 : SOP Reset Successful
    [15:36:17]  [DeviceId-3] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [15:36:17]  [DeviceId-3] MSS power up done async event received!
    [15:36:17]  [RadarAPI]: ar1.AddDevice(8)
    [15:36:17]  [RadarAPI]: Status: Passed
    [15:36:17]  Device 4 : SPI Connection Successful
    [15:36:17]  [RadarAPI]: ar1.DownloadBssFwOvSPI_mult(14, C:\\ti\\mmwave_dfp_02_02_00_03\\firmware\\xwr22xx_metaImage.bin)
    [15:36:19]  [DeviceId-1] MSS ESM Fault error status Async event recieved(0x0, 0x2000000)
    [15:36:19]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x0, 0x2000000)
    [15:36:19]  [DeviceId-2] MSS ESM Fault error status Async event recieved(0x0, 0x2000000)
    [15:38:49]  Slaves : FW Download Successful
    [15:38:50]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [15:38:50]  [RadarAPI]: Status: Passed
    [15:38:50]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [15:38:50]  [RadarAPI]: Status: Passed
    [15:38:51]  Slave1 Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [15:38:52]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [15:38:52]  [RadarAPI]: Status: Passed
    [15:38:52]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [15:38:52]  [RadarAPI]: Status: Passed
    [15:38:52]  Slave2 Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [15:38:53]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [15:38:53]  [RadarAPI]: Status: Passed
    [15:38:53]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [15:38:53]  [RadarAPI]: Status: Passed
    [15:38:53]  Slave3 Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [15:38:54]  [RadarAPI]: Device Restarted, Power On Async Event received
    [15:38:54]  [DeviceId-1] MSS power up done async event received!
    [15:38:54]  [RadarAPI]: ar1.RfEnable_mult(14)
    [15:38:54]  [DeviceId-3] MSS power up done async event received!
    [15:38:54]  [DeviceId-2] MSS power up done async event received!
    [15:38:54]  [DeviceId-1] BSS power up done async event received!
    [15:38:54]  [DeviceId-3] BSS power up done async event received!
    [15:38:54]  [DeviceId-2] BSS power up done async event received!
    [15:38:54]  [RadarAPI]: Status: Passed
    [15:38:59]  Slaves : RF Power Up Successful
    [15:38:59]  [RadarAPI]: ar1.ChanNAdcConfig_mult(14, 1, 1, 1, 1, 1, 1, 1, 2, 1, 0, 2)
    [15:38:59]  [RadarAPI]: Status: Passed
    [15:38:59]  Slaves : Channel & ADC Configuration Successful
    [15:38:59]  [RadarAPI]: ar1.RfLdoBypassConfig_mult(15, 0xF)
    [15:39:00]  [RadarAPI]: Status: Passed
    [15:39:00]  LDO Bypass Successful
    [15:39:00]  [RadarAPI]: ar1.LPModConfig_mult(15, 0,0)
    [15:39:00]  [RadarAPI]: Status: Passed
    [15:39:00]  Low Power Mode Configuration Successful
    [15:39:00]  [RadarAPI]: ar1.SetMiscConfig_mult(15, 1, 0, 0, 0)
    [15:39:00]  [RadarAPI]: Status: Passed
    [15:39:00]  Misc Control Configuration Successful
    [15:39:00]  [RadarAPI]: ar1.RfInitCalibConfig_mult(15, 1, 1, 1, 1, 1, 1, 1, 65537)
    [15:39:00]  [RadarAPI]: Status: Passed
    [15:39:00]  RF Init Calibration Successful
    [15:39:00]  [RadarAPI]: ar1.RfInit_mult(15)
    [15:39:00]  [DeviceId-0] RF Init async event received!
    [15:39:00]  [DeviceId-2] RF Init async event received!
    [15:39:00]  [DeviceId-1] RF Init async event received!
    [15:39:00]  [DeviceId-3] RF Init async event received!
    [15:39:00]  [RadarAPI]: Time stamp, Temperture: 169387,38; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [15:39:00]  [RadarAPI]: Time stamp, Temperture: 6383,39; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [15:39:00]  [RadarAPI]: Time stamp, Temperture: 6371,37; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [15:39:01]  [RadarAPI]: Time stamp, Temperture: 6360,36; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [15:39:01]  [RadarAPI]: Status: Passed
    [15:39:01]  RF Init Successful
    [15:39:01]  [RadarAPI]: ar1.DataPathConfig_mult(15, 0, 1, 0)
    [15:39:01]  [RadarAPI]: Status: Passed
    [15:39:01]  Data Path Configuration Successful
    [15:39:01]  [RadarAPI]: ar1.LvdsClkConfig_mult(15, 1,1)
    [15:39:01]  [RadarAPI]: Status: Passed
    [15:39:01]  Clock Configuration Successful
    [15:39:01]  [RadarAPI]: ar1.CSI2LaneConfig_mult(15, 1, 0, 2, 0, 4, 0, 5,0,3,0, 0)
    [15:39:01]  [RadarAPI]: Status: Passed
    [15:39:01]  CSI2 Configuration Successful
    [15:39:01]  [RadarAPI]: ar1.ProfileConfig_mult(15, 0, 77, 5, 6, 40, 0, 0, 0, 0, 0, 0, 78.986, 0, 256, 8000, 0, 0, 30)
    [15:39:02]  [RadarAPI]: Status: Passed
    [15:39:02]  Profile Configuration successful
    [15:39:02]  [RadarAPI]: ar1.ChirpConfig_mult(1, 0, 0, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:02]  [RadarAPI]: Status: Passed
    [15:39:02]  Device 1 : Chirp 0 Configuration successful
    [15:39:02]  [RadarAPI]: ar1.ChirpConfig_mult(1, 1, 1, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:02]  [RadarAPI]: Status: Passed
    [15:39:02]  Device 1 : Chirp 1 Configuration successful
    [15:39:02]  [RadarAPI]: ar1.ChirpConfig_mult(1, 2, 2, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:03]  [RadarAPI]: Status: Passed
    [15:39:03]  Device 1 : Chirp 2 Configuration successful
    [15:39:03]  [RadarAPI]: ar1.ChirpConfig_mult(1, 3, 3, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:03]  [RadarAPI]: Status: Passed
    [15:39:03]  Device 1 : Chirp 3 Configuration successful
    [15:39:03]  [RadarAPI]: ar1.ChirpConfig_mult(1, 4, 4, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:03]  [RadarAPI]: Status: Passed
    [15:39:03]  Device 1 : Chirp 4 Configuration successful
    [15:39:03]  [RadarAPI]: ar1.ChirpConfig_mult(1, 5, 5, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:03]  [RadarAPI]: Status: Passed
    [15:39:03]  Device 1 : Chirp 5 Configuration successful
    [15:39:03]  [RadarAPI]: ar1.ChirpConfig_mult(1, 6, 6, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:03]  [RadarAPI]: Status: Passed
    [15:39:03]  Device 1 : Chirp 6 Configuration successful
    [15:39:03]  [RadarAPI]: ar1.ChirpConfig_mult(1, 7, 7, 0, 0, 0, 0, 0, 1, 0,1)
    [15:39:03]  [RadarAPI]: Status: Passed
    [15:39:03]  Device 1 : Chirp 7 Configuration successful
    [15:39:03]  [RadarAPI]: ar1.ChirpConfig_mult(1, 8, 8, 0, 0, 0, 0, 0, 0, 1,0)
    [15:39:04]  [RadarAPI]: Status: Passed
    [15:39:04]  Device 1 : Chirp 8 Configuration successful
    [15:39:04]  [RadarAPI]: ar1.ChirpConfig_mult(1, 9, 9, 0, 0, 0, 0, 0, 1, 0,0)
    [15:39:04]  [RadarAPI]: Status: Passed
    [15:39:04]  Device 1 : Chirp 9 Configuration successful
    [15:39:04]  [RadarAPI]: ar1.ChirpConfig_mult(2, 0, 0, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:04]  [RadarAPI]: Status: Passed
    [15:39:04]  Device 2 : Chirp 0 Configuration successful
    [15:39:04]  [RadarAPI]: ar1.ChirpConfig_mult(2, 1, 1, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:04]  [RadarAPI]: Status: Passed
    [15:39:04]  Device 2 : Chirp 1 Configuration successful
    [15:39:04]  [RadarAPI]: ar1.ChirpConfig_mult(2, 2, 2, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:04]  [RadarAPI]: Status: Passed
    [15:39:04]  Device 2 : Chirp 2 Configuration successful
    [15:39:04]  [RadarAPI]: ar1.ChirpConfig_mult(2, 3, 3, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:04]  [RadarAPI]: Status: Passed
    [15:39:04]  Device 2 : Chirp 3 Configuration successful
    [15:39:04]  [RadarAPI]: ar1.ChirpConfig_mult(2, 4, 4, 0, 0, 0, 0, 0, 1, 0,1)
    [15:39:05]  [RadarAPI]: Status: Passed
    [15:39:05]  Device 2 : Chirp 4 Configuration successful
    [15:39:05]  [RadarAPI]: ar1.ChirpConfig_mult(2, 5, 5, 0, 0, 0, 0, 0, 0, 1,0)
    [15:39:05]  [RadarAPI]: Status: Passed
    [15:39:05]  Device 2 : Chirp 5 Configuration successful
    [15:39:05]  [RadarAPI]: ar1.ChirpConfig_mult(2, 6, 6, 0, 0, 0, 0, 0, 1, 0,0)
    [15:39:05]  [RadarAPI]: Status: Passed
    [15:39:05]  Device 2 : Chirp 6 Configuration successful
    [15:39:05]  [RadarAPI]: ar1.ChirpConfig_mult(2, 7, 7, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:05]  [RadarAPI]: Status: Passed
    [15:39:05]  Device 2 : Chirp 7 Configuration successful
    [15:39:06]  [RadarAPI]: ar1.ChirpConfig_mult(2, 8, 8, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:06]  [RadarAPI]: Status: Passed
    [15:39:06]  Device 2 : Chirp 8 Configuration successful
    [15:39:06]  [RadarAPI]: ar1.ChirpConfig_mult(2, 9, 9, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:06]  [RadarAPI]: Status: Passed
    [15:39:06]  Device 2 : Chirp 9 Configuration successful
    [15:39:06]  [RadarAPI]: ar1.ChirpConfig_mult(4, 0, 0, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:06]  [RadarAPI]: Status: Passed
    [15:39:06]  Device 3 : Chirp 0 Configuration successful
    [15:39:06]  [RadarAPI]: ar1.ChirpConfig_mult(4, 1, 1, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:06]  [RadarAPI]: Status: Passed
    [15:39:06]  Device 3 : Chirp 1 Configuration successful
    [15:39:06]  [RadarAPI]: ar1.ChirpConfig_mult(4, 2, 2, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:06]  [RadarAPI]: Status: Passed
    [15:39:06]  Device 3 : Chirp 2 Configuration successful
    [15:39:06]  [RadarAPI]: ar1.ChirpConfig_mult(4, 3, 3, 0, 0, 0, 0, 0, 0, 1,0)
    [15:39:07]  [RadarAPI]: Status: Passed
    [15:39:07]  Device 3 : Chirp 3 Configuration successful
    [15:39:07]  [RadarAPI]: ar1.ChirpConfig_mult(4, 4, 4, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:07]  [RadarAPI]: Status: Passed
    [15:39:07]  Device 3 : Chirp 4 Configuration successful
    [15:39:07]  [RadarAPI]: ar1.ChirpConfig_mult(4, 5, 5, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:07]  [RadarAPI]: Status: Passed
    [15:39:07]  Device 3 : Chirp 5 Configuration successful
    [15:39:07]  [RadarAPI]: ar1.ChirpConfig_mult(4, 6, 6, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:07]  [RadarAPI]: Status: Passed
    [15:39:07]  Device 3 : Chirp 6 Configuration successful
    [15:39:07]  [RadarAPI]: ar1.ChirpConfig_mult(4, 7, 7, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:07]  [RadarAPI]: Status: Passed
    [15:39:07]  Device 3 : Chirp 7 Configuration successful
    [15:39:07]  [RadarAPI]: ar1.ChirpConfig_mult(4, 8, 8, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:07]  [RadarAPI]: Status: Passed
    [15:39:07]  Device 3 : Chirp 8 Configuration successful
    [15:39:07]  [RadarAPI]: ar1.ChirpConfig_mult(4, 9, 9, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:08]  [RadarAPI]: Status: Passed
    [15:39:08]  Device 3 : Chirp 9 Configuration successful
    [15:39:08]  [RadarAPI]: ar1.ChirpConfig_mult(8, 0, 0, 0, 0, 0, 0, 0, 1, 0,1)
    [15:39:08]  [RadarAPI]: Status: Passed
    [15:39:08]  Device 4 : Chirp 0 Configuration successful
    [15:39:08]  [RadarAPI]: ar1.ChirpConfig_mult(8, 1, 1, 0, 0, 0, 0, 0, 0, 1,0)
    [15:39:08]  [RadarAPI]: Status: Passed
    [15:39:08]  Device 4 : Chirp 1 Configuration successful
    [15:39:08]  [RadarAPI]: ar1.ChirpConfig_mult(8, 2, 2, 0, 0, 0, 0, 0, 1, 0,0)
    [15:39:08]  [RadarAPI]: Status: Passed
    [15:39:08]  Device 4 : Chirp 2 Configuration successful
    [15:39:08]  [RadarAPI]: ar1.ChirpConfig_mult(8, 3, 3, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:08]  [RadarAPI]: Status: Passed
    [15:39:08]  Device 4 : Chirp 3 Configuration successful
    [15:39:08]  [RadarAPI]: ar1.ChirpConfig_mult(8, 4, 4, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:08]  [RadarAPI]: Status: Passed
    [15:39:09]  Device 4 : Chirp 4 Configuration successful
    [15:39:09]  [RadarAPI]: ar1.ChirpConfig_mult(8, 5, 5, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:09]  [RadarAPI]: Status: Passed
    [15:39:09]  Device 4 : Chirp 5 Configuration successful
    [15:39:09]  [RadarAPI]: ar1.ChirpConfig_mult(8, 6, 6, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:09]  [RadarAPI]: Status: Passed
    [15:39:09]  Device 4 : Chirp 6 Configuration successful
    [15:39:09]  [RadarAPI]: ar1.ChirpConfig_mult(8, 7, 7, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:09]  [RadarAPI]: Status: Passed
    [15:39:09]  Device 4 : Chirp 7 Configuration successful
    [15:39:09]  [RadarAPI]: ar1.ChirpConfig_mult(8, 8, 8, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:09]  [RadarAPI]: Status: Passed
    [15:39:09]  Device 4 : Chirp 8 Configuration successful
    [15:39:09]  [RadarAPI]: ar1.ChirpConfig_mult(8, 9, 9, 0, 0, 0, 0, 0, 0, 0,0)
    [15:39:10]  [RadarAPI]: Status: Passed
    [15:39:10]  Device 4 : Chirp 9 Configuration successful
    [15:39:10]  Test Source Already Disabled...!!!
    [15:39:10]  [RadarAPI]: ar1.DisableTestSource_mult(1,0)
    [15:39:10]  [RadarAPI]: Status: Passed
    [15:39:10]  [RadarAPI]: ar1.FrameConfig_mult(1, 0, 9, 10, 64, 100, 0, 1)
    [15:39:10]  [RadarAPI]: Status: Passed
    [15:39:10]  Master : Frame Configuration successful
    [15:39:10]  Test Source Already Disabled...!!!
    [15:39:10]  [RadarAPI]: ar1.DisableTestSource_mult(14,0)
    [15:39:11]  [RadarAPI]: Status: Passed
    [15:39:11]  [RadarAPI]: ar1.FrameConfig_mult(14, 0, 9, 10, 64, 100, 0, 2)
    [15:39:11]  [RadarAPI]: Status: Passed
    [15:39:11]  Slaves : Frame Configuration successful
    [15:39:11]  
    [15:39:11]  ***Script completed successfully.***
    [15:42:12]  [RadarAPI]: ar1.TDACaptureCard_StartRecord_mult(14, 0, 0, adc_data2021032204, 0)
    [15:42:12]  Device 0 - Configuring TDA with Width : 2048 and Height : 640
    [15:42:12]  [RadarAPI]: Device 0 - setWidthAndHeight Status: Passed
    [15:42:12]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:12]  Device 1 - Configuring TDA with Width : 2048 and Height : 640
    [15:42:12]  [RadarAPI]: Device 1 - setWidthAndHeight Status: Passed
    [15:42:12]  Device 2 - Configuring TDA with Width : 2048 and Height : 640
    [15:42:12]  [RadarAPI]: Device 2 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:12]  [RadarAPI]: Device 2 - setWidthAndHeight Status: Passed
    [15:42:12]  [RadarAPI]: Device 4 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:12]  Device 3 - Configuring TDA with Width : 2048 and Height : 640
    [15:42:12]  [RadarAPI]: Device 3 - setWidthAndHeight Status: Passed
    [15:42:12]  [RadarAPI]: Device 8 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:12]  Sending Frame Periodicity of 100 to TDA..
    [15:42:12]  [RadarAPI]: Status: Passed. Frame Periodicity sent to TDA
    [15:42:12]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:13]  Sending Capture Directory with name /mnt/ssd/adc_data2021032204 to TDA..
    [15:42:13]  [RadarAPI]: Status: Passed. Capture Directory sent to TDA
    [15:42:13]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:13]  Sending File Allocation of 0 files to TDA..
    [15:42:13]  [RadarAPI]: Status: Passed. File Allocation sent to TDA
    [15:42:13]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:13]  Sending Enable Data Packaging (0 - 16-bit; 1 - 12-bit) with value of 0 to TDA..
    [15:42:13]  [RadarAPI]: Status: Passed. Enable Data Packaging sent to TDA
    [15:42:13]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:13]  Sending Number of frames to capture with value of 0 to TDA..
    [15:42:13]  [RadarAPI]: Status: Passed. Number of frames to capture sent to TDA
    [15:42:13]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:13]  [RadarAPI]: Status: Passed for notifying TDA about Creating Application
    [15:42:13]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:13]  [RadarAPI]: ar1.StartFrame_mult(14)
    [15:42:13]  [RadarAPI]: Status: Passed for notifying TDA about Start Frame
    [15:42:13]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [15:42:13]  [RadarAPI]: Status: Passed
    [15:42:13]  [DeviceId-3] Frame start async event received!
    [15:42:13]  [DeviceId-2] Frame start async event received!
    [15:42:13]  [DeviceId-1] Frame start async event received!
    [15:42:22]  [RadarAPI]: ar1.StartFrame_mult(0)
    [15:42:22]  [RadarAPI]: Status: Passed
    [15:42:26]  [RadarAPI]: ar1.StartFrame_mult(1)
    [15:42:27]  [RadarAPI]: Status: Passed
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-0] Frame start async event received!
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:27]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:28]  [DeviceId-3] MSS ESM Fault error status Async event recieved(0x400000, 0x0)
    [15:42:28]  [RadarAPI]: Frame Ended
    [15:42:28]  [DeviceId-0] Frame End async event received!
    [15:43:56]  Downloading file /mnt/ssd/adc_data2021032204/master_0000_data.bin...
    [15:43:56]  Downloaded file /mnt/ssd/adc_data2021032204/master_0000_data.bin from SSD!
    [15:43:56]  Downloading file /mnt/ssd/adc_data2021032204/slave1_0000_data.bin...
    [15:43:56]  Downloaded file /mnt/ssd/adc_data2021032204/slave1_0000_data.bin from SSD!
    [15:43:56]  Downloading file /mnt/ssd/adc_data2021032204/slave2_0000_data.bin...
    [15:43:56]  Downloaded file /mnt/ssd/adc_data2021032204/slave2_0000_data.bin from SSD!
    [15:43:56]  Downloading file /mnt/ssd/adc_data2021032204/slave3_0000_data.bin...
    [15:43:56]  Downloaded file /mnt/ssd/adc_data2021032204/slave3_0000_data.bin from SSD!
    [15:43:57]  Export Operation was successful!
    [15:43:57]  [RadarAPI]: Transfer of the Captured files COMPLETE!
    
    --[[
    Sequence being followed
    
    A. CONFIGURATION
    1. Connecting to TDA
    1. Configuring Master from SOP till Channel Config
    2. Configuring Slave (i) sequentially from SOP till SPI Connect. i = 1, 2, 3
    3. Configuring Slaves together from F/W download till Channel Config
    4. Configuring all devices together from LDO Bypass till Frame Config
    
    NOTE:
    Update the following in the script accordingly before running
    1. metaImage F/W path on line 32
    2. TDA Host Board IP Address on line 39
    --]]
        
    ----------------------------------------User Constants--------------------------------------------
           
    dev_list          =    {1, 2, 4, 8}       -- Device map
    RadarDevice       =    {1, 1, 1, 1}       -- {dev1, dev2, dev3, dev4}, 1: Enable, 0: Disable
    cascade_mode_list =    {1, 2, 2, 2}       -- 0: Single chip, 1: Master, 2: Slave
    
    -- F/W Download Path
    
    -- Uncomment the next line if you wish to pop-up a dialog box to select the firmware image file
    -- Otherwise, hardcode the path to the firmware metaimage below
    -- By default, the firmware filename is: xwr22xx_metaImage.bin
    
    -- metaImagePath  =   RSTD.BrowseForFile(RSTD.GetSettingsPath(), "bin", "Browse to .bin file")
    -- For 2243 ES1.1 devices
    metaImagePath            =   "C:\\ti\\mmwave_dfp_02_02_02_01\\firmware\\xwr22xx_metaImage.bin"
    -- For 2243 ES1.0 devices
    -- metaImagePath            =   "C:\\ti\\mmwave_dfp_02_02_00_02\\firmware\\xwr22xx_metaImage.bin"
    
    -- IP Address for the TDA2 Host Board
    -- Change this accordingly for your setup
    
    TDA_IPAddress     =   "192.168.33.180"
    
    -- Device map of all the devices to be enabled by TDA
    -- 1 - master ; 2- slave1 ; 4 - slave2 ; 8 - slave3
    
    deviceMapOverall  =   RadarDevice[1] + (RadarDevice[2]*2) + (RadarDevice[3]*4) + (RadarDevice[4]*8)
    deviceMapSlaves   =   (RadarDevice[2]*2) + (RadarDevice[3]*4) + (RadarDevice[4]*8)
    
    -- Enable/Disable Test Source
    -- This is useful during bringup
    
    test_source_enable  =   0      -- 0: Disable, 1: Enable
        
    ------------------------------------------- Sensor Configuration ------------------------------------------------
    --[[
    The sensor configuration consists of 3 sections:
    1) Profile Configuration (common to all 4 AWR devices)
    2) Chirp Configuration (unique for each AWR device - mainly because TXs to use are 
                            different for each chirp)
    3) Frame Configuration (common to all 4 AWR devices, except for the trigger mode for the master)
    Change the values below as needed. --]]
    
    -- Profile configuration
    local profile_indx              =   0
    local start_freq                =   77     -- GHz
    local slope                     =   79     -- MHz/us
    local idle_time                 =   5      -- us
    local adc_start_time            =   6      -- us
    local adc_samples               =   256    -- Number of samples per chirp
    local sample_freq               =   8000   -- ksps
    local ramp_end_time             =   40     -- us
    local rx_gain                   =   30     -- dB
    local tx0OutPowerBackoffCode    =   0
    local tx1OutPowerBackoffCode    =   0
    local tx2OutPowerBackoffCode    =   0
    local tx0PhaseShifter           =   0
    local tx1PhaseShifter           =   0
    local tx2PhaseShifter           =   0
    local txStartTimeUSec           =   0
    local hpfCornerFreq1            =   0      -- 0: 175KHz, 1: 235KHz, 2: 350KHz, 3: 700KHz
    local hpfCornerFreq2            =   0      -- 0: 350KHz, 1: 700KHz, 2: 1.4MHz, 3: 2.8MHz
    
    -- Frame configuration    
    local start_chirp_tx            =   0
    local end_chirp_tx              =   9
    local nchirp_loops              =   64     -- Number of chirps per frame
    local nframes_master            =   10     -- Number of Frames for Master
    local nframes_slave             =   10     -- Number of Frames for Slaves
    local Inter_Frame_Interval      =   100    -- ms
    local trigger_delay             =   0      -- us
    local trig_list                 =   {1,2,2,2} -- 1: Software trigger, 2: Hardware trigger    
    
    --[[
    Function to configure the chirps specific to a device
    12 chirps are configured below, individually for each AWR device
    
    |-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|
    |       | Dev 1 | Dev 1 | Dev 1 | Dev 2 | Dev 2 | Dev 2 | Dev 3 | Dev 3 | Dev 3 | Dev 4 | Dev 4 | Dev 4 |
    | Chirp |  TX0  |  TX1  |  TX2  |  TX 0 |  TX1  |  TX2  |  TX0  |  TX1  |  TX2  |  TX0  |  TX1  |  TX2  |
    |-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|
    |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     1 |     0 |     1 |
    |     1 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     1 |     0 |
    |     2 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     1 |     0 |     0 |
    |     3 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     1 |     0 |     0 |     0 |     0 |
    |     4 |     0 |     0 |     0 |     1 |     0 |     1 |     0 |     0 |     0 |     0 |     0 |     0 |
    |     5 |     0 |     0 |     0 |     0 |     1 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |
    |     6 |     0 |     0 |     0 |     1 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |
    |     7 |     1 |     0 |     1 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |
    |     8 |     0 |     1 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |
    |     9 |     1 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |     0 |
    |-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|
    --]] 
    -- Note: The syntax for this API is:
    -- ar1.ChirpConfig_mult(RadarDeviceId, chirpStartIdx, chirpEndIdx, profileId, startFreqVar, 
    --                      freqSlopeVar, idleTimeVar, adcStartTimeVar, tx0Enable, tx1Enable, tx2Enable)
    
    function Configure_Chirps(i) 
        
        if (i == 1) then
                
                -- Chirp 0
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 0 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 0 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 1
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 1, 1, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 1 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 1 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 2
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 2, 2, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 2 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 2 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 3
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 3, 3, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 3 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 3 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 4
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 4, 4, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 4 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 4 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 5
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 5, 5, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 5 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 5 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 6
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 6, 6, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 6 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 6 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 7
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 7, 7, 0, 0, 0, 0, 0, 1, 0, 1)) then
                    WriteToLog("Device "..i.." : Chirp 7 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 7 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 8
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 8, 8, 0, 0, 0, 0, 0, 0, 1, 0)) then
                    WriteToLog("Device "..i.." : Chirp 8 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 8 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 9
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 9, 9, 0, 0, 0, 0, 0, 1, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 9 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 9 Configuration failed\n", "red")
                    return -4
                end
                
            
        elseif (i == 2) then
        
                -- Chirp 0
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 0 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 0 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 1
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 1, 1, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 1 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 1 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 2
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 2, 2, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 2 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 2 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 3
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 3, 3, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 3 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 3 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 4
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 4, 4, 0, 0, 0, 0, 0, 1, 0, 1)) then
                    WriteToLog("Device "..i.." : Chirp 4 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 4 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 5
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 5, 5, 0, 0, 0, 0, 0, 0, 1, 0)) then
                    WriteToLog("Device "..i.." : Chirp 5 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 5 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 6
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 6, 6, 0, 0, 0, 0, 0, 1, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 6 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 6 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 7
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 7, 7, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 7 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 7 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 8
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 8, 8, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 8 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 8 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 9
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 9, 9, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 9 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 9 Configuration failed\n", "red")
                    return -4
                end
                
                
        elseif (i == 3) then
        
                -- Chirp 0
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 0 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 0 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 1
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 1, 1, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 1 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 1 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 2
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 2, 2, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 2 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 2 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 3
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 3, 3, 0, 0, 0, 0, 0, 0, 1, 0)) then
                    WriteToLog("Device "..i.." : Chirp 3 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 3 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 4
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 4, 4, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 4 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 4 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 5
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 5, 5, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 5 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 5 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 6
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 6, 6, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 6 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 6 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 7
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 7, 7, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 7 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 7 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 8
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 8, 8, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 8 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 8 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 9
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 9, 9, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 9 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 9 Configuration failed\n", "red")
                    return -4
                end
                
                
        elseif (i == 4) then
        
                -- Chirp 0
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 0, 0, 0, 0, 0, 0, 0, 1, 0, 1)) then
                    WriteToLog("Device "..i.." : Chirp 0 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 0 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 1
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 1, 1, 0, 0, 0, 0, 0, 0, 1, 0)) then
                    WriteToLog("Device "..i.." : Chirp 1 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 1 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 2
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 2, 2, 0, 0, 0, 0, 0, 1, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 2 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 2 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 3
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 3, 3, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 3 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 3 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 4
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 4, 4, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 4 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 4 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 5
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 5, 5, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 5 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 5 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 6
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 6, 6, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 6 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 6 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 7
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 7, 7, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 7 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 7 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 8
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 8, 8, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 8 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 8 Configuration failed\n", "red")
                    return -4
                end
                
                -- Chirp 9
                if (0 == ar1.ChirpConfig_mult(dev_list[i], 9, 9, 0, 0, 0, 0, 0, 0, 0, 0)) then
                    WriteToLog("Device "..i.." : Chirp 9 Configuration successful\n", "green")
                else
                    WriteToLog("Device "..i.." : Chirp 9 Configuration failed\n", "red")
                    return -4
                end
                
            
        end
    
    end
     
    ------------------------------ API Configuration ------------------------------------------------
        
    -- 1. Connection to TDA. 2. Selecting Cascade/Single Chip.  3. Selecting 2-chip/4-chip
    
    WriteToLog("Setting up Studio for Cascade started..\n", "blue")
    
    if(0 == ar1.ConnectTDA(TDA_IPAddress, 5001, deviceMapOverall)) then
        WriteToLog("ConnectTDA Successful\n", "green")
    else
        WriteToLog("ConnectTDA Failed\n", "red")
        return -1
    end
    
    if(0 == ar1.selectCascadeMode(1)) then
        WriteToLog("selectCascadeMode Successful\n", "green")
    else
        WriteToLog("selectCascadeMode Failed\n", "red")
        return -1
    end
    
    WriteToLog("Setting up Studio for Cascade ended..\n", "blue")
             
    --Master Initialization
    
    -- SOP Mode Configuration
    if (0 == ar1.SOPControl_mult(1, 4)) then
        WriteToLog("Master : SOP Reset Successful\n", "green")
    else
        WriteToLog("Master : SOP Reset Failed\n", "red")
        return -1
    end
    
    -- SPI Connect
    if (0 == ar1.PowerOn_mult(1, 0, 1000, 0, 0)) then
        WriteToLog("Master : SPI Connection Successful\n", "green")
    else
        WriteToLog("Master : SPI Connection Failed\n", "red")
        return -1
    end
    
    -- Firmware Download. (SOP 4 - MetaImage)
    if (0 == ar1.DownloadBssFwOvSPI_mult(1, metaImagePath)) then
        WriteToLog("Master : FW Download Successful\n", "green")
    else
        WriteToLog("Master : FW Download Failed\n", "red")
        return -1
    end
    
    -- RF Power Up
    if (0 == ar1.RfEnable_mult(1)) then
        WriteToLog("Master : RF Power Up Successful\n", "green")
    else
        WriteToLog("Master : RF Power Up Failed\n", "red")
        return -1
    end            
             
    -- Channel & ADC Configuration
    if (0 == ar1.ChanNAdcConfig_mult(1,1,1,1,1,1,1,1,2,1,0,1)) then
        WriteToLog("Master : Channel & ADC Configuration Successful\n", "green")
    else
        WriteToLog("Master : Channel & ADC Configuration Failed\n", "red")
        return -2
    end
        
    -- Slaves Initialization
       
    for i=2,table.getn(RadarDevice) do 
        local status    =    0                
        if ((RadarDevice[1]==1) and (RadarDevice[i]==1)) then
          
            -- SOP Mode Configuration
            if (0 == ar1.SOPControl_mult(dev_list[i], 4)) then
                WriteToLog("Device "..i.." : SOP Reset Successful\n", "green")
            else
                WriteToLog("Device "..i.." : SOP Reset Failed\n", "red")
                return -1
            end
                    
            -- SPI Connect    
            if (0 == ar1.AddDevice(dev_list[i])) then
                WriteToLog("Device "..i.." : SPI Connection Successful\n", "green")
            else
                WriteToLog("Device "..i.." : SPI Connection Failed\n", "red")
                return -1
            end
               
        end
    end  
        
    -- Firmware Download. (SOP 4 - MetaImage)
    if (0 == ar1.DownloadBssFwOvSPI_mult(deviceMapSlaves, metaImagePath)) then
        WriteToLog("Slaves : FW Download Successful\n", "green")
    else
        WriteToLog("Slaves : FW Download Failed\n", "red")
        return -1
    end
             
    -- RF Power Up
    if (0 == ar1.RfEnable_mult(deviceMapSlaves)) then
        WriteToLog("Slaves : RF Power Up Successful\n", "green")
    else
        WriteToLog("Slaves : RF Power Up Failed\n", "red")
        return -1
    end    
    
    -- Channel & ADC Configuration
    if (0 == ar1.ChanNAdcConfig_mult(deviceMapSlaves,1,1,1,1,1,1,1,2,1,0,2)) then
        WriteToLog("Slaves : Channel & ADC Configuration Successful\n", "green")
    else
        WriteToLog("Slaves : Channel & ADC Configuration Failed\n", "red")
        return -2
    end
                
    -- All devices together        
              
    -- Including this depends on the type of board being used.
    -- LDO configuration
    if (0 == ar1.RfLdoBypassConfig_mult(deviceMapOverall, 3)) then
        WriteToLog("LDO Bypass Successful\n", "green")
    else
        WriteToLog("LDO Bypass failed\n", "red")
        return -2
    end
    
    -- Low Power Mode Configuration
    if (0 == ar1.LPModConfig_mult(deviceMapOverall,0, 0)) then
        WriteToLog("Low Power Mode Configuration Successful\n", "green")
    else
        WriteToLog("Low Power Mode Configuration failed\n", "red")
        return -2
    end
    
    -- Miscellaneous Control Configuration
    if (0 == ar1.SetMiscConfig_mult(deviceMapOverall, 1, 0, 0, 0)) then
        WriteToLog("Misc Control Configuration Successful\n", "green")
    else
        WriteToLog("Misc Control Configuration failed\n", "red")
        return -2
    end
    
    -- Edit this API to enable/disable the boot time calibration. Enabled by default.
    -- RF Init Calibration Configuration
    if (0 == ar1.RfInitCalibConfig_mult(deviceMapOverall, 1, 1, 1, 1, 1, 1, 1, 65537)) then
        WriteToLog("RF Init Calibration Successful\n", "green")
    else
        WriteToLog("RF Init Calibration failed\n", "red")
        return -2
    end
             
    -- RF Init
    if (0 == ar1.RfInit_mult(deviceMapOverall)) then
        WriteToLog("RF Init Successful\n", "green")
    else
        WriteToLog("RF Init failed\n", "red")
        return -2
    end
    
    ---------------------------Data Configuration----------------------------------
            
    -- Data path Configuration
    if (0 == ar1.DataPathConfig_mult(deviceMapOverall, 0, 1, 0)) then
        WriteToLog("Data Path Configuration Successful\n", "green")
    else
        WriteToLog("Data Path Configuration failed\n", "red")
        return -3
    end
    
    -- Clock Configuration
    if (0 == ar1.LvdsClkConfig_mult(deviceMapOverall, 1, 1)) then
        WriteToLog("Clock Configuration Successful\n", "green")
    else
        WriteToLog("Clock Configuration failed\n", "red")
        return -3
    end
    
    -- CSI2 Configuration
    if (0 == ar1.CSI2LaneConfig_mult(deviceMapOverall, 1, 0, 2, 0, 4, 0, 5, 0, 3, 0, 0)) then
        WriteToLog("CSI2 Configuration Successful\n", "green")
    else
        WriteToLog("CSI2 Configuration failed\n", "red")
        return -3
    end
    
    ----------------------------Test Source Configuration------------------------------
    -- This is useful for initial bringup.
    -- Each device is configured with a test object at a different location.
        
    if(test_source_enable == 1) then
        
        if(RadarDevice[1] == 1) then
            -- Object at 5 m with x = 4m and y = 3m
            if (0 == ar1.SetTestSource_mult(1, 4, 3, 0, 0, 0, 0, -327, 0, -327, 327, 327, 327, -2.5, 327, 327, 0, 
                     0, 0, 0, -327, 0, -327, 327, 327, 327, -95, 0, 0, 0.5, 0, 1, 0, 1.5, 0, 0, 0, 0, 0, 0, 0, 0)) then
                WriteToLog("Device 1 : Test Source Configuration Successful\n", "green")
            else
                WriteToLog("Device 1 : Test Source Configuration failed\n", "red")
                return -3
            end
        end
        
        if(RadarDevice[2] == 1) then        
            -- Object at 5 m with x = 3m and y = 4m
            if (0 == ar1.SetTestSource_mult(2, 3, 4, 0, 0, 0, 0, -327, 0, -327, 327, 327, 327, -2.5, 327, 327, 0, 
                     0, 0, 0, -327, 0, -327, 327, 327, 327, -95, 0, 0, 0.5, 0, 1, 0, 1.5, 0, 0, 0, 0, 0, 0, 0, 0)) then
                WriteToLog("Device 2 : Test Source Configuration Successful\n", "green")
            else
                WriteToLog("Device 2 : Test Source Configuration failed\n", "red")
                return -3
            end
        end
        
        if(RadarDevice[3] == 1) then         
            -- Object at 13 m with x = 12m and y = 5m
            if (0 == ar1.SetTestSource_mult(4, 12, 5, 0, 0, 0, 0, -327, 0, -327, 327, 327, 327, -2.5, 327, 327, 0, 
                     0, 0, 0, -327, 0, -327, 327, 327, 327, -95, 0, 0, 0.5, 0, 1, 0, 1.5, 0, 0, 0, 0, 0, 0, 0, 0)) then
                WriteToLog("Device 3 : Test Source Configuration Successful\n", "green")
            else
                WriteToLog("Device 3 : Test Source Configuration failed\n", "red")
                return -3
            end
        end
        
        if(RadarDevice[4] == 1) then        
            -- Object at 13 m with x = 5m and y = 12m
            if (0 == ar1.SetTestSource_mult(8, 5, 12, 0, 0, 0, 0, -327, 0, -327, 327, 327, 327, -2.5, 327, 327, 0, 
                     0, 0, 0, -327, 0, -327, 327, 327, 327, -95, 0, 0, 0.5, 0, 1, 0, 1.5, 0, 0, 0, 0, 0, 0, 0, 0)) then
                WriteToLog("Device 4 : Test Source Configuration Successful\n", "green")
            else
                WriteToLog("Device 4 : Test Source Configuration failed\n", "red")
                return -3
            end
        end
           
    end           
    
    ---------------------------Sensor Configuration-------------------------
    
    -- Profile Configuration
    if (0 == ar1.ProfileConfig_mult(deviceMapOverall, 0, start_freq, idle_time, adc_start_time, ramp_end_time, 
                                    0, 0, 0, 0, 0, 0, slope, 0, adc_samples, sample_freq, 0, 0, rx_gain)) then
        WriteToLog("Profile Configuration successful\n", "green")
    else
        WriteToLog("Profile Configuration failed\n", "red")
        return -4
    end
    
    -- Chirp Configuration 
    for i=1,table.getn(RadarDevice) do    
        if ((RadarDevice[1]==1) and (RadarDevice[i]==1)) then
            Configure_Chirps(i)                
        end
    end
    
    -- Enabling/ Disabling Test Source
    if(test_source_enable == 1) then
        ar1.EnableTestSource_mult(deviceMapOverall, 1)
        WriteToLog("Enabling Test Source Configuration successful\n", "green")
    end
    
    -- Frame Configuration
    -- Master
    if (0 == ar1.FrameConfig_mult(1,start_chirp_tx,end_chirp_tx,nframes_master, nchirp_loops, 
                                  Inter_Frame_Interval, 0, 1)) then
        WriteToLog("Master : Frame Configuration successful\n", "green")
    else
        WriteToLog("Master : Frame Configuration failed\n", "red")
    end
    -- Slaves 
    if (0 == ar1.FrameConfig_mult(deviceMapSlaves,start_chirp_tx,end_chirp_tx,nframes_slave, nchirp_loops, 
                                  Inter_Frame_Interval, 0, 2)) then
        WriteToLog("Slaves : Frame Configuration successful\n", "green")
    else
        WriteToLog("Slaves : Frame Configuration failed\n", "red")
    end

  • Hello User,

    Thanks for the inputs. I can see you're getting the MSS ESM fault error async events after triggering the frames as well. I would need some time to discuss this with the team internally. 

    Meanwhile, as you said this is your custom RF-board which is "almost" similar to MMWCAS-RF-EVM, would it be possible for you to highlight the differences in your custom RF-board for us to understand/debug this issue better?

    Regards,

    Ishita

  • The circuit pattern of my custom RF board is the same as of MMWCAS-RF-EVM except 4 things.

    1. The number of used tx antenna.
    The number of used tx antenna of one AWR chip is only 1.
    Total number of tx antennas on my RF board is 4.
    The noused tx antennas are open.
    2. The antenna pattern is changed.
    3. The paths between AWR chips and antennas ARE NOT isometric wiring.
    (More detail:
    The paths between AWR chips and Tx antennas ARE NOT isometric wiring.
    The paths between AWR chips and Rx antennas ARE NOT isometric wiring.)

    4. The length of digital frame timing sync is not the same as of MMWCAS-RF-EVM
    But the paths of digital frame timing sync are isometric wiring like MMWCAS-RF-EVM.
    The paths of 20 GHz (FMCW) RF LO sync are isometric wiring.

    Additional information.
    I executed lua monitoring script. I posted it.
    e2e.ti.com/.../tidep-01012-confirm-the-result-of-pllcontrolvoltagesignalmonitoring
    After this, I checked two bellow signals with a oscilloscope.
    DIG_SYNCOUT from master AWR.
    DIG_SYNCIN to slave 3 AWR
    These shapes are similar to the result of MMWCAS-RF-EVM which uses the same ES version.

  • More information
    I get radar ADC data with only the master AWR chip in mmwave studio without failure.
    Only the master AWR chip means that 1 Tx antenna of matster AWR emits radio and 4 Rx antennas of the mater AWR can receive ADC data.
    The last input of ar1.ChanNAdcConfig_mult is MultiChip Master:0x0001.
    The slave AWR chips are power off.
    Plus I can check the emitted FMCW signal from my custom RF board with spectrum analyzer when I execute only the master AWR chip in mmwave studio.

    On the other hand, there are success and failure case when I execute two kinds of MIMO lua script.
    The first script is as bellow.
    C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Cascade\Cascade_Configuration_MIMO.lua
    The second script is attached above the post.
    It is the same as the MIMO cascade use case of the PROCESSOR_SDK_RADAR_03_08_00_00.
    Anyway it is unclear what caused this difference between success and failure.

  • Hello User,

    Thank You for all the information. This is definitely helpful to us. 

    Could you also share the exact connections for the digital SYNC signals (output and inputs)?

    Regards,

    Ishita

  • There's an around 50% chance that I can get ADC data of master and slave1/2/3 AWR in mmwave stuido when I execute MIMO cascade lua script as bellow in mmwave studio.
    C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Cascade\Cascade_Configuration_MIMO.lua
    I guess it means Master AWR connects slave 1/2/3 AWR without quality.


    BTW please don't forget to tell me requirement of jitter as below thread.
    e2e.ti.com/.../3649774

  • Hello User,

    By 50% chance you mean you're also able to capture data successfully sometimes? So you do not get this MSS ESM fault error every time? 

    And you're able to get frame end async events out of slave devices also that time, is that true?

    Regards,

    Ishita

  • >By 50% chance you mean you're also able to capture data successfully sometimes?
    Yes.

    >So you do not get this MSS ESM fault error every time?
    Yes.

    >And you're able to get frame end async events out of slave devices also that time, is that true?

    Sorry. That time means ambiguous. I clarify a condition and try to answer your question.

    I'm able to get frame end async events from mater and slave1/2/3 AWR when I'm also able to capture data successfully.
    A master AWR gets "Frame End async event received!" every time (which includes failure cases “no captured data”).

    By maybe 30% chance I get a message "MSS ESM (0x400000, 0x0)" from slave1/2/3 AWR when I'm also able to capture data successfully.

    Plus, about a one error case (attached log in this post).
    (This error means I can’t capture data. The size of all ADC data in this case is zero.)
    Slave 1 can’t receive “Frame End async event”.
    (Mater and slave2/3 receive “Frame End async event”.)
    But I don’t get any "MSS ESM (0x400000, 0x0)" from master and slave1/2/3 AWR.
    Have you hit on any possible causes of situation “AWR device can’t” receive “Frame End async event” without "MSS ESM (0x400000, 0x0)"?
    I understand the situation under "MSS ESM (0x400000, 0x0)" causes no “Frame End async event”.

    GM: Constructor
    GM: Wed Mar 24 12:19:08 2021
    RSTD.Transmit("/Settings")
    [12:19:10]  
    [12:19:10]  ### Running Startup script: "C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Startup.lua" ###
    [12:19:10]  RSTD.SetAndTransmit ("/Settings/Scripter/Display DateTime" , "1")
    [12:19:10]  RSTD.SetAndTransmit ("/Settings/Scripter/DateTime Format" , "HH:mm:ss")
    [12:19:10]  Scripter ignored: Attempt to UnBuild() again or before Build.
    [12:19:10]  RSTD.SetVar ("/Settings/Clients/Client 0/Dll" , "C:\\ti\\mmwave_studio_03_00_00_14\\mmWaveStudio\\Clients\\\\LabClient.dll")
    [12:19:10]  RSTD.SetVar ("/Settings/Clients/Client 0/Use" , "TRUE")
    [12:19:10]  RSTD.SetVar ("/Settings/Clients/Client 1/Use" , "FALSE")
    [12:19:10]  RSTD.SetVar ("/Settings/Clients/Client 2/Use" , "FALSE")
    [12:19:10]  RSTD.SetVar ("/Settings/Clients/Client 3/Use" , "FALSE")
    [12:19:10]  RSTD.SetVar ("/Settings/Clients/Client 4/Use" , "FALSE")
    [12:19:10]  RSTD.SetVar ("/Settings/AL Client/AL Dll" , "C:\\ti\\mmwave_studio_03_00_00_14\\mmWaveStudio\\RunTime\\SAL.dll")
    [12:19:10]  RSTD.SetVar ("/Settings/Clients/Client 0/GuiDll" , "")
    [12:19:10]  RSTD.SetVar ("/Settings/AutoUpdate/Enabled" , "TRUE")
    [12:19:10]  RSTD.SetVar ("/Settings/AutoUpdate/Interval" , "1")
    [12:19:10]  RSTD.SetVar ("/Settings/Monitors/UpdateDisplay" , "TRUE")
    [12:19:10]  RSTD.SetVar ("/Settings/Monitors/OneClickStart" , "TRUE")
    [12:19:10]  RSTD.SetVar ("/Settings/Automation/Automation Mode" , "false")
    [12:19:10]  RSTD.Transmit("/")
    [12:19:10]  RSTD.SaveSettings(): Settings saved to "C:\Users\a144007\AppData\Roaming\RSTD\config.xml"
    [12:19:10]  RSTD.Build()
    [12:19:10]  RSTD.SaveSettings(): Settings saved to "C:\Users\a144007\AppData\Roaming\RSTD\config.xml"
    [12:19:10]  RSTD.Transmit("/")
    [12:19:10]  RSTD.AL_Build()
    [12:19:10]  RSTD.AL_LoadXml()
    [12:19:10]  RSTD.Transmit("/")
    [12:19:10]  RSTD.AL_Init()
    [12:19:10]  RSTD.Clients_Build()
    [12:19:10]  GM: Init
    [12:19:10]  GM: Loaded 'C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\Clients\\LabClient.dll'
    [12:19:10]  GM: 1 Guest (s) init
    [12:19:10]  GM: 1 Module(s) init
    [12:19:10]  GM: 2 Tab   (s) init
    [12:19:10]  RSTD.Client_LoadXml()
    [12:19:11]  [RadarAPI]: ar1.selectRadarMode(0)
    [12:19:11]  [RadarAPI]: Status: Passed
    [12:19:11]  Matlab Runtime Engine is installed
    [12:19:11]  [RadarAPI]: Starting Matlab Engine..
    [12:19:26]  [RadarAPI]: Matlab Engine Started!
    [12:19:32]  [RadarAPI]: ar1.selectCascadeMode(0)
    [12:19:32]  [RadarAPI]: Status: Passed
    [12:19:32]  [RadarAPI]: ar1.LoadSettings('C:\Users\a144007\AppData\Roaming\RSTD\ar1gui.ini')
    [12:19:34]  TESTING = false
    [12:19:34]  RstdNet: Port 2777: Listening..
    [12:19:34]  
    [12:19:34]  ***Script completed successfully.***
    [12:20:04]  Setting up Studio for Cascade started..
    [12:20:04]  [RadarAPI]: ar1.SelectCaptureDevice("TDA2XX")
    [12:20:04]  [RadarAPI]: Status: Passed
    [12:20:04]  [RadarAPI]: TDAStatusCallback Event Registered
    [12:20:04]  [RadarAPI]: registerTDAStatusCallback Status: Passed
    [12:20:04]  [RadarAPI]: ar1.ConnectTDA("192.168.33.180", 5001, 15)
    [12:20:04]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:20:04]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:20:04]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_VERSION_INFO Async event recieved() with status 0. TDA Version : REL_VISION_SDK_03_07_01_00 Aug  5 2019 15:04:45[12:20:04]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:20:06]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:20:06]  [RadarAPI]: ConnectTDACaptureCard Status: Passed
    [12:20:06]  TDA Capture Card Status : CONNECTED!
    [12:20:06]  ConnectTDA Successful
    [12:20:06]  [RadarAPI]: ar1.selectCascadeMode(1)
    [12:20:06]  [RadarAPI]: Status: Passed
    [12:20:06]  selectCascadeMode Successful
    [12:20:06]  Setting up Studio for Cascade ended..
    [12:20:06]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:20:07]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:20:07]  [RadarAPI]: ar1.FullReset(1)
    [12:20:07]  [RadarAPI]: Status: Passed
    [12:20:07]  [RadarAPI]: ar1.SOPControl_mult(1,4)
    [12:20:07]  [RadarAPI]: Status: Passed
    [12:20:07]  Master : SOP Reset Successful
    [12:20:08]  [DeviceId-0] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [12:20:08]  [RadarAPI]: ar1.PowerOn_mult(1, 0, 1000, 0,0)
    [12:20:08]  [DeviceId-0] MSS power up done async event received!
    [12:20:08]  [RadarAPI]: Status: Passed
    [12:20:08]  Master : SPI Connection Successful
    [12:20:08]  [RadarAPI]: ar1.DownloadBssFwOvSPI_mult(1, C:\\ti\\mmwave_dfp_02_02_00_03\\firmware\\xwr22xx_metaImage.bin)
    [12:22:16]  Master : FW Download Successful
    [12:22:17]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [12:22:17]  [RadarAPI]: Status: Passed
    [12:22:17]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [12:22:17]  [RadarAPI]: Status: Passed
    [12:22:17]  [RadarAPI]: ar1.deviceVariantSelection("XWR2243")
    [12:22:17]  [RadarAPI]: Status: Passed
    [12:22:17]  [RadarAPI]: ar1.frequencyBandSelection("77G")
    [12:22:17]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [12:22:17]  [RadarAPI]: Status: Passed
    [12:22:17]  Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [12:22:18]  [RadarAPI]: Device Restarted, Power On Async Event received
    [12:22:18]  [RadarAPI]: ar1.RfEnable_mult(1)
    [12:22:18]  [DeviceId-0] MSS power up done async event received!
    [12:22:18]  [RadarAPI]: Status: Passed
    [12:22:18]  [DeviceId-0] BSS power up done async event received!
    [12:22:20]  Master : RF Power Up Successful
    [12:22:20]  [RadarAPI]: ar1.ChanNAdcConfig_mult(1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 0, 1)
    [12:22:20]  [RadarAPI]: Status: Passed
    [12:22:20]  Master : Channel & ADC Configuration Successful
    [12:22:20]  [RadarAPI]: Device 2 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:22:20]  [RadarAPI]: Device 2 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:22:21]  [RadarAPI]: ar1.FullReset(2)
    [12:22:21]  [RadarAPI]: Status: Passed
    [12:22:21]  [RadarAPI]: ar1.SOPControl_mult(2,4)
    [12:22:21]  [RadarAPI]: Status: Passed
    [12:22:21]  Device 2 : SOP Reset Successful
    [12:22:21]  [DeviceId-1] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [12:22:21]  [DeviceId-1] MSS power up done async event received!
    [12:22:21]  [RadarAPI]: ar1.AddDevice(2)
    [12:22:21]  [RadarAPI]: Status: Passed
    [12:22:21]  Device 2 : SPI Connection Successful
    [12:22:21]  [RadarAPI]: Device 4 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:22:22]  [RadarAPI]: Device 4 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:22:22]  [RadarAPI]: ar1.FullReset(4)
    [12:22:22]  [RadarAPI]: Status: Passed
    [12:22:22]  [RadarAPI]: ar1.SOPControl_mult(4,4)
    [12:22:22]  [RadarAPI]: Status: Passed
    [12:22:22]  Device 3 : SOP Reset Successful
    [12:22:22]  [DeviceId-2] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [12:22:22]  [RadarAPI]: ar1.AddDevice(4)
    [12:22:22]  [RadarAPI]: Status: Passed
    [12:22:23]  [DeviceId-2] MSS power up done async event received!
    [12:22:23]  Device 3 : SPI Connection Successful
    [12:22:23]  [RadarAPI]: Device 8 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:22:23]  [RadarAPI]: Device 8 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:22:23]  [RadarAPI]: ar1.FullReset(8)
    [12:22:23]  [RadarAPI]: Status: Passed
    [12:22:23]  [RadarAPI]: ar1.SOPControl_mult(8,4)
    [12:22:23]  [RadarAPI]: Status: Passed
    [12:22:23]  Device 4 : SOP Reset Successful
    [12:22:24]  [DeviceId-3] MSS CPU Fault error status Async event recieved(0x3, 0x0,0xFFFFE580, 0x0,0x0, 0x0,0x0, 0xFFFF,0xFF, 0xFF,0xFF, 0xFF)
    [12:22:24]  [DeviceId-3] MSS power up done async event received!
    [12:22:24]  [RadarAPI]: ar1.AddDevice(8)
    [12:22:24]  [RadarAPI]: Status: Passed
    [12:22:24]  Device 4 : SPI Connection Successful
    [12:22:24]  [RadarAPI]: ar1.DownloadBssFwOvSPI_mult(14, C:\\ti\\mmwave_dfp_02_02_00_03\\firmware\\xwr22xx_metaImage.bin)
    [12:24:41]  Slaves : FW Download Successful
    [12:24:42]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [12:24:42]  [RadarAPI]: Status: Passed
    [12:24:42]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [12:24:42]  [RadarAPI]: Status: Passed
    [12:24:42]  Slave1 Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [12:24:43]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [12:24:43]  [RadarAPI]: Status: Passed
    [12:24:43]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [12:24:43]  [RadarAPI]: Status: Passed
    [12:24:44]  Slave2 Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [12:24:44]  [RadarAPI]: ar1.SelectChipVersion("AR1243")
    [12:24:44]  [RadarAPI]: Status: Passed
    [12:24:44]  [RadarAPI]: ar1.SelectChipVersion("XWR2243")
    [12:24:45]  [RadarAPI]: Status: Passed
    [12:24:45]  Slave3 Device Status : XWR2243/ASIL-B/SOP:4/ES:1.0
    [12:24:45]  [DeviceId-1] MSS power up done async event received!
    [12:24:45]  [RadarAPI]: Device Restarted, Power On Async Event received
    [12:24:45]  [DeviceId-2] MSS power up done async event received!
    [12:24:45]  [RadarAPI]: ar1.RfEnable_mult(14)
    [12:24:45]  [DeviceId-3] MSS power up done async event received!
    [12:24:46]  [RadarAPI]: Status: Passed
    [12:24:46]  [DeviceId-2] BSS power up done async event received!
    [12:24:46]  [DeviceId-1] BSS power up done async event received!
    [12:24:46]  [DeviceId-3] BSS power up done async event received!
    [12:24:50]  Slaves : RF Power Up Successful
    [12:24:51]  [RadarAPI]: ar1.ChanNAdcConfig_mult(14, 1, 1, 1, 1, 1, 1, 1, 2, 1, 0, 2)
    [12:24:51]  [RadarAPI]: Status: Passed
    [12:24:51]  Slaves : Channel & ADC Configuration Successful
    [12:24:51]  [RadarAPI]: ar1.RfLdoBypassConfig_mult(15, 0xF)
    [12:24:51]  [RadarAPI]: Status: Passed
    [12:24:51]  LDO Bypass Successful
    [12:24:51]  [RadarAPI]: ar1.LPModConfig_mult(15, 0,0)
    [12:24:51]  [RadarAPI]: Status: Passed
    [12:24:51]  Low Power Mode Configuration Successful
    [12:24:51]  [RadarAPI]: ar1.SetMiscConfig_mult(15, 1, 0, 0, 0)
    [12:24:51]  [RadarAPI]: Status: Passed
    [12:24:51]  Misc Control Configuration Successful
    [12:24:51]  [RadarAPI]: ar1.RfInitCalibConfig_mult(15, 1, 1, 1, 1, 1, 1, 1, 65537)
    [12:24:52]  [RadarAPI]: Status: Passed
    [12:24:52]  RF Init Calibration Successful
    [12:24:52]  [RadarAPI]: ar1.RfInit_mult(15)
    [12:24:52]  [DeviceId-1] RF Init async event received!
    [12:24:52]  [DeviceId-0] RF Init async event received!
    [12:24:52]  [DeviceId-3] RF Init async event received!
    [12:24:52]  [DeviceId-2] RF Init async event received!
    [12:24:52]  [RadarAPI]: Time stamp, Temperture: 6241,36; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [12:24:52]  [RadarAPI]: Time stamp, Temperture: 154003,35; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [12:24:52]  [RadarAPI]: Time stamp, Temperture: 6234,33; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [12:24:52]  [RadarAPI]: Time stamp, Temperture: 6221,34; APLL Status, Update: 1, 0; SynthVCO1 Status, Update: 1, 1; SynthVCO2 Status, Update: 1, 1; LODist Status, Update: 1, 1; RxADCDC Status, Update: 1, 1; HPFcutoff Status, Update: 1, 1; LPFcutoff Status, Update: 1, 1; PeakDetector Status, Update: 1, 1; TxPower Status, Update: 1, 1; RxGain Status, Update: 1, 1; TxPhase Status, Update: 1, 1; RxIQMM Status, Update: 1, 1; 
    [12:24:52]  [RadarAPI]: Status: Passed
    [12:24:52]  RF Init Successful
    [12:24:52]  [RadarAPI]: ar1.DataPathConfig_mult(15, 0, 1, 0)
    [12:24:52]  [RadarAPI]: Status: Passed
    [12:24:52]  Data Path Configuration Successful
    [12:24:52]  [RadarAPI]: ar1.LvdsClkConfig_mult(15, 1,1)
    [12:24:53]  [RadarAPI]: Status: Passed
    [12:24:53]  Clock Configuration Successful
    [12:24:53]  [RadarAPI]: ar1.CSI2LaneConfig_mult(15, 1, 0, 2, 0, 4, 0, 5,0,3,0, 0)
    [12:24:53]  [RadarAPI]: Status: Passed
    [12:24:53]  CSI2 Configuration Successful
    [12:24:53]  [RadarAPI]: ar1.ProfileConfig_mult(15, 0, 77, 5, 6, 40, 0, 0, 0, 0, 0, 0, 78.986, 0, 256, 8000, 0, 0, 30)
    [12:24:53]  [RadarAPI]: Status: Passed
    [12:24:53]  Profile Configuration successful
    [12:24:53]  [RadarAPI]: ar1.ChirpConfig_mult(1, 0, 0, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:53]  [RadarAPI]: Status: Passed
    [12:24:53]  Device 1 : Chirp 0 Configuration successful
    [12:24:53]  [RadarAPI]: ar1.ChirpConfig_mult(1, 1, 1, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:53]  [RadarAPI]: Status: Passed
    [12:24:54]  Device 1 : Chirp 1 Configuration successful
    [12:24:54]  [RadarAPI]: ar1.ChirpConfig_mult(1, 2, 2, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:54]  [RadarAPI]: Status: Passed
    [12:24:54]  Device 1 : Chirp 2 Configuration successful
    [12:24:54]  [RadarAPI]: ar1.ChirpConfig_mult(1, 3, 3, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:54]  [RadarAPI]: Status: Passed
    [12:24:54]  Device 1 : Chirp 3 Configuration successful
    [12:24:54]  [RadarAPI]: ar1.ChirpConfig_mult(1, 4, 4, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:54]  [RadarAPI]: Status: Passed
    [12:24:54]  Device 1 : Chirp 4 Configuration successful
    [12:24:54]  [RadarAPI]: ar1.ChirpConfig_mult(1, 5, 5, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:54]  [RadarAPI]: Status: Passed
    [12:24:54]  Device 1 : Chirp 5 Configuration successful
    [12:24:54]  [RadarAPI]: ar1.ChirpConfig_mult(1, 6, 6, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:54]  [RadarAPI]: Status: Passed
    [12:24:54]  Device 1 : Chirp 6 Configuration successful
    [12:24:55]  [RadarAPI]: ar1.ChirpConfig_mult(1, 7, 7, 0, 0, 0, 0, 0, 1, 0,1)
    [12:24:55]  [RadarAPI]: Status: Passed
    [12:24:55]  Device 1 : Chirp 7 Configuration successful
    [12:24:55]  [RadarAPI]: ar1.ChirpConfig_mult(1, 8, 8, 0, 0, 0, 0, 0, 0, 1,0)
    [12:24:55]  [RadarAPI]: Status: Passed
    [12:24:55]  Device 1 : Chirp 8 Configuration successful
    [12:24:55]  [RadarAPI]: ar1.ChirpConfig_mult(1, 9, 9, 0, 0, 0, 0, 0, 1, 0,0)
    [12:24:55]  [RadarAPI]: Status: Passed
    [12:24:55]  Device 1 : Chirp 9 Configuration successful
    [12:24:55]  [RadarAPI]: ar1.ChirpConfig_mult(2, 0, 0, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:55]  [RadarAPI]: Status: Passed
    [12:24:55]  Device 2 : Chirp 0 Configuration successful
    [12:24:55]  [RadarAPI]: ar1.ChirpConfig_mult(2, 1, 1, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:55]  [RadarAPI]: Status: Passed
    [12:24:55]  Device 2 : Chirp 1 Configuration successful
    [12:24:55]  [RadarAPI]: ar1.ChirpConfig_mult(2, 2, 2, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:56]  [RadarAPI]: Status: Passed
    [12:24:56]  Device 2 : Chirp 2 Configuration successful
    [12:24:56]  [RadarAPI]: ar1.ChirpConfig_mult(2, 3, 3, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:56]  [RadarAPI]: Status: Passed
    [12:24:56]  Device 2 : Chirp 3 Configuration successful
    [12:24:56]  [RadarAPI]: ar1.ChirpConfig_mult(2, 4, 4, 0, 0, 0, 0, 0, 1, 0,1)
    [12:24:56]  [RadarAPI]: Status: Passed
    [12:24:56]  Device 2 : Chirp 4 Configuration successful
    [12:24:56]  [RadarAPI]: ar1.ChirpConfig_mult(2, 5, 5, 0, 0, 0, 0, 0, 0, 1,0)
    [12:24:56]  [RadarAPI]: Status: Passed
    [12:24:56]  Device 2 : Chirp 5 Configuration successful
    [12:24:56]  [RadarAPI]: ar1.ChirpConfig_mult(2, 6, 6, 0, 0, 0, 0, 0, 1, 0,0)
    [12:24:56]  [RadarAPI]: Status: Passed
    [12:24:56]  Device 2 : Chirp 6 Configuration successful
    [12:24:56]  [RadarAPI]: ar1.ChirpConfig_mult(2, 7, 7, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:57]  [RadarAPI]: Status: Passed
    [12:24:57]  Device 2 : Chirp 7 Configuration successful
    [12:24:57]  [RadarAPI]: ar1.ChirpConfig_mult(2, 8, 8, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:57]  [RadarAPI]: Status: Passed
    [12:24:57]  Device 2 : Chirp 8 Configuration successful
    [12:24:57]  [RadarAPI]: ar1.ChirpConfig_mult(2, 9, 9, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:57]  [RadarAPI]: Status: Passed
    [12:24:57]  Device 2 : Chirp 9 Configuration successful
    [12:24:57]  [RadarAPI]: ar1.ChirpConfig_mult(4, 0, 0, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:57]  [RadarAPI]: Status: Passed
    [12:24:57]  Device 3 : Chirp 0 Configuration successful
    [12:24:57]  [RadarAPI]: ar1.ChirpConfig_mult(4, 1, 1, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:57]  [RadarAPI]: Status: Passed
    [12:24:57]  Device 3 : Chirp 1 Configuration successful
    [12:24:57]  [RadarAPI]: ar1.ChirpConfig_mult(4, 2, 2, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:57]  [RadarAPI]: Status: Passed
    [12:24:58]  Device 3 : Chirp 2 Configuration successful
    [12:24:58]  [RadarAPI]: ar1.ChirpConfig_mult(4, 3, 3, 0, 0, 0, 0, 0, 0, 1,0)
    [12:24:58]  [RadarAPI]: Status: Passed
    [12:24:58]  Device 3 : Chirp 3 Configuration successful
    [12:24:58]  [RadarAPI]: ar1.ChirpConfig_mult(4, 4, 4, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:58]  [RadarAPI]: Status: Passed
    [12:24:58]  Device 3 : Chirp 4 Configuration successful
    [12:24:58]  [RadarAPI]: ar1.ChirpConfig_mult(4, 5, 5, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:58]  [RadarAPI]: Status: Passed
    [12:24:58]  Device 3 : Chirp 5 Configuration successful
    [12:24:58]  [RadarAPI]: ar1.ChirpConfig_mult(4, 6, 6, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:58]  [RadarAPI]: Status: Passed
    [12:24:58]  Device 3 : Chirp 6 Configuration successful
    [12:24:58]  [RadarAPI]: ar1.ChirpConfig_mult(4, 7, 7, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:58]  [RadarAPI]: Status: Passed
    [12:24:59]  Device 3 : Chirp 7 Configuration successful
    [12:24:59]  [RadarAPI]: ar1.ChirpConfig_mult(4, 8, 8, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:59]  [RadarAPI]: Status: Passed
    [12:24:59]  Device 3 : Chirp 8 Configuration successful
    [12:24:59]  [RadarAPI]: ar1.ChirpConfig_mult(4, 9, 9, 0, 0, 0, 0, 0, 0, 0,0)
    [12:24:59]  [RadarAPI]: Status: Passed
    [12:24:59]  Device 3 : Chirp 9 Configuration successful
    [12:24:59]  [RadarAPI]: ar1.ChirpConfig_mult(8, 0, 0, 0, 0, 0, 0, 0, 1, 0,1)
    [12:24:59]  [RadarAPI]: Status: Passed
    [12:24:59]  Device 4 : Chirp 0 Configuration successful
    [12:24:59]  [RadarAPI]: ar1.ChirpConfig_mult(8, 1, 1, 0, 0, 0, 0, 0, 0, 1,0)
    [12:24:59]  [RadarAPI]: Status: Passed
    [12:24:59]  Device 4 : Chirp 1 Configuration successful
    [12:24:59]  [RadarAPI]: ar1.ChirpConfig_mult(8, 2, 2, 0, 0, 0, 0, 0, 1, 0,0)
    [12:24:59]  [RadarAPI]: Status: Passed
    [12:25:00]  Device 4 : Chirp 2 Configuration successful
    [12:25:00]  [RadarAPI]: ar1.ChirpConfig_mult(8, 3, 3, 0, 0, 0, 0, 0, 0, 0,0)
    [12:25:00]  [RadarAPI]: Status: Passed
    [12:25:00]  Device 4 : Chirp 3 Configuration successful
    [12:25:00]  [RadarAPI]: ar1.ChirpConfig_mult(8, 4, 4, 0, 0, 0, 0, 0, 0, 0,0)
    [12:25:00]  [RadarAPI]: Status: Passed
    [12:25:00]  Device 4 : Chirp 4 Configuration successful
    [12:25:00]  [RadarAPI]: ar1.ChirpConfig_mult(8, 5, 5, 0, 0, 0, 0, 0, 0, 0,0)
    [12:25:00]  [RadarAPI]: Status: Passed
    [12:25:00]  Device 4 : Chirp 5 Configuration successful
    [12:25:00]  [RadarAPI]: ar1.ChirpConfig_mult(8, 6, 6, 0, 0, 0, 0, 0, 0, 0,0)
    [12:25:00]  [RadarAPI]: Status: Passed
    [12:25:00]  Device 4 : Chirp 6 Configuration successful
    [12:25:00]  [RadarAPI]: ar1.ChirpConfig_mult(8, 7, 7, 0, 0, 0, 0, 0, 0, 0,0)
    [12:25:00]  [RadarAPI]: Status: Passed
    [12:25:01]  Device 4 : Chirp 7 Configuration successful
    [12:25:01]  [RadarAPI]: ar1.ChirpConfig_mult(8, 8, 8, 0, 0, 0, 0, 0, 0, 0,0)
    [12:25:01]  [RadarAPI]: Status: Passed
    [12:25:01]  Device 4 : Chirp 8 Configuration successful
    [12:25:01]  [RadarAPI]: ar1.ChirpConfig_mult(8, 9, 9, 0, 0, 0, 0, 0, 0, 0,0)
    [12:25:01]  [RadarAPI]: Status: Passed
    [12:25:01]  Device 4 : Chirp 9 Configuration successful
    [12:25:01]  Test Source Already Disabled...!!!
    [12:25:01]  [RadarAPI]: ar1.DisableTestSource_mult(1,0)
    [12:25:01]  [RadarAPI]: Status: Passed
    [12:25:01]  [RadarAPI]: ar1.FrameConfig_mult(1, 0, 9, 10, 64, 100, 0, 1)
    [12:25:01]  [RadarAPI]: Status: Passed
    [12:25:02]  Master : Frame Configuration successful
    [12:25:02]  Test Source Already Disabled...!!!
    [12:25:02]  [RadarAPI]: ar1.DisableTestSource_mult(14,0)
    [12:25:02]  [RadarAPI]: Status: Passed
    [12:25:02]  [RadarAPI]: ar1.FrameConfig_mult(14, 0, 9, 10, 64, 100, 0, 2)
    [12:25:02]  [RadarAPI]: Status: Passed
    [12:25:02]  Slaves : Frame Configuration successful
    [12:25:02]  
    [12:25:02]  ***Script completed successfully.***
    [12:29:05]  [RadarAPI]: ar1.TDACaptureCard_StartRecord_mult(14, 0, 0, adc_data03240605, 0)
    [12:29:05]  Device 0 - Configuring TDA with Width : 2048 and Height : 640
    [12:29:05]  [RadarAPI]: Device 0 - setWidthAndHeight Status: Passed
    [12:29:05]  [RadarAPI]: Device 1 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Device 1 - Configuring TDA with Width : 2048 and Height : 640
    [12:29:05]  [RadarAPI]: Device 1 - setWidthAndHeight Status: Passed
    [12:29:05]  [RadarAPI]: Device 2 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Device 2 - Configuring TDA with Width : 2048 and Height : 640
    [12:29:05]  [RadarAPI]: Device 2 - setWidthAndHeight Status: Passed
    [12:29:05]  [RadarAPI]: Device 4 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Device 3 - Configuring TDA with Width : 2048 and Height : 640
    [12:29:05]  [RadarAPI]: Device 3 - setWidthAndHeight Status: Passed
    [12:29:05]  [RadarAPI]: Device 8 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Sending Frame Periodicity of 100 to TDA..
    [12:29:05]  [RadarAPI]: Status: Passed. Frame Periodicity sent to TDA
    [12:29:05]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Sending Capture Directory with name /mnt/ssd/adc_data03240605 to TDA..
    [12:29:05]  [RadarAPI]: Status: Passed. Capture Directory sent to TDA
    [12:29:05]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Sending File Allocation of 0 files to TDA..
    [12:29:05]  [RadarAPI]: Status: Passed. File Allocation sent to TDA
    [12:29:05]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Sending Enable Data Packaging (0 - 16-bit; 1 - 12-bit) with value of 0 to TDA..
    [12:29:05]  [RadarAPI]: Status: Passed. Enable Data Packaging sent to TDA
    [12:29:05]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:05]  Sending Number of frames to capture with value of 0 to TDA..
    [12:29:05]  [RadarAPI]: Status: Passed. Number of frames to capture sent to TDA
    [12:29:05]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:06]  [RadarAPI]: Status: Passed for notifying TDA about Creating Application
    [12:29:06]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:06]  [RadarAPI]: ar1.StartFrame_mult(14)
    [12:29:06]  [RadarAPI]: Status: Passed for notifying TDA about Start Frame
    [12:29:06]  [RadarAPI]: Device 32 : CAPTURE_RESPONSE_ACK Async event recieved() with status 0 
    [12:29:06]  [RadarAPI]: Status: Passed
    [12:29:06]  [DeviceId-2] Frame start async event received!
    [12:29:06]  [DeviceId-3] Frame start async event received!
    [12:29:06]  [DeviceId-1] Frame start async event received!
    [12:29:11]  [RadarAPI]: ar1.StartFrame_mult(1)
    [12:29:11]  [RadarAPI]: Status: Passed
    [12:29:11]  [DeviceId-0] Frame start async event received!
    [12:29:12]  [DeviceId-3] Frame End async event received!
    [12:29:12]  [RadarAPI]: Frame Ended
    [12:29:12]  [DeviceId-2] Frame End async event received!
    [12:29:12]  [DeviceId-0] Frame End async event received!
    [12:29:24]  Downloading file /mnt/ssd/adc_data03240605/master_0000_data.bin...
    [12:29:24]  Downloaded file /mnt/ssd/adc_data03240605/master_0000_data.bin from SSD!
    [12:29:24]  Downloading file /mnt/ssd/adc_data03240605/slave1_0000_data.bin...
    [12:29:25]  Downloaded file /mnt/ssd/adc_data03240605/slave1_0000_data.bin from SSD!
    [12:29:25]  Downloading file /mnt/ssd/adc_data03240605/slave2_0000_data.bin...
    [12:29:25]  Downloaded file /mnt/ssd/adc_data03240605/slave2_0000_data.bin from SSD!
    [12:29:25]  Downloading file /mnt/ssd/adc_data03240605/slave3_0000_data.bin...
    [12:29:25]  Downloaded file /mnt/ssd/adc_data03240605/slave3_0000_data.bin from SSD!
    [12:29:26]  Export Operation was successful!
    [12:29:26]  [RadarAPI]: Transfer of the Captured files COMPLETE!
    

  • Hello User,

    Thanks for the clarification. This definitely clears out some things for us.

    We've now put together all known facts from the threads created by your team. I would need some more time to discuss on this internally and will get back to you next week.

    Thankyou for your patience.

    Regards,

    Ishita