GitHub

Hardware / Special jobs: radar and motors / Step 1 of 4

IWRL6432AOPEVM (IWRL6432AOP)

The IWRL6432AOP is a radar sensor in TI's mmWave family: 160 MHz Arm Cortex-M4F, external serial flash, 1 MB of RAM, 57 to 64 GHz radar, 2 TX, 3 RX, low power.

IWRL6432AOP160 MHzIWRL6432AOPEVM

Quick facts

BoardIWRL6432AOPEVM
ChipIWRL6432AOP
CoreCortex-M4F
Clock160 MHz
FlashExternal serial flash
RAM1 MB
Radio57 to 64 GHz radar, 2 TX, 3 RX, low power
Notable peripheralsTools for Windows and Linux only
On-board debug probeBuilt into the board
Where to buyTI.com

Get it running

  1. Backup: No tested backup command. No tool was found that reads the board's 16 Mbit serial flash back, so the shipped image cannot be saved
  2. Build: bash portability/radar-family/build/build.sh <work dir> builds TI's presence and tracking demo (MMWAVE-L-SDK 05.05.04.02) on a Mac for every family variant, boot images included (Docker for TI's image tools). Built, not flashed (portability/radar-family/logs/build-2026-11-03.log). TI's prebuilt .appimage files in Radar Toolbox 4.00.00.05 need no build
  3. First result: Plug into J5, leave the switches as shipped, ls /dev/cu.usbmodem*, capture 15 s at 115,200 baud from the port ending in 1, then python3 iwrl6432boost/tools/tlv_parse.py capture.bin. --selftest needs no board
  4. Flash another image (prepared, not run): Start python3 arprog_cmdline.py -p /dev/cu.usbmodem<serial>1 -f <image>.appimage -s SFLASH -t META_IMAGE1 only after S1 position 1 is OFF and S2 is pressed (the data port goes silent). This repo's wrapper iwrl6432boost/tools/flash_arprog.py <arprog_dir> <port> <image.appimage> <log.txt> refuses to start if the port is not silent. Then S1 position 1 back ON and press S2
  5. Configure a demo: python3 iwrl6432boost/tools/send_cfg.py <port> <file>.cfg, one line at a time

You should see: one line per radar frame, 4.00 frames a second from the shipped demo.

Every step, with the setup: the board's README.

Fixes

  • If you see Both ports send nothing and the CLI answers nothing, after a JTAG reset-and-halt failed with -2063 and -2062, press S2 (NRST).
  • If you see the probe shows NOserial: xdsdfu -n RI32.
  • If you see Error in setting up range profile:-40107, press S2 and use the 2x3 configuration.
  • If you see arprog says the connection succeeded but nothing is written, put the board in flashing mode first (S1 position 1 OFF, S2).
  • If you see a 05.04 cfg on a 05.05 image tracks oddly, with no error, cut trackingCfg to 4 values.
  • If you see a Python reader built on read(in_waiting) gets 0 bytes on macOS, read first, then count.
  • If you see ti_mmwave_rospkg starts and publishes nothing, set its parameters (ports/radar-host/ti-mmwave-rospkg/in_container.sh) and feed frames under 100 ms apart.
  • If you see REFUSED: ... bytes arrived on ... in 2 s; the board is not in flashing mode (reset it with S1.1 OFF first), set S1 position 1 OFF, press S2, run again.

Every fix for this board in its FAQ

For AI assistants

Point your assistant at this board's AGENTS.md (build, flash and fix notes) and the repository's llms.txt (the index).

Sources: iwrl6432boost/README.md, iwrl6432boost/AGENTS.md, iwrl6432boost/FAQ.md, site/data/portfolio.json.