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.

IWRL6432AOP: Start up sensor without sending config by Visualizer

Part Number: IWRL6432AOP
Other Parts Discussed in Thread: SYSCONFIG

Tool/software:

Hi Nathan and experts,

I modified the code of project "motion_and_presence_detection" to light up LED once detecting anything and turn it off when nothing.

What I want to try is to start up this function directly after powering the board on without "sending config to device" through visualizer. (I'm trying it on EVM for testing first)

I found this post but not sure if this is what I could refer to:

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1279165/faq-iwrl6432-exporting-the-radar-cube-over-uart

If it's different case from mine, how should I modify the syscfg and code for implementing this?

Thanks in advance.

  • Hi

    Thanks for your query. Please allow us a couple of days to respond

    Regards

  • Hi Daniel,

    If you want the device to start up without sending the configuration file, I would recommend looking at the hard-coded config options in the demo. If you enable the CLI_REMOVAL and enable the MPD code in sysconfig, you can load in a JSON file that corresponds to your configuration. (see C:\ti\MMWAVE_L_SDK_05_05_00_00\examples\mmw_demo\motion_and_presence_detection\profiles\xwrL64xx-evm\ for an example).

    This should run immediately upon startup. If you still want to use the visualizer too, you should use an corresponding .cfg file and send it to the industrial visualizer, and click "start without send configuration"

    Best,

    Nate 

  • Hi Nathan,

    This is exactly what I want! But I'm using xwrL64xx-aop, I think it doesn't affect, right?

    However, I got another problem after enabled CLI_REMOVAL and MPD. I found that CLI_SIGPROC_MOTDETMODE will be set to 2 which means I could always use minor motion only.

    The way I light up LED by detecting something is by adding these codes into major motion in dpc.c:

    if(numDetectedPoints[MMW_DEMO_MAJOR_MODE] != 0)
        GPIO_pinWriteHigh(gpioBaseAddrLed, pinNumLed);
    else
        GPIO_pinWriteLow(gpioBaseAddrLed, pinNumLed);

    But numDetectedPoints in minor motion gets 0 only if I cover the whole sensor.
    How can I change the motion mode? Or, is there a better way to light up LED when detecting something?

    By the way, I tried to modify CLI_Rem_MPD_En.json in "examples" and load it in syscfg-gui, but I got this error when loading json (no matter I modified the file or not):

  • However, I got another problem after enabled CLI_REMOVAL and MPD. I found that CLI_SIGPROC_MOTDETMODE will be set to 2 which means I could always use minor motion only.

    You can modify the config file and reupload it using the Load CLI Config From JSON button.

    For presence detection, try using both major and minor mode and turn on the LED when you use major mode. I would recommend designing a config file using the CLI first, then when you're happy with it, convert it to JSON and make the device start chirping on power-up with CLI_REMOVAL.

    Best,

    Nate

  • Hi Nathan,

    I tried to reupload CLI_Rem_MPD_En.json by "Load CLI Config from JSON" button, but it came out with this error as I mentioned, no matter I modified it or not

    I am working in Linux OS and this is my imports.mak file: (I change it to .txt for uploading it)

     

    DEVICE ?= xwrL64xx
    
    ifeq ($(OS),Windows_NT)
        TOOLS_PATH?=C:/ti
        CCS_PATH?=$(TOOLS_PATH)/ccs1271/ccs
        CCS_ECLIPSE=$(CCS_PATH)/eclipse/eclipsec
        CYGWIN_PATH?=$(CCS_PATH)/utils/cygwin
        MKDIR=$(CYGWIN_PATH)/mkdir -p
        RMDIR=$(CYGWIN_PATH)/rm -rf
        RM=$(CYGWIN_PATH)/rm -f
        COPY=$(CYGWIN_PATH)/cp
        CAT=$(CYGWIN_PATH)/cat
        TOUCH=$(CYGWIN_PATH)/touch
        PATHSEP=\\
        CHMOD=$(CYGWIN_PATH)/echo
        SHELL=cmd.exe
    else
        UNAME_S := $(shell uname -s)
        ifeq ($(UNAME_S),Linux)
            export TOOLS_PATH?=$(HOME)/project/radar_IWRL6432AOP
            export CCS_PATH?=$(TOOLS_PATH)/ccs1271/ccs
            export CCS_ECLIPSE=$(CCS_PATH)/eclipse/eclipse
            export MKDIR=mkdir -p
            export RMDIR=rm -rf
            export RM=rm -f
            export COPY=cp
            export TOUCH=touch
            export PATHSEP=/
            export CHMOD=chmod
        endif
    endif
    
    ifneq ($(wildcard $(CCS_PATH)/.),)
        CGT_TI_ARM_CLANG_PATH=$(CCS_PATH)/tools/compiler/ti-cgt-armllvm_4.0.0.LTS
    else
        CGT_TI_ARM_CLANG_PATH=$(TOOLS_PATH)/ti-cgt-armllvm_4.0.0.LTS
    endif
    
    MMW_DFP_PATH=$(MCU_PLUS_SDK_PATH)/firmware/mmwave_dfp
    
    SYSCFG_PATH ?= $(TOOLS_PATH)/sysconfig_1.21.1
    SYSCFG_CLI_PATH ?= $(SYSCFG_PATH)
    SYSCFG_NODE = $(SYSCFG_PATH)/nodejs/node
    SYSCFG_NWJS = $(SYSCFG_PATH)/nw/nw
    SYSCFG_SDKPRODUCT=$(MCU_PLUS_SDK_PATH)/.metadata/product.json
    


    And one more questions, is there any document or explanation about convert config to JSON?

    BR,
    Daniel Yang

  • Hi Daniel,

    Can you try changing the existing example line-by-line and see where the issue is? There is some documentation on it in the SDK here.

    C:/ti/MMWAVE_L_SDK_05_05_00_00/docs/api_guide_xwrL64xx/MOTION_AND_PRESENCE_DETECTION_DEMO.html#autotoc_md765

    Best,

    Nate

  • Hi Nathan,

    Actually, I read this document lots of times, I just don't know what is CLI removal before you told me.
    I tried everything I could do, but the final problem is that I couldn't load the JSON!

    Anyway, this is just a simulation of our board on EVM, I think we can put more efforts when our board is ready.
    Due to our project is pretty urgent now, wish we could have a quicker way to discuss issues in the next few days.

    Thanks in advance,

    Daniel Yang

  • Hi Daniel,

    I will instruct the field to reach out to you to help. You can also just modify the demo to call the CLI_ByPassApi() function with a pointer to the config file of your choice. With the unmodified MMWAVE L SDK 5.5 motion and presence demo, simply comment out the following lines (308, 311, 1733 and 1742 of motion_detect.c, and 1021 and 1031 of mmw_cli.c) and the demo will start running with the radarCmdStringAOP.

    motion_detect.c

    mmw_cli.c

    Demo output

    You can modify the radarCmdStringAOP too in case you want to change the parameters.

    I hope this helps.

    Best,

    Nate