EMBO: An Embedded All-in-One Measurement Platform Transforming STM32 into an Oscilloscope, Logic Analyzer, Voltmeter, Counter, and PWM/Signal Generator

Are you interested in DIY electronics but deterred by the high prices of various instruments? I recently got into DIY and was considering purchasing an oscilloscope when I stumbled upon a treasure project—EMBO (EMBedded Oscilloscope). For just six dollars (USD), you can transform an STM32 into an oscilloscope, logic analyzer, voltmeter, counter, PWM/signal generator… it’s cost-effective and fun, and I must share it with everyone!

EMBO: An Embedded All-in-One Measurement Platform Transforming STM32 into an Oscilloscope, Logic Analyzer, Voltmeter, Counter, and PWM/Signal Generator

What is EMBO? EMBO, short for EMBedded Oscilloscope, is not just an oscilloscope; it is an embedded all-in-one measurement platform consisting of three main devices and three auxiliary devices:

  • • Main Devices:
    • • Oscilloscope (Scope)
    • • Logic Analyzer
    • • Digital Voltmeter
  • • Auxiliary Devices:
    • • Frequency Counter
    • • PWM Waveform Generator
    • • General Signal Generator

The PC software is written in C++/Qt and supports Windows, Linux, and macOS. The firmware provides HEX packages for STM32 series (F1, F3, L4), with L0 and G0 series also in experimental stages. It is open-source under the MIT license, allowing for extensive customization.

EMBO: An Embedded All-in-One Measurement Platform Transforming STM32 into an Oscilloscope, Logic Analyzer, Voltmeter, Counter, and PWM/Signal Generator

What Problems Does EMBO Solve? Common confusions in electronic DIY:

  • • Do I have to spend a lot of money to buy a high-end instrument?
  • • Do I need to buy separate oscilloscopes, logic analyzers, voltmeters… it’s too painful!
  • • Poor portability; carrying a bunch of tools for on-site debugging is cumbersome…

EMBO addresses multiple needs at once:

  1. 1. Cost and Space Saving: With STM32 and a few components, you can have a multifunctional “instrument panel” at a total cost that will make you smile.
  2. 2. High Portability: A small blue board (Blue Pill) or Nucleo-64 can be plugged into a computer for measurement.
  3. 3. Easy Expansion: Open-source firmware can be easily flashed, allowing for new features and interface optimizations without pressure.

In fact, EMBO is like giving you a small laboratory, allowing you to play with signal measurement and generation for minimal cost.

EMBO: An Embedded All-in-One Measurement Platform Transforming STM32 into an Oscilloscope, Logic Analyzer, Voltmeter, Counter, and PWM/Signal Generator

How to Install and Use?

  1. 1. Hardware Preparation
  • • One STM32F103C8 (Blue Pill), STM32F303RE (Nucleo-64), or STM32L412KB; a small board can be obtained for just a few dollars;
  • • A USB to serial (or ST-LINK) cable;
  • • If you want to use the signal generator, the MCU must have a DAC (like F303RE).
  • 2. Flashing the Firmware
    • • Download the latest HEX:
      st-flash write embo_firmware.hex 0x8000000

      (Alternatively, you can use STM32CubeProgrammer or OpenOCD.)

  • 3. Installing PC Software
    • • Windows: Double-click the installer;
    • • Linux/Mac: Extract and run <span>./EMBO</span>;
    • • The interface is based on Qt5, and all dependencies are packaged.
  • 4. Initial Connection
    • • Plug in the device and use a serial tool to check the port;
    • • Open the EMBO application, select the port on the left, and click “Connect”;
    • • The status bar at the top will display the MCU model, firmware version, communication latency, and uptime.
    1. 5. Experience Auxiliary Functions
    • Counter: Slow/Fast modes, capable of measuring signals up to MHz;
    • PWM Generator: 1–2 synchronized channels, adjustable frequency, duty cycle, and phase offset;
    • Signal Generator: Six modes including constant, sine, triangle, sawtooth, square wave, and noise, with amplitude/offset display.

    Pros and ConsPros:

    • • Budget-friendly: Hardware costs as low as a few dollars;
    • • Comprehensive functionality: Six devices included;
    • • Open-source and customizable: Both firmware and PC side can be developed further;
    • • Cross-platform: Compatible with Win/Linux/macOS;

    Cons:

    • • Limited hardware performance: Maximum sampling rate and memory depth do not match high-end desktop instruments;
    • • UART transmission bottleneck: High data volumes may result in delays of hundreds of ms;
    • • Experimental nature: Some MCU series features are still being refined;
    • • Learning curve: Requires knowledge of flashing firmware and using serial ports to get started.

    ConclusionOverall, EMBO provides electronic enthusiasts with a “universal key”: it can serve as an oscilloscope, logic analyzer, voltmeter, and can also handle signal generation, PWM control, and frequency counting. Don’t compare it to high-end desktop instruments costing thousands; its charm lies in being user-friendly and affordable. Whether you want to debug at home, in a factory, or a lab, or if you want to flash firmware and modify source code for customization, EMBO can meet your needs. If you want to save money while having functionality, give this open-source gem a try!

    Project Address: https://github.com/parezj/EMBO

    Leave a Comment