Close
0%
0%

Gnat-Stats Tiny OLED PC Performance Monitor

Arduino OLED PC Performance Monitor with Client software

Similar projects worth following
Gnat-Stats Tiny OLED Performance Monitor Display

Phat-Stats (TFT)  project page is here

GnatStats (OLED)  form an Arduino serial display. HardwareSerialMonitor is a PC serial client, both are written by Rupert Hirst and Colin Conway.

HardwareSerialMonitor Windows client reads the hardware statistics from the PC.

This data is forwarded over the hosts’ serial  port to an Arduino compatible micro processor. It is then, displayed using the GnatStats(OLED)  sketch.

This project, assumes you have a above average experience with Arduino, the IDE and the compatible boards available.

The HardwareSerialMonitor was designed for dedicated GPU's . Your mileage may vary with Integrated Graphics

To help with construction there are hook up guides, links below:

Phat-Stats ILI9341 TFT Display Hook up Guide

Gnat-Stats SSD1306 OLED Display Hook up Guide

Going Forward:

The project needs to be ported over to LibreHardwareMonitor , a fork of OpenHardwareMonitor  for future support, as this gets a lot more updates for new PC hardware. If anyone can help please get in touch, thanks.

http://tallmanlabs.com

http://runawaybrainz.blogspot.com/

https://github.com/koogar/HardwareSerialMonitor

https://github.com/koogar/Gnat-Stats

The above software/code is licensed under the following terms: 

--------------------------------------------------------------------------------------------

GPL v2

Gnat-Stats, Phat-Stats & Hardware Serial Monitor Copyright (C) 2016 Colin Conway, Rupert Hirst and contributors

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; If not, see http://www.gnu.org/licenses/.

HardwareSerialMonitor only was inspired by Psyrax's "SerialSender". Psyrax is given attribution and thanks, by being an honorary member of the project.

GnatStats_ATSAMD_QTPY_OLED_V1.6.zip

Version 1.6 : ATSAMD21 SH1106 OLED Support (experimental)

x-zip-compressed - 215.64 kB - 09/05/2021 at 20:27

Download

GnatStats_ATSAMD_QTPY_OLED_V1.5.zip

Version 1.5 : Add option to manually Change the name of the CPU/GPU + GPU RAM size. : Add option to change CPU/GPU name length eg: for newer Nvidia drivers : Change Baud rate to 115200 : Fix Seeeduino board file link

x-zip-compressed - 225.84 kB - 08/22/2021 at 17:23

Download

GnatStats_ProMicro_OLED_V1.4.zip

ProMicro / Leonardo 32u4 SSD1306 & SH1106 OLED Version 1.4 : Add Some HardwareSerialMonitor v1.3 Features Add: Pinout Reference and link to Hookup Guide

x-zip-compressed - 29.50 kB - 08/22/2021 at 17:23

Download

GnatStats_ProMicro_OLED_V1.33.zip

Version 1.33 : Add i2c Address change option Add Rotate Screen option Add NeoPixel Global Brightness

x-zip-compressed - 14.30 kB - 08/22/2021 at 17:23

Download

x-zip-compressed - 1.38 MB - 08/22/2021 at 17:23

Download

View all 7 files

  • 1 × Arduino Leonardo / ProMicro / ATSAMD21 / ESP8266 / ESP32 / BluePill
  • 1 × i2C SSD1306 or i2C SH1106 OLED Display (SH1106 is not Supported on the ATSAMD)

View all 5 project logs

  • 1
    Step 1
    • Gnatstats Tiny OLED PC performance monitor  &  HardwareSerialMonitor  Windows Client  

    by Rupert Hirst and Colin Conway

    This project, assumes you have above average experience with Arduino, the IDE, compatible boards available and other related hardware.

    ___________________________

    Project principles:

    The HardwareSerialMonitor application  detects the sensors of most modern PC graphics, CPU and motherboards whilst, also pooling windows hardware stats.

    This data is then sent over a serial com port to an Arduino Microcontroller running the Gnat-Stats Sketch and displayed on the OLED/TFT display.

    ___________________________

    Compatible boards:

    •    ProMicro   (Atmel ATMega 32u4) (Gnat-Stats)   Note: supports Neopixels
    •    QT-PY / XIAO Atmel ATSAMD21  (Phat-Stats)    Note: supports Neopixels

    ___________________________

    Compatible Screens:

    • OLED :  SSD1306 (i2c) or SH1106 (i2c)  128x64 Pixels 

    Note: SH1106 are usually  screens over 0.96" but not limited to. The (GND/ VCC) pin out order is different, although, more recent versions have the same pin order as the SSD1306 (VCC/GND), buyer beware!!!

    Library and MCU core links are included within the Arduino sketch.

    ___________________________

    Notes:

    •               Plug the Arduino into a dedicated USB Port, try avoid using a USB hub. Timings can be critical to avoid garbled or corrupted screen info
    •               HardwareSerialMonitor was designed for dedicated GPU's . Your mileage will vary with Integrated Graphics

    ___________________________

    Guides:

    technopat.net: Making an External Temperature Gauge

    technopat.net: Additional Tiny Performance Monitor for a Computer

    Technopat YouTube (Turkish)

    TallmanLabs: Gnat-Stats SSD1306 OLED Display Hook up Guide

    ___________________________

    Limitations:

                         My coding ability...     eg: There is no CPU fan support, the CPU fan is a motherboard fan. It requires a motherboard chip to be detected, and the correct fan sensor.

    I can only test the hardware I own. Overall it has worked with everything I have tried.

    HardwareSerialMonitor and the way some things have to be detected.  See (4) as it relies on the "OpenHardwareMonitorLib.dll"

    OpenHardwareMonitor updates are few and far between. 

    Going forward:

                               Some PC hardware support for certain CPU / GPU's is lacking, particularly certain Ryzen CPU's.

    HardwareSerialMonitor needs to be ported from the OpenHardwareMonitorLib.dll to the LibreHardwareMonitorLib.dll (open source) as this has more features such as network /ethernet and receives updates on a more frequent basis.

    My time is limited, if you can help with this please get in touch, thanks.

View all instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates