Files
cluster-displays/pi/README.md
vixy 7901088155 Initial commit: EliteDesk + Pi display daemons
- EliteDesk: 240x320 color ST7789 via Pico (Day 32 design)
- Pi: 128x64 mono SSD1306 horizontal bars (Day 85 redesign)

🦊 Built with love by Vixy
2026-01-25 14:44:32 -06:00

68 lines
2.0 KiB
Markdown

# Pi Cluster Display
128x64 monochrome OLED status display for Raspberry Pi k3s worker nodes.
## Display Layout
```
┌────────────────────────────────────────┐
│ pi1 ●● 168h● │
│────────────────────────────────────────│
│ CPU ████████░░░░░░░░░░░░░░░░░░ 24% │
│ MEM ██████████████░░░░░░░░░░░░ 45% │
│ TMP ████████████░░░░░░░░░░░░░░ 52° │
│────────────────────────────────────────│
│ ● OK │
└────────────────────────────────────────┘
●● = Both pods running (2/2)
●○ = One pod down (1/2)
○○ = Both pods down (0/2)
● OK = All metrics healthy
◐ WARN = CPU>70% or MEM>75% or TEMP>65°C
○ CRIT = CPU>90% or MEM>90% or TEMP>80°C
```
## Wiring
```
SSD1306 OLED Raspberry Pi
------------ ------------
VCC → 3V3 (pin 1)
GND → GND (pin 6)
SDA → GPIO2 / SDA (pin 3)
SCL → GPIO3 / SCL (pin 5)
```
## Quick Install
```bash
sudo ./daemon/install.sh
```
## Manual Install
```bash
# Dependencies
sudo apt install -y python3-pip python3-pil python3-psutil i2c-tools
pip3 install luma.oled --break-system-packages
# Enable I2C
sudo raspi-config # Interface Options → I2C → Enable
# Test
i2cdetect -y 1 # Should show 3c or 3d
# Run
python3 daemon/pi_stats_display.py
```
## Thresholds
| Metric | Warning | Critical |
|--------|---------|----------|
| CPU | 70% | 90% |
| Memory | 75% | 90% |
| Temp | 65°C | 80°C |