max32657evkit
Overview
The MAX32657 microcontroller (MCU) is an advanced system-on-chip (SoC) featuring an Arm® Cortex®-M33 core with single-precision floating point unit (FPU) with digital signal processing (DSP) instructions, large flash and SRAM memories, and the latest generation Bluetooth® 5.4 Low Energy (LE) radio. The nano-power modes increase battery life substantially.
The MAX32657 is qualified to operate at a temperature range of -20°C to +85°C. Bluetooth 5.4 LE radio supports Mesh, long-range (coded), and high-throughput modes. A cryptographic toolbox (CTB) provides advanced root of trust security features, including an Advanced Encryption Standard (AES) Engine, TRNG, and secure boot. TrustZone is also included in the M33 Core. Many high-speed interfaces are supported on the device, including multiple SPI, UART, and I3C/I2C serial interfaces. All interfaces support efficient DMA-driven transfers between peripheral and memory.
The Zephyr port is running on the MAX32657 MCU.
Hardware
MAX32657 MCU:
Arm Cortex-M33 CPU with TrustZone® and FPU
1.2V to 1.6V Input Range for Integrated Boost DC-DC Converter
50MHz Low Power Oscillator
External Crystal Support
32MHz required for BLE
1MB Internal Flash with ECC
256kB Internal SRAM
8kB Cache
32.768kHz RTC external crystal
Typical Electrical Characteristics
ACTIVE: 50μA/MHz Arm Cortex-M33 Running Coremark (50MHz)
Bluetooth 5.4 LE Radio
Rx Sensitivity: -96dBm; Tx Power: +4.5dBm
15mW Tx Power at 0dBm at 1.5Vin
14mW Rx Power at 1.5Vin
Single-Ended Antenna Connection (50Ω)
Supports 802.15.4, and LE Audio
High-Throughput (2Mbps) Mode
Long-Range (125kbps and 500kbps) Modes
Optimal Peripheral Mix Provides Platform Scalability
2 DMA Controllers (Secure and non-Secure)
One SPI Controller/Peripheral
One I2C/I3C
1 Low-Power UART (LPUART)
Six 32-Bit Low Power Timers with PWM
14 Configurable GPIO with Internal Pullup/Pulldown Resistors
Cryptographic Tool Box (CTB) for IP/Data Security
True Random Number Generator (TRNG)
AES-128/192/256
Unique ID
Secure Boot ROM
Supported Features
The max32657evkit
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.
max32657evkit/max32657
target
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M33 CPU1 |
|
Clock control |
on-chip |
MAX32 Global Control1 |
|
on-chip |
|||
Flash controller |
on-chip |
MAX32XXX flash controller1 |
|
GPIO & Headers |
on-chip |
MAX32 GPIO1 |
|
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
MMU / MPU |
on-chip |
ARMv8-M MPU (Memory Protection Unit)1 |
|
MTD |
on-chip |
Flash node1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory1 |
||
Pin control |
on-chip |
MAX32 Pin Controller1 |
|
RNG |
on-chip |
ADI MAX32XXX TRNG1 |
|
Serial controller |
on-chip |
MAX32 UART1 |
|
SRAM |
on-chip |
Generic on-chip SRAM5 |
|
Timer |
on-chip |
ARMv8-M System Tick1 |
Connections and IOs
Name |
Name |
Settings |
Description |
||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
JP1 |
VLDO SEL |
|
|
||||||||||||||
JP2 |
VIN SEL |
|
|
||||||||||||||
JP3 |
VIN EN |
|
|
||||||||||||||
JP4 |
VDD12 EN |
|
|
||||||||||||||
JP5 |
VTREF EN |
|
|
||||||||||||||
JP6 |
OBD VBUS EN |
|
|
||||||||||||||
J7 |
VSYS EN |
|
|
||||||||||||||
JP7 |
ACC VS EN |
|
|
||||||||||||||
JP8 |
ACC VDD EN |
|
|
||||||||||||||
JP9 |
ACC I2C EN |
|
|
||||||||||||||
JP10 |
ACC I2C EN |
|
|
||||||||||||||
JP11 |
BYP MAG SW |
|
|
||||||||||||||
JP12 |
LOCK RSTN |
|
|
||||||||||||||
JP13 |
LATCH CTRL |
|
|
||||||||||||||
JP14 |
AFE EN |
|
|
||||||||||||||
JP15 |
AFE SPI EN |
|
|
||||||||||||||
JP16 |
I2C PU EN |
|
|
||||||||||||||
JP17 |
I2C PU EN |
|
|
||||||||||||||
JP18 |
OBD SWD EN |
|
|
||||||||||||||
JP19 |
OBD VCOM EN |
|
|
||||||||||||||
JP20 |
VCOM EN |
|
|
||||||||||||||
JP21 |
VCOM EN |
|
|
||||||||||||||
JP22 |
EXT SWD EN |
|
|
||||||||||||||
JP23 |
EXT SWD EN |
|
|
Zephyr board options
The MAX32657 microcontroller (MCU) is an advanced system-on-chip (SoC) featuring an ARM Cortex-M33 architecture that provides Trustzone technology which allow define secure and non-secure application.
The BOARD options are summarized below:
BOARD |
Description |
---|---|
max32657evkit/max32657 |
For building Trust Zone Disabled firmware |
BOARD: max32657evkit/max32657
Build the zephyr app for max32657evkit/max32657
board will generate secure firmware
for zephyr. In this configuration 960KB of flash is used to store the code and 64KB
is used for storage section. In this mode tf-m is off and secure mode flag is on
:kconfig:option:CONFIG_TRUSTED_EXECUTION_SECURE=y
and
:kconfig:option:CONFIG_BUILD_WITH_TFM=n
Name |
Address[Size] |
Comment |
---|---|---|
slot0 |
0x1000000[960k] |
Secure zephyr image |
storage |
0x10f0000[64k] |
File system, persistent storage |
Here are the instructions to build zephyr with a secure configuration, using Blinky sample:
# From the root of the zephyr repository
west build -b max32657evkit/max32657 samples/basic/blinky/
Programming and Debugging
The max32657evkit
board supports the runners and associated west commands listed below.
flash | debug | rtt | debugserver | attach | |
---|---|---|---|---|---|
jlink | ✅ | ✅ | ✅ | ✅ | ✅ |
openocd | ✅ (default) | ✅ (default) | ✅ | ✅ | ✅ |
Flashing
Here is an example for the Hello World application. This example uses the J-Link Debug Host Tools as default.
# From the root of the zephyr repository
west build -b max32657evkit/max32657 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 build v4.1.0 *****
Hello World! max32657evkit/max32657
Debugging
Here is an example for the Hello World application. This example uses the J-Link Debug Host Tools as default.
# From the root of the zephyr repository
west build -b max32657evkit/max32657 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 build v4.1.0 *****
Hello World! max32657evkit/max32657