InfinityX
Overview
This project integrates an ESP32 microcontroller directly inside an Infinity Bluetooth speaker to bring it into Home Assistant. By wiring the ESP32 directly to the speaker's physical Play/Pause, Power, and Volume buttons, the microcontroller mimics physical button presses. Power for the ESP32 is drawn directly from the Bluetooth speaker's internal circuitry, making it a fully self-contained smart integration.
Features and Integration
- Direct Hardware Integration: ESP32 mimics physical button presses using GPIO outputs.
- Self-Powered: Draws power directly from the speaker.
- Power Control: Short and Long Press mimicking.
- Playback and Volume Control: Dedicated play/pause and volume controls mapped through GPIO.
- Status Sensor: Reads speaker power state to report back to Home Assistant dynamically.
Hardware Configuration
Outputs (Active Low, Open Drain) connect to corresponding button pads:
- PWR (Power button): GPIO16
- PP (Play/Pause button): GPIO17
- VOLU (Volume + button): GPIO18
- VOLD (Volume - button): GPIO19
The speaker power status is read via GPIO34 (Input), connected to a point on the PCB that goes high when the speaker is on.
Home Assistant Setup
The device uses the native ESPHome Integration. Auto-discovery broadcasts its presence via mDNS. Virtual buttons and the speaker power status sensor appear as entities in Home Assistant, ready for dashboards and automations.
View Source: nicx17/InfinityX