Offload System Performance Metrics to a Dual-OLED Display

Free up your screen with LemonMonitor — an open source ATmega328PB display that streams real-time PC stats without the clutter.

Nick Bild
18 days agoDisplays
A dedicated computer performance monitor (📷: Yordan Yordanov)

If you’re serious about getting the most out of your computing hardware, then you need to monitor its performance closely. Keeping close watch over the utilization of processors and memory, as well as factors like CPU temperature, can help you fine-tune the design of your system and debug any issues that may be slowing it down. However, few techies really want these statistics constantly plastered on top of their displays. Screen real estate is always in short supply for power users.

An engineer named Yordan Yordanov has come up with a better solution for these individuals. Called LemonMonitor, this dedicated device sits unobtrusively on top of a monitor. From there, it continuously displays stats such as CPU and GPU utilization, current FPS rate, memory use, and temperature. All one has to do is snap the magnetic frame in place, and LemonMonitor is good to go.

Rather than relying on a Raspberry Pi or other single-board computer, Yordanov kept the hardware simple. The unit is powered by an ATmega328PB microcontroller that drives two 0.96-inch SSD1306 OLED displays over I2C. A CH340K USB-serial interface connects the device to a host PC, where a tiny Windows companion application gathers system statistics and streams them to the monitor in real time.

By moving the monitoring interface off the main display entirely, the system avoids performance-impacting overlays and visual clutter during gaming or heavy workloads. The Windows utility itself is under 5 MB and reports CPU and GPU temperatures, usage levels, RAM and VRAM consumption, and the frame rate of the active foreground application.

Working within the ATmega328PB’s 2 KB of RAM required clever engineering. Yordanov modified the standard Adafruit GFX and SSD1306 libraries, implementing a shared buffer technique that allows two screens to operate simultaneously without exhausting memory. The firmware runs standalone and communicates purely over USB, with no wireless connectivity required.

The project is fully open source, including firmware, PC software, and a developer-oriented LemonServer for integrating hardware metrics into other applications. While a custom PCB exists, the code also runs on common Arduino boards such as the UNO and Nano, lowering the barrier for hobbyists to experiment. If you’d like to try it out for yourself, check out the device firmware and PC application on GitHub.

Nick Bild
R&D, creativity, and building the next big thing you never knew you wanted are my specialties.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles