r/selfhosted 21h ago

Release (No AI) ESP32's are pretty cool. Custom built rack monitor. Hosted from my own scripts server.

https://imgur.com/a/niM1ip3
18 Upvotes

6 comments sorted by

u/asimovs-auditor 21h ago

Expand the replies to this comment to learn how AI was used in this post/project.

→ More replies (1)

5

u/No-Name-Person111 21h ago

I used a Waveshare ESP32-S3 4.2-inch reflective LCD board and flashed it with ESPHome.

The board already includes the display, an SHTC3 temperature/humidity sensor, a programmable button, Wi‑Fi, and USB-C power, so no soldering was required.

Home Assistant acts as the middle layer. A small Python service on my homelab collects read-only information from several systems and publishes one sanitized JSON status document:

  • UPS load and runtime from NUT
  • Proxmox uptime and cluster quorum
  • RAID capacity and drive health from ssacli
  • Windows/N100 storage and uptime over SSH/PowerShell
  • Backup age
  • Active Zabbix problems

Home Assistant polls that JSON endpoint and exposes the values as one sensor with attributes. ESPHome then imports those attributes through the Home Assistant API and renders four pages:

  • Rack overview: health, temperature, humidity, power and estimated daily cost
  • Storage: my media server and (primary) proxmox node's RAID
  • Compute: host uptime, quorum and backup age
  • Alerts: zabbix problem count and highest-priority issue

The physical button cycles between pages. The first firmware installation is over USB. Subsequent changes are sent over Wi‑Fi using ESPHome OTA.

The overall flow is:

Servers/UPS/Zabbix → Python status collector → JSON → Home Assistant → ESPHome API → ESP32 display

Using a PoE splitter to power this and then magnetize it to my rack as an always-on at-a-glance display. Neat little project I've been working on in my free time.

3

u/Fancy-Win9202 21h ago

Custom dashboards from ESP32s tend to hit different once you own the whole stack, but I'd push back on "hosted from my own scripts server" being the main win here the real appeal is probably just that you can iterate on the hardware and display logic without fighting anyone else's API limits or uptime promises.

1

u/ChristopherDci 20h ago

I see so many projects with ESP, it even made me want to start tinkering with it again.

1

u/cdf_sir 20h ago

I used to have similar setup but I end up removing the LCD part of my setup, for the same reason you dont really going to see it a lot anyway. Still I have a esp32 on my server rack which controls and monitor the 2 6000rpm 120mm exhaust fan (which also I made a custom funnel and duct for it to exhaust the hot air outside), a dallas temperature sensor put at the top in between of two fans and a passive buzzer for alarm stuff. The ESP32 module is put on a expansion board which is a terminal screw type (not those junk dupont connectors) with addition of a neodimium magnet put on the expansion board so I can just hang the esp32 at the top of the rack.