Skip to content

jmleclercq/esp32-sonos-touch-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 Sonos Touch Controller

ESP32 ESPHome Home Assistant Display License

A standalone touchscreen controller for Sonos, powered by ESP32 + ESPHome + Home Assistant.

This project documents the hardware setup, wiring, working display configuration, and the ongoing touch controller integration.


🚀 Project Goal

Build a dedicated Sonos control screen that:

  • Connects to Home Assistant
  • Displays device information
  • Provides future touchscreen interaction
  • Runs fully on ESPHome
  • Supports OTA updates

🧱 Hardware Used

  • ESP32 (esp32dev)
  • 3.5" SPI TFT display (ST7796, 480x320)
  • Touch controller (suspected XPT2046)
  • USB 5V power supply

📄 See: hardware.md
🖼 Wiring diagram: docs/wiring.png


🗺 Roadmap

v0.1 – Display Foundation ✅

  • ESP32 + ST7796 display initialization
  • Stable SPI configuration
  • RGB test rendering
  • Device name + IP display
  • Wi-Fi connection
  • Home Assistant API integration
  • OTA updates enabled

v0.2 – Touchscreen Integration (In Progress)

  • Identify exact touch controller model
  • Validate SPI / CS / IRQ wiring
  • Obtain dynamic X/Y coordinates
  • Axis calibration
  • Touch stability validation

v0.3 – Sonos UI Prototype

  • Basic UI layout
  • Volume slider
  • Play / Pause
  • Next / Previous
  • Media info display

v0.4 – UI Polishing

  • Smooth refresh
  • Responsive touch zones
  • Screen sleep mode
  • Brightness control

v1.0 – Stable Sonos Control Panel

  • Full Sonos control
  • Multi-room selection
  • Production-ready configuration
  • Complete documentation
  • Touch fully validated

✅ Current Status

Feature Status
Display (ST7796) ✅ Working
SPI Communication ✅ Stable
Wi-Fi ✅ Working
Home Assistant API ✅ Connected
OTA ✅ Working
Web Server ✅ Working
Touchscreen ❌ Under Investigation

📺 Display Validation

The working baseline configuration:

  • Shows RGB test bars
  • Displays device name
  • Displays IP address
  • Connects to Home Assistant
  • Runs stable under ESP-IDF

See:

About

standalone ESP32 touchscreen controller for Sonos powered by ESPHome and Home Assistant.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors