MIMXRT685-AUD-EVK
Overview
The i.MX RT600 is a crossover MCU family optimized for 32-bit immersive audio playback and voice user interface applications combining a high-performance Cadence Tensilica HiFi 4 audio DSP core with a next-generation Cortex-M33 core. The i.MX RT600 family of crossover MCUs is designed to unlock the potential of voice-assisted end nodes with a secure, power-optimized embedded processor.
The MIMXRT685-AUD-EVK board is an audio-focused evaluation kit for the i.MX RT685 crossover MCU, featuring a CS42448 audio codec and multiple audio interfaces.
Hardware
MIMXRT685SFVKB Cortex-M33 (300 MHz, 4.5 MB on-chip SRAM) core processor with Cadence Xtensa HiFi4 DSP
Onboard, high-speed USB, Link2 debug probe with CMSIS-DAP protocol (supporting Cortex M33 debug only)
High speed USB port with micro A/B connector for the host or device functionality
UART, I2C and SPI port bridging from i.MX RT685 target to USB via the on-board debug probe
64 MB Macronix Quad SPI Flash operating at 1.8 V
NXP PCA9420UK PMIC
User LEDs
Reset and User buttons
CS42448 audio codec
For more information about the MIMXRT685 SoC and MIMXRT685-AUD-EVK board, see these references:
Supported Features
The mimxrt685_aud_evk board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo -
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
mimxrt685_aud_evk/mimxrt685s/cm33 target
On-target memory for this board target: 3 MiB of RAM, 64 MiB of Flash.
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
ARM Cortex-M33F CPU1 |
|
ADC |
on-chip |
LPC LPADC1 |
|
ARM architecture |
on-chip |
LPC Flexcomm node7 |
|
Audio |
on-chip |
NXP DMIC1 |
|
Clock control |
on-chip |
LPC SYSCON & CLKCTL IP node2 |
|
Comparator |
on-chip |
NXP Kinetis ACMP (Analog CoMParator)1 |
|
Counter |
on-chip |
Driver that uses the NXP LPC RTC High resolution counter1 |
|
on-chip |
NXP MCUX Standard Timer/Counter5 |
||
on-chip |
NXP Multirate Timer1 |
||
on-chip |
NXP Multirate Timer Channel4 |
||
CRC |
on-chip |
NXP LPC CRC device1 |
|
DMA |
on-chip |
NXP LPC DMA controller2 |
|
GPIO & Headers |
on-chip |
LPC GPIO1 |
|
on-chip |
LPC GPIO port device6 |
||
Hardware information |
on-chip |
NXP LPC 128-bit Unique identifier1 |
|
I2C |
on-chip |
LPC I2C1 |
|
I3C |
on-chip |
NXP MCUX I3C controller1 |
|
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
NXP Pin interrupt and pattern match engine (PINT)1 |
|
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
||
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
Mailbox |
on-chip |
NXP i.MX Message Unit as Zephyr MBOX1 |
|
Miscellaneous |
on-chip |
NXP i.MX RTxxx DSP control driver (i.MX RT600 HiFi 4 DSP)1 |
|
MMU / MPU |
on-chip |
ARMv8-M MPU (Memory Protection Unit)1 |
|
MTD |
on-board |
NXP FlexSPI NOR1 |
|
on-board |
Flash node1 |
||
Pin control |
on-chip |
LPC I/O Pin Configuration (IOCON)1 |
|
on-chip |
RT600/RT500 Pin Controller1 |
||
PWM |
on-chip |
NXP SCTimer PWM1 |
|
Reset controller |
on-chip |
NXP RSTCTL Peripheral reset controller2 |
|
RNG |
on-chip |
Kinetis TRNG (True Random Number Generator)1 |
|
RTC |
on-chip |
NXP LPC RTC1 |
|
SDHC |
on-chip |
NXP imx USDHC controller2 |
|
Serial controller |
on-chip |
LPC USART1 |
|
SPI |
on-chip |
NXP FlexSPI controller1 |
|
on-chip |
NXP LPC SPI controller1 |
||
SRAM |
on-chip |
Generic on-chip SRAM2 |
|
Timer |
on-chip |
NXP OS Timer on i.MX-RT5xx/6xx1 |
|
on-chip |
ARMv8-M System Tick1 |
||
USB |
on-chip |
NXP LPCIP3511 USB device mode1 |
|
on-chip |
NXP USB High Speed PHY1 |
||
Watchdog |
on-chip |
LPC Windowed Watchdog Timer2 |
Connections and IOs
The MIMXRT685 SoC has IOCON registers, which can be used to configure the functionality of a pin.
Name |
Function |
Usage |
|---|---|---|
PIO0_2 |
USART |
USART RX |
PIO0_1 |
USART |
USART TX |
PIO0_14 |
GPIO |
GREEN LED |
PIO0_26 |
GPIO |
BLUE LED |
PIO0_31 |
GPIO |
RED LED |
PIO1_1 |
GPIO |
SW1 |
PIO0_10 |
GPIO |
SW2 |
System Clock
The MIMXRT685-AUD-EVK is configured to use the OS Event timer as a source for the system clock.
Serial Port
The MIMXRT685 SoC has 8 FLEXCOMM interfaces for serial communication. One is configured as USART for the console and the remaining are not used.
Programming and Debugging
The mimxrt685_aud_evk board supports the runners and associated west commands listed below.
| flash | debug | attach | debugserver | reset | rtt | |
|---|---|---|---|---|---|---|
| jlink | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| linkserver | ✅ (default) | ✅ (default) | ✅ | ✅ |
Build and flash applications as usual (see Building an Application and Run an Application for more details).
Configuring a Debug Probe
A debug probe is used for both flashing and debugging the board. This board is configured by default to use the LPC-Link2.
Install the LinkServer Debug Host Tools and make sure they are in your search path. LinkServer works with the default CMSIS-DAP firmware included in the on-board debugger.
linkserver is the default runner for this board
west flash
west debug
Install the J-Link Debug Host Tools and make sure they are in your search path.
west flash -r jlink
west debug -r jlink
Configuring a Console
Connect a USB cable from your PC to the debug USB port, and use the serial terminal of your choice (minicom, putty, etc.) with the following settings:
Speed: 115200
Data: 8 bits
Parity: None
Stop bits: 1
Flashing
Here is an example for the Hello World application. This example uses the LinkServer Debug Host Tools as default.
# From the root of the zephyr repository
west build -b mimxrt685_aud_evk/mimxrt685s/cm33 samples/hello_world
west flash
Open a serial terminal, reset the board (press the RESET button), and you should see the following message in the terminal:
***** Booting Zephyr OS v4.x.x *****
Hello World! mimxrt685_aud_evk/mimxrt685s/cm33
Debugging
Here is an example for the Hello World application. This example uses the LinkServer Debug Host Tools as default.
# From the root of the zephyr repository
west build -b mimxrt685_aud_evk/mimxrt685s/cm33 samples/hello_world
west debug
Open a serial terminal, step through the application in your debugger, and you should see the following message in the terminal:
***** Booting Zephyr OS v4.x.x *****
Hello World! mimxrt685_aud_evk/mimxrt685s/cm33