A comprehensive Home Assistant integration for managing Valve Indexยฎ Base Stations (V2) and HTC Vive Base Stations (V1) (UNTESTED) through Bluetooth Low Energy (BLE). Control power states, monitor device information, and automate your VR setup with ease.
- Valve Index Base Stations (V2) - Full feature support
- HTC Vive Base Stations (V1) - UNTESTED/WIP, see #4
- Power Control - Turn base stations on/off remotely
- Standby Mode - Energy-efficient standby for V2 base stations
- Power State Monitoring - Real-time status tracking
- Identify Function - Blink LEDs to locate specific base stations
- Automatic Discovery - Zero-configuration setup via Bluetooth discovery
- Config Flow UI - Complete graphical configuration (no YAML required)
- Device Information - Firmware, model, hardware, and manufacturer details
- Multiple Entity Types - Switches, sensors, and buttons for comprehensive control
- Connection Management - Advanced BLE connection pooling and retry logic
- Configurable Timeouts - User-adjustable connection and scan intervals
- Device Registry Integration - Proper Home Assistant device management
- Translation Support - Multi-language interface
- Options Flow - Advanced settings without reconfiguration
This integration communicates directly with your VR base stations using Bluetooth Low Energy (BLE).
- Direct Connection: No SteamVR or additional software required. Home Assistant connects directly to the base stations.
- State Polling: The integration periodically polls the base stations to check their power state (Sleep, Standby, On).
- Command Queueing: Commands (like turning on/off) are queued and sent efficiently to minimize connection attempts.
- Auto-Discovery: Uses Home Assistant's Bluetooth integration to automatically detect nearby base stations.
- Install HACS - Ensure HACS is installed and configured.
- Search for Integration - Go to HACS โ Integrations โ Explore & Download Repositories and search for "VR Basestation".
- Install - Click Download on the integration card.
- Restart Home Assistant
- Add Custom Repository:
- Go to HACS โ Integrations โ โฎ (menu) โ Custom repositories
- Add:
https://github.com/MineTech13/homeassistant-basestation - Category: Integration
- Install Integration - Find "VR Basestation" and click Install
- Restart Home Assistant
- Download the latest release from GitHub Releases
- Extract to
custom_components/basestation/in your Home Assistant config directory - Restart Home Assistant
- Navigate to Settings โ Devices & Services
- Look for automatically discovered VR base stations
- Click Configure and follow the setup wizard
- Settings โ Devices & Services โ Add Integration
- Search for "VR Basestation"
- Enter MAC address and device type
If you need to find your base station MAC addresses manually:
# Using hcitool (Linux)
sudo hcitool lescan
# Look for devices starting with "LHB-" (V2) or "HTC BS" (V1)
# Using bluetoothctl
bluetoothctl
scan on
# Wait for devices to appearAlternative Methods:
- Android: Use "BLE Scanner" or "nrf Connect" app from Play Store
- Windows: Use "Microsoft Bluetooth LE Explorer" from Windows Store
- SteamVR: Check device serial numbers in SteamVR settings
Each base station creates multiple entities for comprehensive control:
- Power Switch - Main on/off control
- Standby Switch (V2 only) - Energy-efficient standby mode
- Firmware Version - Current firmware information
- Model Number - Device model details
- Hardware Version - Hardware revision
- Manufacturer - Device manufacturer
- Channel (V2 only) - Communication channel
- Power State (V2 only) - Detailed power status
- Pair ID (V1 only) - Pair identification
- Identify Button (V2 only) - Blink LED for device identification
Access advanced settings via Settings โ Devices & Services โ VR Basestation โ Configure:
- Device Name - Custom friendly name
- Scan Intervals - Adjust update frequencies
- Connection Timeout - BLE connection timeout
- Sensor Control - Enable/disable specific sensors
- Power State Monitoring - Control detailed state tracking
# Example: Turn on base stations when lights turn on
automation:
- alias: "VR Room Activated"
trigger:
- platform: state
entity_id: light.vr_room
to: "on"
action:
- service: switch.turn_on
target:
entity_id:
- switch.valve_basestation_1
- switch.valve_basestation_2
# Example: Auto-standby after 30 minutes of inactivity
- alias: "VR Auto Standby"
trigger:
- platform: state
entity_id: binary_sensor.vr_room_motion
to: "off"
for: "00:30:00"
action:
- service: switch.turn_on
target:
entity_id:
- switch.valve_basestation_1_standby_mode
- switch.valve_basestation_2_standby_modeCreate groups for easy control:
- Settings โ Devices & Services โ Helpers
- Create Helper โ Group
- Add all base station switches
- Control all base stations with one entity
Base stations not discovered:
- Ensure Bluetooth is enabled and working
- Check base stations are powered and not in sleep mode
- Verify Home Assistant has Bluetooth access
Connection timeouts:
- Increase connection timeout in device options
- Check Bluetooth adapter range and interference
- Ensure base stations aren't in use by SteamVR
Transform your VR setup with smart automations:
- ๐ก๏ธ Climate Control - Auto-adjust AC when VR session starts
- ๐ก Lighting - Sync base stations with room lighting
- ๐ Presence Detection - Turn off when leaving home
- ๐ป System Integration - Wake PC, start SteamVR, control displays
- โฐ Scheduled Power - Auto-standby during sleep hours
- ๐ Energy Management - Smart power saving based on usage patterns
- @MineTech13 - Complete v2.0 architecture, config flow, device abstraction, and feature development
- @Invisi - V2.0 development collaboration and testing
- @jariz - Original basic implementation and BLE communication foundation
- @TCL987 - Early improvements and community contributions
- @Azelphur - Patches and compatibility fixes
- jeroen1602/lighthouse_pm (GPLv3) - BLE protocol reference, including the V1 (Vive) pairing/power command structure
- Home Assistant Community - Testing, feedback, and feature requests
This project is licensed under the GNU General Public License v3.0 (or later) - see LICENSE for the full text.
Copyright (C) 2026 MineTech13 and contributors.
- BLE Range Limitation - Bluetooth Low Energy has limited range; consider BLE proxies for extended coverage
- Power Management - V2 base stations support multiple power states (On, Standby, Sleep)
- Concurrent Access - Base stations can only be controlled by one application at a time
- Firmware Updates - Update base station firmware through SteamVR for best compatibility
Transform your VR setup into a smart, automated experience with the VR Basestation Integration! ๐ฎโจ