SDP-K1 Quick Start (Mbed)

All the products described on this page include ESD (electrostatic discharge) sensitive devices. Electrostatic charges as high as 4000V readily accumulate on the human body or test equipment and can discharge without detection. Although the boards feature ESD protection circuitry, permanent damage may occur on devices subjected to high-energy electrostatic discharges. Therefore, proper ESD precautions are recommended to avoid performance degradation or loss of functionality. This includes removing static charge on external equipment, cables, or antennas before connecting to the device.

This guide describes how to use the EVAL-AD7124-4ASDZ or EVAL-AD7124-8ASDZ evaluation board with the SDP-K1 controller board using Mbed-based firmware. The ASDZ boards connect to the SDP-K1 via the on-board Arduino connectors.

Two firmware applications are available:

  • AD7124 Console Application – general-purpose console interface for channel configuration, sampling, and register access

  • AD7124 Temperature Measurement Demo – specialized firmware for temperature sensing with RTDs, thermocouples, and thermistors

Prerequisites

See Prerequisites for the full list.

Hardware:

Note

No external DC power supply is required. The SDP-K1 provides power to the evaluation board through the Arduino/SDP connector. Connect the VIO_ADJUST jumper on the SDP-K1 board to the 3.3 V position to drive SDP-K1 GPIOs at 3.3 V.

Software:

AD7124 Console Application

Overview

The AD7124 Console Application firmware provides a console-based user interface to interact with the AD7124-4 / AD7124-8. The firmware comprises three layers:

  1. Console Application Layer – user interface using ADI Console Libraries

  2. Device No-OS Layer – device-specific APIs for AD7124 register and data access

  3. Platform Drivers (Mbed-OS) – low-level peripheral access (GPIO, SPI, I2C) via Mbed-OS libraries

Hardware connections

The evaluation board is connected to the SDP-K1 through the Arduino connectors. The 120-pin SDP connector can also be used.

Note

Connect the VIO_ADJUST jumper on the SDP-K1 board to the 3.3 V position to drive SDP-K1 GPIOs at 3.3 V.

For AD7124 evaluation board connections and jumper settings, refer to the ASDZ hardware guide. The Arduino connector is used as the default interface type.

Analog inputs

The screw terminal connections on J1 and J2 of the evaluation board can be used to connect analog input signals.

Two configurations are provided:

Configuration A:

  • AIN0/AIN1 are used for channel 0, simple voltage measurement

Configuration B:

  • AIN2/AIN3 connect to the A2 thermocouple connector (channel 0, internal reference, bias voltage on AIN2)

  • AIN4/AIN5 are an RTD1000 measurement on channel 1 (excitation from AIN1, requires external RTD and reference resistor)

Firmware

Quick start

  1. Connect the evaluation board to the SDP-K1 via the Arduino connectors or 120-pin SDP connector.

  2. Connect the SDP-K1 to your computer over USB.

  3. Import the firmware code into the Mbed online compiler.

  4. Ensure the SDP-K1 is selected as the target board.

  5. Compile the code.

  6. Drag and drop the resulting binary (.BIN) to the SDP-K1 USB drive.

  7. Open a serial terminal (e.g., Tera Term) with the following settings:

    • Baud rate: 230400

    • Data bits: 8

    • Parity: None

    • Stop bits: 1

  8. Reset the controller board and connect.

Using the firmware

The console menu provides the following features:

  • Enable/disable individual ADC channels (0–15)

  • Connect analog input pins to individual channels

  • Configure device setups (0–7) and assign to individual channels

  • Display device and channel setup

  • Perform internal device calibration

  • Read die temperature (using internal temperature sensor)

  • Read/write device registers

Tip

The firmware is designed to be intuitive. Simply enter a number corresponding to the required command and follow the on-screen prompts.

AD7124 Temperature Measurement Demo

Overview

The temperature measurement firmware example supports multiple sensor types on the evaluation board with the SDP-K1 controller board. The firmware provides a console-based menu for selecting and configuring temperature sensors.

Important

This code has been developed and tested on the SDP-K1 controller board using the on-board Arduino/SDP-120 headers. The same code can be used with little modification on other Mbed-supported boards with Arduino header support (e.g., STM32-Discovery, STM32-Nucleo).

Hardware connections

Note

Connect the VIO_ADJUST jumper on the SDP-K1 board to the 3.3 V position to drive SDP-K1 GPIOs at 3.3 V.

For AD7124 evaluation board connections and jumper settings, refer to the ASDZ hardware guide. The Arduino connector is used as the default interface type.

Quick start

  1. Connect the evaluation board to the SDP-K1 via the Arduino connectors.

  2. Connect the SDP-K1 to your computer over USB.

  3. Import the firmware code from the precision-converters-firmware repository.

  4. Ensure the SDP-K1 is selected as the target.

  5. Compile and download the binary to the SDP-K1.

  6. Open a serial terminal configured for 230400 baud, 8N1.

  7. Reset the controller board and connect.

Supported sensors

The firmware supports the following sensor types:

  • Single or multiple 2/3/4-wire RTDs (default: PT100)

  • Single or multiple thermocouples (default: T-type)

  • Single or multiple NTC thermistors (default: 10K NTC)

Tip

In order to use analog inputs AIN4 and AIN5 on the legacy AD7124 eval board (with SDP-120 interface only), make sure to route the sensor connections directly through LK6 link instead of the physical screw-terminal connector. Make sure LK6 link is removed for the same purpose.

Multiple RTD configurations (2/3/4-wire)

Reference: CN0383

Multiple thermocouple configurations

Reference: CN0384

Multiple NTC thermistor configurations

Reference: CN0545

Calibrating 3-wire RTDs

The firmware provides an option to perform calibrated measurement on 3-wire RTD sensors. Two types of calibration options are available. Based on the selected calibration type, the sensors are first calibrated and then 3-wire RTD measurement is performed.

For more information on the calibration scheme, refer to the CN0383 design note.

Tip

Calibration is allowed only on multiple RTD sensors, not on a single RTD sensor.

ADC calibration (internal and system)

The firmware allows ADC calibration on the current sensor configuration. ADC calibration removes offset or gain errors on the input channels.

The updated device coefficients (gain and offset) are applied during sensor measurement. After calibration, the user must return to the previously selected demo mode to perform measurements. If a new demo mode is selected after calibration, the coefficients are reset and calibration must be performed again.

Internal ADC calibration is straightforward, but system calibration requires user inputs (typically after applying full-scale/zero-scale voltages on selected analog inputs).

Modifying the firmware

The firmware can be customized through the following files:

  • app_config.h – Select active device (AD7124-4 or AD7124-8) and interface type (Arduino or SDP-120)

  • ad7124_regs_configs.h – Define analog inputs, excitation sources, PGA, reference sources, and power mode for all sensor configurations

  • ad7124_regs_config_rtd.c / thermocouple.c / thermistor.c – AD7124 register configurations for each sensor type

  • ad7124_user_config.c – SPI parameters and init parameters for device power-up

  • ad7124_console_app.c – Sensor selection, ADC sampling, and temperature display functionality

  • ad7124_temperature_sensor.cpp – Wrapper for calling tempsensor library functions (NTC 10K, T-type thermocouple, PT100/PT1000 RTD)