Close
0%
0%

Gnat-Stats & Phat-Stats PC Performance Display

Arduino OLED/TFT PC Performance Monitor with Client software

Similar projects worth following
Gnat-Stats Tiny OLED & Phat-Stats TFT PC Performance Monitor Display

GnatStats (OLED) & PhatStats (TFT) 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) or PhatStats(TFT) 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 was inspired by Psyrax's "SerialSender". Psyrax is given attribution and thanks, by being an honorary member of the project.

x-zip-compressed - 1.38 MB - 04/30/2021 at 15:39

Download

x-zip-compressed - 1.38 MB - 04/30/2021 at 15:39

Download

PhatStats_TFT_ATSAMD_QT-PY_V2.0.7.zip

V2.0.7 Fix CPU & GPU Overclock gains "-+" bug

x-zip-compressed - 232.08 kB - 07/21/2021 at 13:50

Download

PhatStats_TFT_ESP32_BT_V2.0.7.zip

V2.0.7 Fix: CPU & GPU Overclock gains "-+" bug Still to Fix : Dual Event (USB and BT) needs fixing

x-zip-compressed - 154.66 kB - 07/21/2021 at 13:50

Download

PhatStats_TFT_STM32F1_V1.6.5.9.2.zip

Fix CPU & GPU Overclock gains "-+" bug

x-zip-compressed - 795.31 kB - 07/21/2021 at 13:50

Download

View all 9 files

  • 1 × Arduino Leonardo/ ProMicro / STM32F1 / ATSAMD21 / ESP32
  • 1 × SSD1306 0.96" i2C OLED or ILI9341 2.2, 2.4, 2.8, 3.2" TFT SPi Display
  • 5 × Arduino Experience

  • Phat-Stats ILI9341 2.8" TFT Enclosure Prototype

    Rupert Hirst2 days ago 0 comments

    Phat-Stats  ILI9341 2.8" TFT Enclosure Prototype

    Rear view  MCU "sight glass"

     Bottom USB C input, so the cable can lay in any position.

  • Gnat-Stats Concept SSD1306 OLED Enclosure

    Rupert Hirst07/03/2021 at 22:35 0 comments

  • Phat-Stats Slim USB Concept Case

    Rupert Hirst06/16/2021 at 15:02 0 comments

  • Phat-Tacho Bluetooth Concept Case with new DisplayStyle

    Rupert Hirst05/27/2021 at 23:04 1 comment

    Phat-Tacho Bluetooth Concept Case with new DisplayStyle

  • Gnat-Stats (OLED) & Phat-Stats (TFT) Hook Up Guides

    Rupert Hirst03/11/2021 at 23:32 0 comments

    *Hook up guides for Gnat-Stats(SSD1306 OLED) and Phat-Stats(ILI9341 TFT) 

    *for supported Micro Controllers.

    Phat-Stats Hook Up Guide
    Phat-Stats Hook Up Guide
    Gnat-Stats Hook Up Guide
    Gnat-Stats Hook Up Guide

  • Phat-Stats ​TFT V1.6.3 ATSAMD21

    Rupert Hirst01/06/2021 at 17:23 1 comment

    Phat-Stats TFT V1.6.3 ATSAMD21

    (requires HardwareSerialMonitor 1.3 Upwards)

    Minimize blinking on screen data value changes and screen refresh.

     CPU Turbo or GPU Boost Mode frequency gains. (eg: +895MHz) or gain %

    Show when CPU or GPU is Throttling (Hit Thermal Junction Max temp)

    Show when CPU or GPU Turbo or Boost Mode is active.

    Add rotary encoder for PWM screen brightness.

  • Gnat-Stats HardwareSerialMonitor V1.3 update preview

    Rupert Hirst12/07/2020 at 18:42 0 comments

    Gnat-Stats HardwareSerialMonitor V1.3 update preview

    Additional GPU Features:

    Fan Speed Load%, Fan Speed RPM, Total Memory, Used Memory, Current Power Consumption in Watts (Nvidia)

    Additional system RAM features: 

    Total Memory, Available Memory, Memory Load.

    Picture showing the old and new GPU features.

    Currently Gnat-Stats HardwareSerialMonitor is still using the OpenHardwareMonitor source code, which is unfortunately outdated.

    New hardware support can only be leveraged using the LibreHardwareMonitor Source Code going forward.

    My time is limited, If anyone can help the transition please get in touch.

    Thanks

    Koogar

  • Run on Startup Win10

    Rupert Hirst06/15/2020 at 22:21 0 comments

    Due to the Windows 10 not allowing programs to run on startup as admin, here is a workaround script.
    -----------------------------------------------------------------------------------------------------------------------

    1)  Right-click on the HardwareSerialMonitor.exe , go to properties, then compatibility and check "Run as Administrator"

    2)  Create the VBScript using a text editor (I used Notepad)

      Set WshShell = CreateObject("WScript.Shell" ) 
      WshShell.Run chr(34) & "C:\Program Files (x86)\HardwareSerialMonitor\HardwareSerialMonitor.exe" & Chr(34), 0 
      Set WshShell = Nothing
       

    (The above path is an example, edit this to where your HardwareSerialMonitor.exe path is located)

    Save the script as "HardwareSerialMonitor.vbs" (no quotes)

    Note: Make sure to save it as a .vbs not .txt
          

    3)  Now place the HardwareSerialMonitor.vbs in the HardwareSerialMonitor folder:

    4)  Goto the Windows startup folder

    %AppData%\Microsoft\Windows\Start Menu\Programs\Startup, alternatively access it by Win+R ⇒ shell:startup ⇒ Enter

    Create a shortcut to the .vbs script above by right clicking then "New" ⇒ "Shortcut" ⇒ "Browse" for the "HardwareSerialMonitor.vbs" Script and select it.

    HardwareSerialMonitor Should now run on startup
    -----------------------------------------------------------------------------------------------------------------------

  • Gnat-Tacho PC HardwareTachometer

    Rupert Hirst10/16/2018 at 11:26 1 comment

    The Gnat-Tacho is just an example of what you could make with a bit of imagination.

    Using a NeoPixel Ring (16)  and the NeopixelRingGauges.ino to form a CPU/GPU Bargraph.

    Custom overlay

View all 9 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 GnatStats 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
    •     BluePill   Ti STM32F103C8   (Phat-Stats)   Note: Does not support Neopixels!!!
    •     ESP32 LoLin32 / Lite / D32  (Phat-Stats)   Note: supports Neopixels

           ATMega 32u4 boards are more suited to (OLED) GnatStats .  They do not have the required memory for (TFT) PhatStats.

    ___________________________

    Compatible Screens:

    • OLED :  SSD1306 (i2c) or SH1106 (i2c)  128x64 Pixels  (SH1106 is not supported on the ATSAMD21 due to library restrictions)

    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!!!

    •  TFT    :  Red PCB ILI9341 (SPi) 320x240 Pixels 

    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: Phat-Stats ILI9341 TFT Display Hook up Guide

    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

obivankenobi7o7 wrote 2 days ago point

Hi, I use Xiao with ILI9341. I upload all be required library. But It gives an error even though the whole library is installed. I could not solve. Please help me

Error code this: 

                                       collect2.exe: error: ld returned 1 exit status

                                       exit status 1
                                       Error compiling for board Seeeduino XIAO.

  Are you sure? yes | no

Rupert Hirst wrote 2 days ago point

Does the blink example sketch work?

  Are you sure? yes | no

obivankenobi7o7 wrote a day ago point

I solved problem with removing all libraries and change that new one. Thank you for attention)  last question- how to i change ram icon with corsair ram?

  Are you sure? yes | no

Rupert Hirst wrote 20 hours ago point

you will have to make your own ram logo

  Are you sure? yes | no

obivankenobi7o7 wrote 19 hours ago point

Okey, thanks you

  Are you sure? yes | no

rijeve3877 wrote 07/11/2021 at 20:15 point

Hi man, is there any 3d printable file of case and enclosure for the project and models also the ones that you put the images in the gallery?

Thanks in advance

  Are you sure? yes | no

Rupert Hirst wrote 07/12/2021 at 17:19 point

Not yet but i will included them soon

  Are you sure? yes | no

Agustin wrote 07/10/2021 at 09:48 point

Hi all, love this project! made my gnat-stats with a ProMicro and its amazing, i have rainmeter skin with all CPU processes and I discovered a process called WmiPvrSE.exe with constantly spikes every 3 seconds, this happens only when auto-mode is select, doesnt happen in manual mode, i changued line 91 in form.cs from:

if (isAttached)

to

if ((isAttached) && (isConnected != true)) 

Seems to be fine now, but i dont know if im going to break other feature like my first attempt where i uncommented line 91 and 92 with the result of Usb_DeviceAdded broken haha, my knowledge is limited in coding

  Are you sure? yes | no

Colin Russell-Conway wrote 07/15/2021 at 11:04 point

WmiPvrSE is part of the windows 10 OS that checks windows management instrumentation.  From what I can recall (its been a while since I put that together and it kind of grew organically) in auto mode it checks if the usb device is attached periodically to make sure it disconnects gracefully.  I'll have to go through the code again when I've time and figure that one out.  

  Are you sure? yes | no

Lê Công Mạnh wrote 07/09/2021 at 05:11 point

Hi , everything is working fine now , but i want to change the yellow in the ram frame to red . Where do I have to fix it?

  Are you sure? yes | no

Rupert Hirst wrote 07/09/2021 at 13:28 point

 tft.drawBitmap(16, 268, Trident2_RAM_BMP, 100, 40, ILI9341_YELLOW);

to

 tft.drawBitmap(16, 268, Trident2_RAM_BMP, 100, 40, ILI9341_RED);

  Are you sure? yes | no

Lê Công Mạnh wrote 07/10/2021 at 06:56 point

Wou :O Thank you, I changed it and it's beautiful <3

  Are you sure? yes | no

Lê Công Mạnh wrote 07/05/2021 at 08:30 point

Hi I got an error hope you can help.
I use PhatStats_TFT_ATSAMD_QT-PY the screen is working properly but the GPU parameters part is not working and missing
Fan Load
Fan Speed
Power
Hope you help me <3

  Are you sure? yes | no

Rupert Hirst wrote 07/05/2021 at 23:55 point

so little info specs?

  Are you sure? yes | no

Lê Công Mạnh wrote 07/06/2021 at 01:39 point

Yes

  Are you sure? yes | no

Lê Công Mạnh wrote 07/06/2021 at 01:44 point

I want to fix this error, please help, here is the picture: https://imgur.com/a/ZHoRRah

  Are you sure? yes | no

Rupert Hirst wrote 07/06/2021 at 22:09 point

/* Remove Specific GPU items Power/Fan RPM/Fan% */
#define enable_gpuPowerStats // Nvidia Specific???
#define enable_gpuFanStats%
#define enable_gpuFanStatsRPM

  Are you sure? yes | no

Lê Công Mạnh wrote 07/07/2021 at 06:53 point

Thank you it worked :D
It works fine on desktop but when used with laptop some functions don't work. Do you have a solution?

  Are you sure? yes | no

bryant.eadon wrote 07/04/2021 at 16:41 point

Is there a use case for this in automobiles ?  Tapping into the ODBII interface, or CAN bus would be super interesting to build this into a generic "monitor this physical thing with a configurable HUD".      Given the similarities now with computers and Cars - this could really open up the doors to an interesting set of features.

  Are you sure? yes | no

wivope7038 wrote 07/01/2021 at 03:06 point

suggestion: can we have a web server on the for example ESP32 version to access all the PC information on it maybe even remote out of the house if someone port forwarding the IP address or maybe just checking the temps and PC load from another room in the house.

  Are you sure? yes | no

Rupert Hirst wrote 07/01/2021 at 21:21 point

While I have share your thoughts, it is beyond my ability.

  Are you sure? yes | no

Rupert Hirst wrote 07/01/2021 at 21:22 point

Maybe someone would be willing to work on it?

Or try this https://github.com/juanillo62gm/Wi-Fi-Hardware-Monitor

  Are you sure? yes | no

Colin Russell-Conway wrote 07/15/2021 at 11:11 point

You'd need something with wifi or other networking and USB-Serial, so technically an ESP32 could work, but instead of writing to a screen you could alter the Arduino sketch to update a wepage or write it back to any of the hundreds of IoT home automation apps like ESPHome.  There are loads of tutorials online for those.

  Are you sure? yes | no

wivope7038 wrote 06/26/2021 at 18:44 point

Sorry there was no replay bottom so I send new one here

you asked "Whats the screen brightness like when you connect it straight to 3.3v?"

It's great when connected straight to 3.3v but when I connect it to the pin 4 it's very dim

No I don't use any resistor

  Are you sure? yes | no

Rupert Hirst wrote 06/26/2021 at 20:21 point

Yes replying on Hackaday is awful !!!

  ESP32 analogueWrite Function
  https://github.com/ERROPiX/ESP32_AnalogWrite

you the above library installed?

because you can not set brightness without it!!!

  Are you sure? yes | no

wivope7038 wrote 06/26/2021 at 21:23 point

Thanks man it worked, I had two ESP32 AnalogWrite library (ESP32_AnalogWrite)and(ESP32_ESP32S2_AnalogWrite) after I delete both of them and add the one you send I was able to change the brightness and it was bright enough.

Thanks again

  Are you sure? yes | no

wivope7038 wrote 06/24/2021 at 11:11 point

Hey man, There is no "TML_ErriezRotaryFullStep.h" file in PhatStats_TFT_ESP32_BT_Experimental_V2.0.2.2 but there is "#include <TML_ErriezRotaryFullStep.h>" in the code.

also I decommented the Encoder_PWM2 but still I can't change the brightness with encoder and the screen brightness is too low almost unreadable.
How can I be able to change info which are shown on the screen manually? like the CPU and GPU logo or other texts? because I'm having AMD FX 6300 and R9 290 but some informations are missing.
Thanks for the great hack

  Are you sure? yes | no

Rupert Hirst wrote 06/24/2021 at 15:39 point

Taken from the documentation in the code!!!

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

  Rotary encoder
  https://github.com/koogar/ErriezRotaryEncoderFullStep

you can not change the brightness on the encoder without it OFC.

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

/* Uncomment your CPU,*/
//#define AMD_CPU
#define INTEL_CPU
/* Uncomment your GPU,*/
#define NVIDIA_GRAPHICS
//#define AMD_GRAPHICS

//>>>>>>>>>>>>>>>>>>>>>>>>>>>

/* Manually name the  CPU,*/

//#define Manual_cpuName
String set_CPUname = "xxxxxxxx";

/* Manually name the GPU,*/
//#define Manual_gpuName
String set_GPUname = "xxxxxxxx";

/* Manually set GPU ram total,*/
//#define Manual_gpuRam
String set_GPUram = "xx";

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

/* Use the Rotary Encoder for variable PWM control, connected direct to the MCU PIN,*/
/* If commented the screen brightness will default to the fixed level below,*/


//#define Encoder_PWM2 // Use rotary encoder for PWM screen brightness control  3.3v

/*TFT Start Up Brightness*/
volatile int brightness_count = 130; // Start Up Brightness 0 - 255

  Are you sure? yes | no

wivope7038 wrote 06/25/2021 at 22:33 point

Sorry I haven't read it before

Thanks a lot, all of them solved

but three more question :

1. I set the brightness value to 1000 is it okay? because the screen was so dim and still kinda is.

"

  if (brightness_count > 1000) {
    brightness_count   = 1000;

"

2. Can I connect two screen? like one ILI9341 and one SSD1306

If not have I will be able to connect one pro micro and one ESP32 to the same PC and drive the at the same time? cause on Hardware Serial Monitor I couldn't find such an option.

3. I saw Battery Monitor Voltage divider on Phat-Stats ILI9341 TFT Display Hook up Guide, Is that for monitoring with this version of code? cause I didn't find anything related to that in the code.

  Are you sure? yes | no

Rupert Hirst wrote 06/26/2021 at 18:00 point

1. no only 0-255

volatile int brightness_count = 130; // Start Up Brightness 0 - 255

Whats the screen brightness like when you connect it straight to 3.3v?

if its too dim there is some issue with the screen anything over 200 is very bright on my screens. Are you using a resistor on the backlight?

2. No

3. its on version 2..0.6

  Are you sure? yes | no

yusuf bayram wrote 06/21/2021 at 02:13 point

I use ILI9341 and XIAO with Neopixel ring. Everything is working well but Neopixel lights randomly and only red. I tried both 220 and 330ohm resistor between A6 and Din connectors and did not work. Is ist only suppouse to be 300ohm or I am doing something wrong? In the meantime I don't use Rotary.

  Are you sure? yes | no

Rupert Hirst wrote 06/22/2021 at 12:24 point

#define enableNeopixelGauges //

All the resistor does is protect the data pin even 100 ohms would be fine

  Are you sure? yes | no

Colin Russell-Conway wrote 07/15/2021 at 11:16 point

Yeah I'd go with a 100 ohms, but the XIAO may not have enough power for a neopixel ring, try dropping the neopixel brightness in the arduino sketch.  

  Are you sure? yes | no

estoyarto wrote 05/15/2021 at 17:52 point

Hi, great project ! Its possible to use https://ipc2u.com/catalog/vl050-8048nt-c01  , from and android of things kit?

  Are you sure? yes | no

Rupert Hirst wrote 05/15/2021 at 19:52 point

No, it is not even remotely similar.

  Are you sure? yes | no

estoyarto wrote 05/16/2021 at 00:14 point

Thanks Rupert!

  Are you sure? yes | no

phamanhduc1011 wrote 05/11/2021 at 12:57 point

i tried phat stats, i modified the code to fit with my set up (no encoder, no neopixel) and the upload was successful. However, it keep showing NO COM DATA. I wonder if anythings could go wrong?

  Are you sure? yes | no

Rupert Hirst wrote 05/11/2021 at 14:57 point

Thats not much information

  Are you sure? yes | no

Ozkan wrote 05/05/2021 at 14:45 point

Hi, Can I turn off Auto Mode on HardwareSerialMonitor? Can I get it to start by selecting the port I specified?

For example; Let's start by selecting the COM7 port.

https://prntscr.com/12j1okc

  Are you sure? yes | no

Rupert Hirst wrote 05/05/2021 at 17:51 point

It does not make much of a difference anyway as it writes the last port to a config file in the folder. When HardwareSerialMonitor starts it uses this information.

So it will always start use the last port, except for BT where you have to manually click the port again. 

When it is in Automatic Mode the icon will be green.

Select the port you want to start, then click Automatic Mode at the top.

You will see a tick mark and the port named at the top in the Automatic Mode section.

  Are you sure? yes | no

stefan.schnitzer wrote 05/04/2021 at 09:30 point

Very nice project, I built a version for my PC. 

https://img-9gag-fun.9cache.com/photo/axM3eWK_460swp.webp

  Are you sure? yes | no

Rupert Hirst wrote 05/05/2021 at 14:28 point

Thanks :) 

nice 3d printed enclosure

  Are you sure? yes | no

yusuf bayram wrote 04/27/2021 at 21:43 point

Hello, I tried to upload the project to Seeeduino XIAO and It shows me error "No device found on COM*" Looks like i did everything correct as I see.

https://imgur.com/a/JuBgIfB

  Are you sure? yes | no

Rupert Hirst wrote 04/27/2021 at 23:26 point

Do not use a USB hub, try a different usb port.

I have had problems with some USB3 ports when uploading

  Are you sure? yes | no

yusuf bayram wrote 04/28/2021 at 00:05 point

I don't use USB hub and tried all USBs on my pc, Didn't change anything.

  Are you sure? yes | no

Rupert Hirst wrote 04/28/2021 at 02:05 point

well i guess you messed up the flash.

Enter Bootloader Mode

Sometimes the Seeeduino XIAO port may disappear when user programming process fails. we can solve this problem by the following operation:

Connect the Seeeduino XIAO to your computer.
Use tweezers or short lines to short the RST pins in the diagram twice.
The orange LED lights flicker on and light up.
At this point, the chip enters Bootloader mode and the burn port appears again. Because the samd21 chip has two partitions, one is the Bootloader and the other is the user program. The product will burn a bootloader code in the system memory when it leaves the factory. We can switch modes by performing the above steps.

https://wiki.seeedstudio.com/Seeeduino-XIAO/

  Are you sure? yes | no

yusuf bayram wrote 04/29/2021 at 00:34 point

Those steps worked. Thank you.

  Are you sure? yes | no

Ozkan wrote 04/21/2021 at 19:42 point

hi, Everything works fine in the 1st picture, but when I enter the game, it is like the 2nd picture.

1. https://prntscr.com/11tb244

2. https://prntscr.com/11tb1zs

What is the problem ? Help pls.

im using Bluepill + 2.8 TFT (PhatStats_TFT_STM32F1_V1.6.3)

  Are you sure? yes | no

ragook wrote 04/21/2021 at 23:17 point

Maybe you have a garbage un-shielded motherboard USB header adaptor?

  Are you sure? yes | no

Rupert Hirst wrote 04/23/2021 at 00:08 point

You could try this to slow the connection down

/* Delay screen event, to stop screen data corruption ESP8622 / ESP32 use 15 or 25, most others 5 or 0 will do*/


int Serial_eventDelay = 15;

It should'nt be doing it really, I have no problems with the STM32.

BTW, I am no longer supporting the STM32 I did one last update v1.6.5 you can find it in the files section Depreciated2.zip

Going forward it will be ATSAMD  (including ESP32 maybe!!! due to bluetooth)

  Are you sure? yes | no

Edgaras wrote 04/15/2021 at 10:02 point

Hello, does anyone else experienced issues with freezing? I got this built and it freezes every 5-10 mins, I have unplugged the USB and plug it back in so it would start showing live details again

  Are you sure? yes | no

ragook wrote 04/15/2021 at 14:45 point

No Zero freezing here i run it all day long.

You havent provided much info.

What PC system ? What Arduino? Which Screen?

  Are you sure? yes | no

Edgaras wrote 04/15/2021 at 14:52 point

Good point

cpu: ryzen 3600

ram: corsair rgb pro 3000 16gb

gpu: rtx 2060 msi ventus

mobo: asrock steel legend b450

I use Arduino micro + SH1106 1.3inch oled screen

Code works perfectly fine, top right corner flashes D1, D2, D3 (as separate pages of info) for few minutes, and then it stops refreshing and freezes with data on oled screen frozen and not changing anymore. Thats when I have to unplug USB, plug it back in and it starts working again until it freezes again.

  Are you sure? yes | no

ragook wrote 04/15/2021 at 15:07 point

Are you using a USB hub?

"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"

  Are you sure? yes | no

Edgaras wrote 04/16/2021 at 13:07 point

direct usb to motherboard and front io panel tried, both same result. Actually motherboard USB froze faster than front io port

  Are you sure? yes | no

Rupert Hirst wrote 04/16/2021 at 13:46 point

i have heard that Ryzen motherboard chipsets have a problem with frequent USB disconnects

  Are you sure? yes | no

phamanhduc1011 wrote 04/15/2021 at 09:56 point

there are ILI9225 driver displays in my area, LCD TFT 2.2 SPI to be specific. Is this screen be used with this project?

  Are you sure? yes | no

Rupert Hirst wrote 04/15/2021 at 14:41 point

ILI9225 resolution 176x220

ILI9341  resolution 240x320

It has to run native, its not like a TV with scaling

  Are you sure? yes | no

phamanhduc1011 wrote 04/15/2021 at 23:50 point

thanks for your response

  Are you sure? yes | no

cagancelik88 wrote 04/12/2021 at 10:51 point

Just curious why has bluepill support been dropped without any explanation? I also cannot see latest working bluepill & tft lcd combo (which was v1.6.3) in your deprecated.zip file.

  Are you sure? yes | no

Rupert Hirst wrote 04/12/2021 at 16:22 point

Hi,

STM32 was dropped because all the PM's regarding problems are to do with the BluePill. It is also, harder to maintain, as some features going forward simply will not be supported. 

The BluePill maybe be cheap at $3 but, so is the QT-PY $6 and XION $5

I don't save money when someone choses a BluePill over the alternative, I just get questions which involve lengthy answers.

The goal was always to have one platform, to rule them all :)

PS: The depreciated.zip has been updated

  Are you sure? yes | no

Ozkan wrote 04/06/2021 at 14:15 point

When I compile the code, I get an error like the picture.

https://prntscr.com/115skz0

  Are you sure? yes | no

Rupert Hirst wrote 04/06/2021 at 21:00 point

Look at the error and  try reading the line regarding the adafruit grfx library in the sketch

  Are you sure? yes | no

Ozkan wrote 04/08/2021 at 19:01 point

I am using BluePill, all my connections are as in the diagram. I have successfully compiled the code and loaded it into the microcontroller and connected everything correctly. I see nothing but the white screen.

https://prntscr.com/117jnxx

https://prntscr.com/117jo0f

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

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