Differences

This shows you the differences between two versions of the page.

Link to this comparison view

iothings:proiecte:2023sric:hardwaremonitor [2024/05/29 16:58]
ionel.patrascu3101 [ESP8266]
iothings:proiecte:2023sric:hardwaremonitor [2024/05/29 18:47] (current)
ionel.patrascu3101 [Smart Hardware Monitor]
Line 4: Line 4:
   * Email: ionel.patrascu3101@stud.acs.pub.ro   * Email: ionel.patrascu3101@stud.acs.pub.ro
   * Master: SRIC   * Master: SRIC
 +  * [[https://​youtu.be/​zqtbRrcpSKQ|Demo]]
  
 ====== Introduction ====== ====== Introduction ======
Line 304: Line 305:
  
 Similar functions, ''​displayCPU()'',​ ''​displayGPU()'',​ and ''​displayRAM()'',​ are implemented to provide more detailed information about each hardware component, respectively. These functions follow a similar structure, retrieving relevant data from the JSON document and displaying it on the LCD in a user-friendly format. Similar functions, ''​displayCPU()'',​ ''​displayGPU()'',​ and ''​displayRAM()'',​ are implemented to provide more detailed information about each hardware component, respectively. These functions follow a similar structure, retrieving relevant data from the JSON document and displaying it on the LCD in a user-friendly format.
 +
 +====== Results ======
 +
 +{{:​iothings:​proiecte:​2023sric:​hardwaremonitor:​connect.png |}} This section presents the visual results of the implemented system, showcasing the information displayed on the LCD screen for each of the four display states.
 +
 +===== Overall Page =====
 +{{:​iothings:​proiecte:​2023sric:​hardwaremonitor:​overall.png |}}
 +
 +The "​Overall"​ page provides a concise overview of the system'​s performance,​ displaying the CPU load and temperature alongside the GPU load and temperature. This page offers a quick glance at the system'​s general health and resource utilization.
 +
 +===== CPU Page =====
 +{{:​iothings:​proiecte:​2023sric:​hardwaremonitor:​cpu.png |}}
 +
 +The "​CPU"​ page provides more detailed information about the CPU, displaying the CPU load, temperature,​ frequency, and power consumption. This page allows for a more in-depth analysis of the CPU's performance and resource usage.
 +
 +===== GPU Page =====
 +{{:​iothings:​proiecte:​2023sric:​hardwaremonitor:​gpu.png |}}
 +
 +The "​GPU"​ page focuses on the GPU's performance,​ displaying the GPU load, temperature,​ memory usage, and power consumption. This page provides insights into the GPU's workload and resource utilization.
 +
 +===== RAM Page =====
 +
 +{{:​iothings:​proiecte:​2023sric:​hardwaremonitor:​ram.png |}}
 +The "​RAM"​ page displays the RAM usage, showing the amount of RAM currently used and available. This page helps monitor the system'​s memory utilization and identify potential memory constraints.
 +
 +===== Real-World Setup =====
 +
 +{{ :​iothings:​proiecte:​2023sric:​hardwaremonitor:​project.jpg?​600 |}}
 +This image showcases the actual physical setup of the project. The ESP8266 microcontroller is connected to the LCD display and the joystick, allowing for user interaction and real-time display updates. The ESP8266 communicates with the server to retrieve system hardware data, providing a seamless and informative experience for the user. This image highlights the practical implementation of the project, demonstrating its functionality and user-friendliness.
 +
 +
 +====== Conclusion and Future Work ======
 +The project successfully demonstrates the implementation of a real-time system hardware monitoring solution using an ESP8266 microcontroller,​ an LCD display, and a joystick for user interaction. The system effectively retrieves system hardware data from a server via a Flask API and displays it on the LCD in a user-friendly format. The user can navigate between different display states showcasing various system metrics using the joystick and its button. The system provides a valuable tool for monitoring system performance without interrupting the user's primary activity.
 +
 +Future work could focus on enhancing the user experience and functionality of the system. One potential improvement would be to replace the current LCD display with a larger, more visually appealing display. A graphical user interface (GUI) could be developed to present the information in a more intuitive and engaging way. Additionally,​ exploring the integration of additional sensors, such as temperature sensors or fan speed sensors, could provide a more comprehensive view of the system'​s health and performance.
 +
 +
 +====== References ======
 +  * OpenHardwareMonitor Library: https://​github.com/​OpenHardwareMonitor/​OpenHardwareMonitor
 +  * Flask Web Framework: https://​flask.palletsprojects.com/​
 +  * ESP8266 WiFi Library: https://​github.com/​esp8266/​Arduino
 +  * ESP8266 HTTPClient Library: https://​github.com/​esp8266/​Arduino/​tree/​master/​libraries/​ESP8266HTTPClient
 +  * ArduinoJson Library: https://​arduinojson.org/​
 +  * LiquidCrystal_I2C Library: https://​github.com/​johnrickman/​LiquidCrystal_I2C
 +  * How to Use I2C LCD with ESP32 on Arduino IDE (ESP8266 compatible):​ https://​randomnerdtutorials.com/​esp32-esp8266-i2c-lcd-arduino-ide/​
 +  * ESP8266 Pinout Reference: https://​randomnerdtutorials.com/​esp8266-pinout-reference-gpios/​
iothings/proiecte/2023sric/hardwaremonitor.1716991092.txt.gz · Last modified: 2024/05/29 16:58 by ionel.patrascu3101
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0