GitHub

Hardware / No radio: small chips / Step 2 of 5

LP-MSPM0L1306 (MSPM0L1306)

The MSPM0L1306 is a microcontroller in TI's MSPM0 family: 32 MHz Arm Cortex-M0+, 64 kB of flash, 4 kB of RAM.

Quick facts

BoardLP-MSPM0L1306
ChipMSPM0L1306
CoreCortex-M0+
Clock32 MHz
Flash64 kB
RAM4 kB
RadioNone
Notable peripherals12-bit ADC, 1.68 Msps (data sheet), up to 10 external channels; 2 zero-drift op-amps, 1 general-purpose amplifier; 1 comparator with 8-bit DAC; CRC-16 and CRC-32; 3 DMA channels; 2 UART, 2 I2C, 1 SPI
On-board debug probeBuilt into the board
Where to buyTI.com
Toolchains that ranTI compilers, GCC, Zephyr, FreeRTOS, Rust

Get it running

  1. Plug the board into your computer with its USB cable. No driver to install.

  2. In Chrome or Edge, open the browser bench and click Connect.

  3. Pick Blink LED2 red: 150, 150, 150, 900 ms and click Flash. The page writes it to the board.

    You should see: LED2 red flashes: on 150 ms, off 150 ms, on 150 ms, off 900 ms, repeating.

    LED2 needs its jumpers J2, J3, J12 and J13 on (as shipped), and J101's nine debugger jumpers on.

What works

  • CoreMark: 78.27 (2.446 per MHz) (TI Arm Clang, bare metal, -O3; 32 MHz)
  • Interrupt latency, pend to first handler line: 25 cycles (bare metal; 32 MHz)
  • GPIO toggle: 1.0 cycles (one register write; not checked on a scope; 32 MHz)
  • Blink image size: 440 B of flash, 256 B of RAM (bare metal)
  • Room-occupancy AI model, one inference: 9.3 ms (-O3; 32 MHz)
  • Control loop, trigger to new PWM value: 55.5 µs (-O2; 32 MHz)
  • 256-point complex FFT: 2.25 ms (CMSIS-DSP prebuilt arm_cortexM0l_math.a; best of 5; 32 MHz)
  • AES-128: 405.86 cycles/B in software (TI Arm Clang, -O2, from flash; 32 MHz)
  • RTOS task switch round trip: 12 µs (FreeRTOS; 32 MHz)
  • Fastest ADC with DMA: 1.45 Msps (adc12_max_freq_dma; 1k samples in 23k cycles; 32 MHz)

Download every result for this board (CSV), or compare it on this board on the Benchmarks page.

Projects and ports that ran here

Want wireless? Try the LP-EM-CC2340R5 for Bluetooth, Zigbee or Thread or the LP-EM-CC35X1 for Wi-Fi.

Fixes

  • If you see wrong # args: should be "error message ?stacktrace?" after mspm0_mass_erase, ignore it and load an image with DSLite or OpenOCD.
  • If you see DAP Connection Error. This could be caused by the device having gone to low power mode, hold S1 (PA18), press and release S3, keep S1 held 2 more seconds, then flash a non-sleeping image at once.
  • If you see error: 'IOMUX_PINCM38' undeclared here (not in a function), build with the out-of-tree board in mspm0l1306/zephyr/.
  • If you see region `RAM' overflowed (Zephyr sample), cut stacks and buffers as in mspm0l1306/zephyr/extra/README.md.
  • If you see run placement with alignment fails for section ".bss" size 0x1458, use static allocation and small task stacks.
  • If you see symbol "interruptVectors" redefined (the three bsl_software_invoke_app_demo_* examples), skip them.
  • If you see Serial shows the boot text twice, read results in the OpenOCD connection that started it, or use the serial port.
  • If you see Sleep current stays near 2.6 mA in any power mode, or a SysTick count does not stop in STANDBY0, unplug and replug USB, or clear the request in OpenOCD with mspm0x.dap dpreg 0x04 0x00000000 (this resets the chip once more), then measure.

Every fix for this board, with the exact error text

How long an AI assistant took here

5 jobs timed with an AI coding assistant on this board, given the board's notes. Time is the median of the runs; passed means a person or a script checked the result. No spend or token counts here.

JobAssistantNotes givenTimePassed
blinkSonnet 5.5with the board's notes1.3 min1 of 1
coremarkSonnet 5.5with the board's notes1.3 min1 of 1
oneline terminalopus5with the board's notes8.0 min1 of 1
port usartdmaSonnet 5.5with the board's notes7.3 min1 of 1
zephyr questionSonnet 5.5with the board's notes0.3 min1 of 1

For AI assistants

Point your assistant at this board's AGENTS.md (build, flash and fix notes), this board's llms-full.txt (every page for the board in one file) and the repository's llms.txt (the index).

Sources: mspm0l1306/README.md, mspm0l1306/AGENTS.md, mspm0l1306/FAQ.md, data/results/mspm0l1306.csv, site/data/portfolio.json, site/data/projects.json, site/data/ports.json.