xWRL6432 MMWAVE-L-SDK  05.04.00.01
Release Notes 05.04.00

Attention
Refer to individual module pages for more details on each feature, unsupported features, important usage guidelines.
Note
The examples will show usage of SW modules and APIs on a specific CPU instance and OS combination.
Unless noted otherwise, the SW modules would work in both FreeRTOS and NORTOS environment.
Unless noted otherwise, the SW modules would work on all supported EVMs

New in this Release

Feature Module
SDK that runs on 6432 ES2.0 devices with NO backward compatibility for 6432 ES1.0
(Refer Migration Guide for 6432 ES1 to 6432 ES2)
ALL
Sysconfig based feature selection for demos Demos
Warm Reset support via CLI command in demos Demos
Decomposition of demo source code into multiple files and folders for better readability Demos
Support DCA1000 based ADC data capture with/without side band enabled with parsing scripts Demos
RF Monitoring support in demos Demos
Live monitor support in demos Demos
Check on TLV transmit time (via UART) in demos to avoid demo crash because of insufficient frame idle time Demos
Added support for CLPC calibration Demos
Updated the Factory and Runtime calibration procedures Demos
Streaming of Raw ADC data over SPI in demos Demos
Demo updates to optimize power consumption by reducing the LPDS re-init time Demos, Power
Implement BFP compression/decompression for DPUs MMWDEMO, Range, Doppler & AOA2D DPUs
MPD demo will support default config which is a configurable feature in SysCfg Motion & Presence Detect
Scene based configuration switching for optimized power consumption ("profileSwitchCfg" command) Motion and Presence Detect
Support for xWRL6432 AOP devices Examples and Demos
Spec update for Minimum Chirp Idle time and Chirp Idle time required for interchirp Power Saving Control
Added GPADC read APIs with example implementation in Demos Control
Updated Chirp configuration checks in Control library Control
Added 2D Capon Algorithm Algos
Added trimmed version of CMSIS-DSP Library CMSIS
Added example that demonstrates using HWASS Shared memory as M4 memory Drivers
Removed the Flash Part check while opening in Flash Driver for Ease-of-Use Flash
Example application for HWA FFT1D feature HWA
Added Interference Mitigation feature as part of HWA driver HWA
96KB FECSS/HWASS shared memory is now available for HWASS Memory
Low power "Idle" mode configurability via Sysconfig Power
BGAP allowed to hibernate during LPDS Power
Removed shared memory clock disabling in SBL before jumping to application SBL
SOC_memoryInit function updated to take memories to be initialized as arguments SOC
Syscfg data updated to support future devices. Use Syscfg device data from tools folder Syscfg
Improved Visualizer with more features Visualizer
Separate API added to Start the WatchDog timer Watchdog
Updated Watchdog example to resume and run again after Watchdog Reset Watchdog

Device and Validation Information

SOC Supported CPUs EVM Host PC
xWRL6432 M4F xWRL6432 EVM (referred to as xwrL64xx-evm in code) Windows 10 64b or Ubuntu 18.04 64b

Tools, Compiler and Other Open Source SW Module Information

Tools / SW module Supported CPUs Version
Code Composer Studio M4F 12.4.0
SysConfig M4F 1.17.0
TI ARM CLANG M4F 2.1.3.LTS
FreeRTOS Kernel M4F 10.4.3
mmwave DFP M4F 3_2_0_2
UNIFLASH M4F 8.3.0

Key Features

OS Kernel

OS Supported CPUs SysConfig Support Key features tested Key features not tested / NOT supported
FreeRTOS Kernel M4F NA Task, Task notification, interrupts, semaphores, mutexs, timers, event groups. ROV views in CCS IDE, Task load measurement using FreeRTOS run time statistics APIs. -
FreeRTOS POSIX M4F NA pthread, mqueue, semaphore, clock -
NO RTOS M4F NA See Driver Porting Layer (DPL) below -

Driver Porting Layer (DPL)

Module Supported CPUs SysConfig Support OS support Key features tested Key features not tested / NOT supported
Clock M4F YES FreeRTOS, NORTOS Tick timer at user specified resolution, timeouts and delays -
CycleCounter M4F NA FreeRTOS, NORTOS Measure CPU cycles using CPU specific internal counters -
Debug M4F YES FreeRTOS, NORTOS Logging and assert to any combo of: UART, CCS, shared memory -
Heap M4F NA FreeRTOS, NORTOS Create arbitrary heaps in user defined memory segments -
Hwi M4F YES FreeRTOS, NORTOS Interrupt register, enable/disable/restore -
MPU M4F YES FreeRTOS, NORTOS Setup MPU and control access to address space -
Semaphore M4F NA FreeRTOS, NORTOS Binary, Counting Semaphore, recursive mutexs with timeout -
Task M4F NA FreeRTOS Create, delete tasks -
Timer M4F YES FreeRTOS, NORTOS Configure arbitrary timers -
Event M4F YES FreeRTOS Setting, getting, clearing, and waiting of Event bits -

SOC Device Drivers

Peripheral Supported CPUs SysConfig Support Key features tested Key features not tested / NOT supported
EDMA M4F YES Basic memory copy, DMA/QDMA channels, Interrupt/Polled, Manual/Event trigger, Chaining -
EPWM M4F YES EPWM module configuration APIs -
ESM M4F YES Group and Error number selection, Tested ESM notifier with watchdog module -
GPIO M4F YES Basic input/output, GPIO as interrupt -
HWA M4F YES FFT, CFAR and compression/decompression, Interrupt/Polled, Manual/DMA trigger -
I2C M4F YES Controller mode, basic read/write, polling and interrupt mode Target mode not supported.
MCAN M4F YES RX, TX, interrupt and polling mode -
MCSPI M4F YES Controller/Target mode, basic read/write, polling, interrupt and DMA mode -
Pinmux M4F YES Tested with multiple peripheral pinmuxes -
QSPI M4F YES Read direct, Write indirect, Read/Write commands -
SOC M4F YES Lock/unlock MMRs, get CPU clock, CPU name, clock enable, set frequency -
UART M4F YES Basic read/write, polling, interrupt mode, CPU/DMA mode -
WATCHDOG M4F YES Window size and Expiry time selections, Reset mode, Digital windowed -
POWER M4F YES Device LPDS Entry and Exit using sleep counter/SYNCIN IO. Device Idle3 entry and exist using frame timer -
LIN M4F YES LIN Internal loopback, LIN external DIG/ANA loopback -

Board Device Drivers

Peripheral Supported CPUs SysConfig Support Key features tested Key features not tested
Flash M4F YES QSPI based flash (Macronix part MX25V1635F) All vendor flash types not tested

Fixed Issues

ID Head Line Module Applicable Releases Applicable Devices Resolution/Comments
MMWLPSDK-3044 LIN: Incorrect bit field macros for LIN_triggerChecksumCompare LIN 5.3.0.2 xWRL6432 Corrected the macro
MMWLPSDK-2825 Sysconfig displays incorrect values for INA rails Demos 5.3.0.2 xWRL6432 Corrected the code generation in Sysconfig
MMWLPSDK-1542 Boot failure if metaimage is multiple of 2K bytes Examples 5.3.0.2 xWRL6432 crcMulticoreimage tool is updated to pad the meta image by 64 bytes when image is multiple of 2K bytes
MMWLPSDK-1533 SBL main app load time significantly slower than expected SBL 5.3.0.2 xWRL6432 DMA is enabled for QSPI transfers in SBL
MMWLPSDK-1532 Back to back full word write followed by sub-word write corrupts shared memory when shared with M4 core Examples 5.3.0.2 xWRL6432 Updated SBL and shared memory example to not to use shared memory for code, data, bss sections. Refer errata (DIG #14) for more details
MMWLPSDK-1520 SBL only working with nortos applications but not with FreeRTOS in Industrial variants SBL 5.3.0.2 xWRL6432 Updated SBL to stop and disable the SYSTICK interrupt before jumping to the application
MMWLPSDK-1508 Task does not resume on semaphore pend after the semaphore has been posted in Demos HWA 5.3.0.2 xWRL6432 Updated HWA interrupt priorities to be less than "configKERNEL_INTERRUPT_PRIORITY" and "configMAX_API_CALL_INTERRUPT_PRIORITY" as per FreeRTOS recommendations
MMWLPSDK-982 WDT Continue on Suspend not working WatchDog 5.3.0.2 xWRL6432 Updated the driver code to fix the bug
MMWLPSDK-840 SBL does not work in Debug mode SBL 5.3.0.2 xWRL6432 This was due to errata "DIG #14 Corrupted Data Store for Partial Write in Shared Memory". SBL is updated to not to use shared memory for code, data, bss sections.
MMWLPSDK-415 EDMA driver does not support extended parameter srcBidx and dstBidx EDMA 5.3.0.2 xWRL6432 Updated the driver code to support extended parameter srcBidx and dstBidx
In BOM optimized mode, the current firmware doesn't give sufficient settling time for the 1.2V RF LDO. As a result, the 1.2V RF LDO is not settled before burst start. Demos 5.3.0.2 onwards xWRL6432 Firmware is updated to give sufficient settling time for the 1.2V RF LDO.
MMWLPSDK-904 In mmwave_demo the low level CFAR detected points are missed by AoA2D DPU MMWAVE_DEMO 5.3.0.2 onwards xWRL6432 HWA CFAR is configured with magnitude operation input mode instead of log2 mode
MMWLPSDK-940 HWA driver does not support all channels of scalar multiplication mode HWA 5.3.0.2 onwards xWRL6432 Enabled all 6 channels
MMWLPSDK-300 DOA proc DPU tests are in development DataPath 5.1.0.3 onwards xWRL6432 Tests are developed
MMWLPSDK-301 Range proc DPU test application update DataPath 5.1.0.3 onwards xWRL6432 Tests are developed
MMWLPSDK-951 1Tx Configurations not supported in Minor mode of Motion and Presence Detect Demo Motion and Presence Detect Demo 5.3.0.2 xWRL6432 Fixed the bug

Known Issues

ID Head Line Module Applicable Releases Applicable Devices Workaround
MMWLPSDK-3048 The compression in mmwDemo chain for L6432/1432 has to be enabled, to be able to enable the Low Power mode. Without the compression feature, Low Power mode does not function as intended. MMWDEMO 5.04.00.00 xWRL6432 None
MMWLPSDK-1315 Incorrect zone presence indication in Visualizer when "profileSwitchCfg" command is used Motion and Presence Detect Demo 5.04.00.00 xWRL6432 None
MMWLPSDK-906 QSPI Flash example "qspi_flash_diag" is failing on few EVMs QSPI Example 5.04.00.00 xWRL6432 None
MMWLPSDK-1938 Authenticated Images do not generate on Linux machines Examples 5.04.00.00 xWRL6432 None
MMWLPSDK-3066 Number of detections spike intermittently in Visualizer when Compression is enabled in MMWDEMO MMWDEMO 5.04.00.00 xWRL6432 None

Limitations

Head Line Module Reported in Release Applicable Devices Workaround
All the TLV's cannot be enabled at same time due to limitation of UART baudrate Demos 5.01.00.03 xWRL6432 Enable only required TLV's
On-board INA sensor(INA 226 only) cannot be used for power measurement. When device with INA226 sensor is used, the Power will not be plotted in visualizer. Demos 5.01.00.03 xWRL6432 Use EVMs with INA 228 sensors
sensorWarmRst not supported in low Power configuration Demos 5.04.00.00 xWRL6432 None.
SensorStop not supported in low Power configuration Demos 5.01.00.03 xWRL6432 None.
Using 32KB RAM memory (Range: 0x00458000 to 0x0045ffff) in application can cause issues. This block is being used by RBL. General 5.01.00.03 xWRL6432 Use this block of memory for sections like Stack, Heap, BSS (if allocated contiguously).
Streaming of Raw ADC data via SPI has limitations based on memory, frame idle time and cannot be used in low power configuration Demos 5.04.00.00 xWRL6432 The configurations being used for Raw ADC data capture should be such that demos have sufficent memory and frame idle time for successful capture of all data

Compiler Options

Module Affected API Change Additional Remarks
Release Build - The release build with ti-arm-clang compiler has been done with Os optimization level. It is recommended that user rebuilds the existing libraries and applications with 'Os' option. This can be done by updating CFLAGS_release in library/example makefiles.