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.

IWR1443BOOST: How to use the mmWave IC w/o a TI processor or RTOS?

Part Number: IWR1443BOOST
Other Parts Discussed in Thread: IWR1642, , IWR1443

I bought the IWR1443BOOST dev board and have been using it.  I have read a ton of different manuals and have run through the demos and I understand some of it, but not enough that I can confidently modify the existing examples to work as a prototype sub-component for a new application.  I would like to have multiple sensors, either IWR1443 or IWR1642 based, connect via SPI, UART, I2C or some other low-level interface to an FPGA and NOT use a microcontroller (or an RTOS).  All of the demo projects I can find use an RTOS and TI microcontroller.  Is there info available that describes how to design with this IC at a lower level, using just the IC itself?

  • Hi

    What type of data do you need to receive from the IC for your application?

    Thank you
    Cesar
  • Hello Cesar,

    I want to read distance to an object that is in range of the sensor (ie, 0 to 40+ meters, or whatever the max range can be to get decent results). This is for 2 purposes: #1) to detect a large surface, like a wall in a room, and #2) to detect any other smaller object that is also in the room and closer than the wall (ie, a box, a person, a can, a stick, etc).  I can use several sensors oriented in various directions if necessary to improve the field of view.  I don't necessarily need to resolve multiple objects, just detect the distance to the closest one and to the wall.  I would like to just have a state machine interface to the sensor IC and read distance info at some regular rate - maybe 10-50 times per second depending on what the sensor can do.

    Thanks

    John

  • Hi John S.,

    The standard mmWave SDK out-of-box mmw demo described in the mmWave SDK user guide runs on the mmWave sensor device and can be configured to only output detected object data (including position, radial velocity, and intensity) over UART.  This is how the mmWave Demo Visualizer PC GUI (dev.ti.com/mmWaveDemoVisualizer) interacts with the EVM and then displays the detected objects on the PC.  You could use the same method by replacing the PC with an FPGA and having the FPGA send the desired configuration to the mmWave sensor via the config UART and then receive the periodic detected object data on the data UART.  An alternative would be to modify the mmWave SDK demo firmware to use a different communication interface like SPI instead of UART if desired.

    Regards,
    John H

  • John S.,

    Just wondering if any more support is required or if the issue is resolved? If resolved, would it be possible to mark the thread as answered?

    Regards,
    John H
  • Hi John H,

    What you described is what I already had assumed could be done; I was hoping for lower-level details.  Rather than take a fairly complicated demo project (which uses an RTOS and communicates with a PC via a TI dsp that I won't be using) and reverse-engineer how everything is done to get data out of the IWR chip, I was hoping for something like a data sheet that just listed the registers or whatever I need to access within the IWR chip itself to get out the individual data.  I have not yet found anything like that - maybe I am not looking in the right place.  If nothing like that exists, then I can close the thread.

    John S

  • John S,

    If you are able to use two UART ports on your FPGA (one for the Config UART as the control interface and one for the Data UART as the output data interface), then you can try out the TI mmWave sensor using the provided pre-built mmWave SDK mmw out-of-box demo firmware without compiling any code or even using CCS. The mmw demo for the IWR1443 device uses only the ARM processor (MSS) since that device does not include a DSP. The configuration is done via a set of configuration parameters sent to the device over the Config UART which is processes by the mmw demo firmware (direct registers are not accessible).

    For more information, please see the mmWave SDK user guide which is located on your PC at "C:\ti\mmwave_sdk_<ver>\docs\mmwave_sdk_user_guide.pdf" after installing the mmWave SDK (downloadable from www.ti.com/.../MMWAVE-SDK). Section 3 describes the mmw (out-of-box) demo (as well as the capture demo).

    Pre-built binaries for the mmw demo that come with the SDK can be flashed to the IWR1443BOOST EVM using the instructions in section "3. 2. 1. Demonstration Mode" thereby eliminating the need to build the code using CCS/RTOS/etc.

    You can then run the demo first from a PC using the mmWave Demo Visualizer as described in section "3. 3. 1. mmWave Demo for xWR14xx/xWR16xx" to make sure everything is working and select your desired chirp profile configuration as well as configuring it to only output detected objects by de-selecting all the other output data types. At that point you can save your selected chirp config using the "Save config to PC" button to a simple text .cfg file. The saved config file holds the commands that are sent to the mmWave sensor via the Config UART to configure the device and start it.

    If you now change out the PC for the FPGA (connecting both the Config and Data UARTs) then you should be able to send the configuration from the FPGA over the Config UART and start receiving the detected object data over the Data UART. The format for the config commands sent over the Config UART are also documented in the mmWave SDK user guide section "3. 4. Configuration (.cfg) File Format" as a reference. The output data format coming from the data UART is documented in the Doxygen documentation that comes with the mmWave SDK and is typically located at the following location after installing the SDK.

    C:\ti\mmwave_sdk_<ver>\packages\ti\demo\xwr16xx\mmw\docs\doxygen\html\index.html
    You can search for the following heading : "Output information sent to host"

    Please reply if you have more questions.

    Regards,
    John
  • Thank you John H; I think this is the info I need and we will give it a try