03 Dec 2024
uDSP-Card: XCORE.AI Development Board for Portable Applications
This post introduces the uDSP-Card, a compact development board built on the XMOS XCORE.AI platform and tailored for portable and wearable applications. Despite its small footprint, it offers rich I/O and high-performance DSP capabilities at low power, making it ideal for audio, sensing, and real-time embedded tasks.
Note: This article is adapted from sections of my Master’s thesis on “Ultrasonic Hearing for Human Echolocation”.
Overview
The uDSP-Card was originally designed for a battery-powered, head-mounted system that interfaced with MEMS microphones, an 8-channel DAC, an ESP32-based wireless module, and a custom battery module. While tailored for this specific application, the board’s flexible I/O and modular architecture making it ideal for audio, sensing, and real-time embedded tasks.

Specification
The uDSP-Card is powered by the XMOS XU316-1024, a dual-core 800 MHz processor featuring 16 hardware threads and a dedicated vector unit for efficient real-time signal processing. Its architecture is derived from the XMOS reference design and development board XK-EVK-XU3161, adapted for compact, low-power, portable applications.
Key Features
- Dimensions: 60 mm × 30 mm (6-layer PCB)
- Processor: XMOS XU316-1024 (dual-core, 800 MHz, 16 threads)
- RAM: 128 Mb LPDDR1
- Flash: 32 Mb QSPI
- microSD card slot
- USB Interface: Device (power + audio/data)
- Line Output: Stereo via ESS ES9033 DAC
- Expansion Header: 44-pin interconnect
- I²S (8ch)
- I²C / SPI
- PDM (8ch)
- Power input
- Onboard Sensors:
- BMI323 IMU (accelerometer + gyro)
- BME280 EMU (humidity, pressure, temperature)


Repository
- hw_udsp-card: KiCAD project (schematic, PCB), board architecture, pinout, and renderings
- sw_udsp-card: Example applications
- lib_udsp_card_board_support`: XCORE board support and configuration files
- lib_io_i2c: Individual C-based I²C library from xcore_iot
- lib_io_i2s: Individual C-based I²S library from xcore_iot
- lib_mic_array_192: Modified microphone array library for 192kHz
- lib_xua_192: Modified USB audio library for 192kHz PDM support
References
Footnotes
-
XMOS, "xcore.ai Explorer v2 BoardManual", Manual XM014531A, (2024) ↩
