ESPlot: Open Source Software for Plotting Real-Time, High-Speed Signals For Embedded Systems

Confronted with the need of plotting high-speed (or high number of data) signals, typically for embedded systems applications and real-time, research engineers at the Saarland University, Germany have developed their own software called ESPlot.

ESPlot communicates with microcontroller boards over a custom serial protocol. In applications where the microcontroller is executing a real-time process, signals can be streamed to a computer in a synchronous way and data can be sent to the real-time process in an asynchronous way.

ESPlot software for plotting real time signal graph

ESPlot allows recording and plotting signals to screen by means of time plots, FFT plots and X/Y plots.

ESPlot software for plotting real time signal graph

ESPlot has been developed in Qt to support multi-platform and it is OpenGL hardware accelerated.

Since it has been designed to provide high performance, it needs systems with a multicore CPU with 4 GB RAM and a dedicated GPU supporting OpenGL 3.2.

Features of ESPlot

Here are the main features of ESPlot:

  • Streaming and recording of real-time signals
  • Time plots, XY-Plots, FFT plot
  • Able to send commands to the microcontroller
  • Communication over serial interfaces
  • Oscilloscope functionality, e.g. Trigger, Autoscale, Screenshot
  • Externally controllable record function
  • Export data to Matlab for further processing
  • Multimonitor-Support with fully screen capability
  • Fully personizable GUI
  • OpenGL-Acceleration
  • Multi-threading support
  • Platform independent (Library is written in C)
  • Supports Windows 10 64-bit, Linux 64-bit, Software can be compiled for ARM (e.g. Raspberry Pi)

Installing ESPLot

At present, ESPlot is available for Windows and Linux. The macOS version is under development.

For Linux, there is a tar xz file available. You can download it, extract it and run the executable file.

The software can actually interface with the majority of microcontrollers, but code for the classic Arduino boards is also available.

All of these stuff can be downloaded from its webpage:

The software is licensed under the AGPL 3.0. You can get the source code here.

In the end …

Since most of the other 3d-hardware accelerated plots are expensive and not always customizable, ESPlot would be a good choice for people in this field if it fulfills their need.

I am not involved in this embedded system and microcontrollers, so it wasn’t possible for me to test it out. But don’t let that discourage you from trying it yourself.

Similar Posts

    • Hi, I am one of the two developers of this software. We compiled it with support for Ubuntu 16.04 and on.. I currently run it on Kubuntu 20.04. What distro are you using? In the worst case, you can compile it for your own platform by using Qt.

      • ./ESPlot: error while loading shared libraries: cannot open shared object file: No such file or directory

        • Hi. ESPlot can work either over standard USB serial port or over a proprietary USB protocol that’s based on the the FTDI FT4222 chip. So, you need to install the drivers of this chip so that ESPlot can launch. You can find them at the producer’s website:

          Drivers are of course available also for Linux.
          Once you install it, the application should launch with no issues. I hope this helps.