Publicado originalmente en el intento de wiki que tuve. Cómo construir un monitor de recursos de PC con una pantalla LCD y un Arduino.
Este es un proyecto que consiste en una pantalla LCD de proyecto típicas para Arduino y otras aplicaciones pequeñas, que conectada a un puerto serie y a un programa de monitoreo de recursos (en este caso, AIDA64 y LCD Smartie) es capaz de desplegar en esta pantalla estadísticas vitales del PC que además son personalizables. El proyecto en general tiene un bajo costo y su implementación es relativamente sencilla.
Lista de materiales
Esta lista de materiales es la indicada para realizar una pantalla de 20×4 caracteres, para otros tamaños de pantalla la lista cambia.
- Pantalla LCD de 20×4 caracteres, compatible con Hitachi HD44780 Aliexpress
- Adaptador I2C para pantallas compatibles con Hitachi HD44780 Aliexpress
- Arduino UNO o Arduino Nano Arduino UNO, Aliexpress, Arduino Nano, Aliexpress
- Una carcasa para la pantalla. Para la LCD de 20×4 caracteres recomiendo esta carcasa.
- Algunos cables para conectar entre el adaptador I2C y el Arduino (son 4 cables)
- Un cable USB, USB-B si se usa el Arduino UNO, o un USB Mini-B si se usa el Nano.
Software
- El IDE de Arduino. Para realizar este proyecto usé la versión 1.8.1 del IDE.
- Librería LiquidCrystal 1.2.1, versión de Francisco Malpartida Link 1 | Link 2
- El código para cargar en el Arduino Código original | Mi versión del código
Nota: Si se va a usar la versión original del código, asegúrese de usar una tasa de transmisión de 9600 bps para la compatibilidad con AIDA64.
Prefacio
Este monitor lo tengo armado e implementado en mi PC desde hace un par de años. Entonces no me molesté en documentarlo porque era un proyecto tan nicho que no lo consideré necesario. Pasó el tiempo y uno de mis amigos empezó a necesitar una solución similar por unos problemas que estaba teniendo mientras hacía stream. Me ofrecí a construirle uno igual al que tenía yo, con el problema que en mitad de la construcción me di cuenta que había olvidado completamente cómo lo había logrado. El proyecto en sí está construido en base a varios proyectos pequeños, e incluso el objetivo de dichos proyectos no era usar la pantalla con AIDA64, sino que con LCD Smartie, que era la solución de facto a mediados de la década del 2000.
Cableado
El cableado de este proyecto es relativamente sencillo, y consiste solo en conectar los 4 pines del adaptador I2C de la pantalla al bus I2C del Arduino según el siguiente pinout:
Pin Adaptador | Pin Arduino |
---|---|
SCL | A5 |
SDA | A4 |
VCC | 5V |
GND | GND |
También en su representación gráfica:
Configuración
La configuración varía un poco según el aplicativo que se use. Yo prefiero AIDA64 porque es una utilidad que hasta el día de hoy se mantiene actualizado y funciona perfecto para el propósito. También funciona con LCD Smartie y quizás con más aplicaciones, si conocen una avísenme.
Para AIDA64 se debe indicar una pantalla del tipo Matrix Orbital LK y el puerto que haya tomado nuestro Arduino.
Consideraciones
Este mod es sencillo de elaborar y presta una utilidad muy interesante, sobre todo considerando a los usuarios que suelen ejecutar tareas demandantes de recursos (por ejemplo, stremear o abrir muchas ventanas de Chrome al mismo tiempo). Al ser un elemento externo al(los) monitor(es) del PC, funciona excelente como elemento dedicado a la monitorización.
En este aspecto, LCD Smartie pese a ser una utilidad muy antigua, también ofrece algunas características adicionales que AIDA64 no tiene consideradas, tal como el feed RSS.
Este proyecto también se puede realizar con otros tamaños de pantalla. Tengo pendiente conseguir una pantalla de 4×40 caracteres para tener un monitor que pueda, eventualmente, tener a la vista muchos más indicadores.
Respecto al artículo, lo he estado perfeccionando conforme tengo tiempos libres. De todas formas, DokuWiki avisa cuándo fue la última modificación del archivo, para que lo tengan en cuenta.
Fuentes
- https://forum.arduino.cc/t/problemas-con-lcd-smartie/646609/2
- https://arduyectos.wordpress.com/2016/04/29/lcd-20×4-i2c-arduino-monitorizar-pc/
- https://www.instructables.com/Interfacing-LCD-SMARTIE-With-Arduino/
- https://www.askix.com/arduino-con-4-x-20-lcd-y-lcd-smartie-usb.html
- https://www.instructables.com/Arduino-with-4×20-LCD-and-LCD-Smartie-over-USB/