Help
  • FAQ
    browse most common questions
  • Live Chat
    talk with our online service
  • Email
    contact your dedicated sales:
0

ESP32 Open-Source Oscilloscope Basics

Author : AIVON February 28, 2026

Content

 

Overview

The original project was developed at CERN. For a particular experiment they needed a large number of precision voltmeters, and because commercial instruments were expensive they decided to build their own.

 

CERN Multimeter Project

The design includes an eight-and-a-half digit meter intended for laboratory use. The circuit is not conceptually complex but emphasizes reliability features such as temperature protection.

Uses an ADC.

This is the core board.

Interior view; the large IC is an FPGA.

Final assembled unit.

F-ammeter.

 

Circuit Descriptions

1. Power circuit: The design uses two LM1117 LDO regulators in series. The first stage converts the input to a 5V output; the second stage converts 5V to 3.3V to supply the system modules.

2. Voltage detection circuit: One LM324 op amp is used in three roles to implement amplifier, attenuator, and buffer stages for different input voltage ranges. The op amp outputs are connected to a CD4052 analog switch for range selection.

3. Current detection circuit: A current-sensing amplifier such as MAX4080 is used with a gain of 20. Relay switching selects different sense resistors for range changes.

4. Resistance measurement circuit: Resistor measurement is implemented with voltage division and MOSFETs to select different scaling resistors.

52ca796c-652a-11ee-939d-92fbcf53809c.png

Range switching functionality is implemented as shown below.

Electronic switches used for range selection.

Classic transistor circuits and protection circuitry are used.

Resistance measurement stage.

Op amp buffering stage.

Another open hardware design with available documentation.

53dfb0d8-652a-11ee-939d-92fbcf53809c.png

 

Screenless Multimeter Reference

The following design is a screenless multimeter.

Schematic.

53fd30cc-652a-11ee-939d-92fbcf53809c.png

Typical connections.

5414e244-652a-11ee-939d-92fbcf53809c.png

PCB layout.

 

Reference Voltage and Signal Chain

The reference voltage (VREF) is important and often essential in high-precision signal chain applications. Standard signal chains typically include a data converter such as an ADC or a DAC. Many signal-chain applications are sensitive to gain or noise errors, so the reference output used by the converter is usually the most accurate voltage available to the data converter.

5426cae0-652a-11ee-939d-92fbcf53809c.png

Current mirror illustration.

543eb74a-652a-11ee-939d-92fbcf53809c.png

Example reference chip usage.

Reference placement and REF pin locations.

A 4-bit electronic switch is used for dynamic range switching; the source code implements this function. Relays can serve the same purpose.

IO connections are shown here.

54fd6a82-652a-11ee-939d-92fbcf53809c.png

Dual-channel switch.

 

Analog Switches

SGM3157 is a CMOS analog switch with low power consumption, low propagation delay, and low on-resistance. The analog and digital signal output ranges span from VCC to GND. The select input has overvoltage protection, allowing the select input to exceed VCC up to 7V without damaging the pin.

Functional diagram.

55146782-652a-11ee-939d-92fbcf53809c.png

 

ESP32-S2 DAC and Relay Control

S2 contains two 8-bit DAC channels that convert two digital signals into two analog voltage outputs; the channels operate independently. Each DAC consists of an internal resistor ladder and a buffer. The DAC reference voltage is VDD3P3_RTC_IO. The DAC outputs are used to control relays for range switching.

Further analysis of this section will be provided in a follow-up.

These locations use electronic switches to perform dynamic switching.

555d015e-652a-11ee-939d-92fbcf53809c.png

Current measurement stages convert current to voltage for ADC measurement.

 

MCP3421 ADC

The MCP3421 uses the I2C serial interface. It is a single-channel, high-precision ADC supporting up to 18-bit resolution with differential input. The on-chip precision reference is 2.048V. It operates from a single supply (2.7V to 5.5V).

The design uses an external ADC rather than relying on the microcontroller's internal ADC.

 

I2C on ESP32-S2

ESP32-S2 provides two hardware I2C controllers. The design shows the detailed I2C structure and typical read/write sequences. Firmware implements write-then-read operations for the external ADC.

559f41e0-652a-11ee-939d-92fbcf53809c.png 55b940fe-652a-11ee-939d-92fbcf53809c.png 55e5d06a-652a-11ee-939d-92fbcf53809c.png

Typical write-then-read I2C transaction diagram.

56415502-652a-11ee-939d-92fbcf53809c.png

 

Firmware and Source Code

The source repository includes code for IoT-related functions, but some modules were not located in the reviewed copy.

The provided firmware improves functionality for measurement and control.

56999faa-652a-11ee-939d-92fbcf53809c.png

Example: MCP3421 write function wrapper and range conversion functions are implemented in the codebase. Electronic switch pin mappings and trigger behavior (active-high) are documented.

56cb064e-652a-11ee-939d-92fbcf53809c.png 56d4bd74-652a-11ee-939d-92fbcf53809c.png

Control button handling and synchronous beep trigger are shown in the control flow diagrams.

572c0c82-652a-11ee-939d-92fbcf53809c.png


2026 AIVON.COM All Rights Reserved
Intellectual Property Rights | Terms of Service | Privacy Policy | Refund Policy