both

ESP-DAQ

Embedded data acquisition, one USB cable

About ESP-DAQ

A minimal ESP32-S3 USB serial DAQ device for motor validation test stations. Supports 10 analog channels, digital I/O, PWM, frequency/duty measurement, pulse counting, quadrature encoder, and RGB LED control via a text-based command protocol with JSON responses.

The Challenge

Motor validation test stations need flexible data acquisition that's fast to set up and doesn't require expensive proprietary hardware. National Instruments DAQ systems are powerful but overpriced for simple motor testing. USB serial devices exist but lack the channel count and measurement variety needed.

Our Solution

We designed a custom ESP32-S3 firmware that turns a $10 dev board into a 10-channel DAQ with analog input, digital I/O, PWM output, frequency measurement, pulse counting, and quadrature encoder support. A simple text command protocol with JSON responses makes integration trivial from any language.

The Results

The device replaces thousands of dollars of proprietary DAQ equipment with a single USB cable and a $10 microcontroller. The text protocol means any language with serial port access can control it — the included Python viewer is just one example.

Key Features

10-Channel Analog Input

Read 10 analog channels with per-channel calibration for accurate voltage measurement.

Text Command Protocol

Human-readable commands with JSON responses. Debuggable with any serial terminal.

PWM Generation

Generate PWM signals from 1 Hz to 1 MHz for motor control and testing.

Quadrature Encoder

Hardware quadrature decoder for precise motor position and velocity measurement.

Screenshots

Screenshots coming soon

Tech Stack

CESP-IDF v5ESP32-S3USB CDCCMakePython
Back to Projects
© 2026 RiverRoot Studios