WiiM/LinkPlay Integration - Beta Release

Latest Updates:

Transform your WiiM and LinkPlay speakers into powerful Home Assistant media players with full multiroom support. Built on the brand new, fully async pywiim library we wrote for reliable, high-performance device communication.

Why Choose This Integration?

  • :musical_note: Complete Media Control - Full transport controls, volume, sources, presets, TTS, and media browsing
  • :link: True Multiroom - Uses Home Assistant’s native grouping for reliable synchronized playback
  • :zap: Powered by pywiim - Built on the brand new, fully async pywiim library we wrote for robust, high-performance device communication
  • :rocket: Auto-Discovery - Finds speakers automatically via UPnP/SSDP/Zeroconf
  • :iphone: Universal Compatibility - Works with all Home Assistant dashboards, voice assistants, and media sources
  • :zap: Hybrid State Updates - UPnP events for real-time updates + HTTP polling for reliability
  • :control_knobs: Advanced Audio - 10-band EQ, audio quality sensors, output mode control, and format support
  • :alarm_clock: Timer & Alarms - Sleep timer and alarm management for WiiM devices
  • :bar_chart: Rich Diagnostics - Comprehensive statistics, health monitoring, and troubleshooting tools
  • :arrows_counterclockwise: Scene Support - Full scene restoration including EQ presets and playback state
  • :dart: Smart Features - Optimistic UI updates, adaptive polling, and intelligent source detection

Supported Devices

  • WiiM: Mini, Pro, Pro Plus, Amp, Ultra
  • LinkPlay Compatible: Arylic, Audio Pro (including Gen1: A26, C10, C5a and MkII models), Dayton Audio, DOSS, and many more
  • Enhanced Compatibility: Automatic protocol fallback for devices with non-standard configurations
  • Requirements: Home Assistant 2024.12.0+ on same network as speakers

Quick Start

1. Install via HACS (Recommended)

  1. Find in HACS: HACS → Integrations → Search “WiiM Audio”
  2. Install: Download → Restart Home Assistant
  3. Configure: Settings → Devices & Services → Add Integration → “WiiM Audio”

2. Manual Installation

  1. Download latest release
  2. Extract to /config/custom_components/wiim/
  3. Restart Home Assistant and add integration

Key Features

:musical_note: Media Playback & Control

Feature Description
Media Control Play, pause, stop, next/previous, seek with resume support
Volume Control Individual and synchronized group volume with debouncing
Smart Sources Detects streaming services (Spotify, Amazon Music, Apple Music, etc.)
Media Browser Browse Home Assistant media sources, DLNA servers, and custom radio stations
TTS Support Full Text-to-Speech integration for all TTS engines (Google, Amazon, Azure, etc.)
Shuffle & Repeat Toggle shuffle and repeat modes for playlists
Presets Hardware preset buttons (device dependent, up to 20)
URL Playback Play audio from any URL (radio streams, files, playlists)

:control_knobs: Audio Enhancement

Feature Description
EQ Control 10-band equalizer with 24 presets (Flat, Rock, Jazz, Classical, Pop, etc.)
Custom EQ Fine-tune each of 10 frequency bands (-12dB to +12dB)
Audio Output Control hardware output modes (Line Out, Optical, Coax, Bluetooth, Headphone)
Audio Quality Real-time sensors for sample rate, bit depth, and bit rate
Format Support Lossless (FLAC, WAV, ALAC up to 24-bit/192kHz) and compressed formats

:house: Multiroom & Grouping

Feature Description
Multiroom Groups Synchronized playback across speaker groups with perfect timing
Group Coordinators Virtual entities for unified group control
Role Detection Automatic master/slave/solo role detection with sensors
Group Volume Synchronized volume control across all group members
Smart Grouping Uses Home Assistant’s native grouping for reliable sync

:alarm_clock: Timer & Alarm Features (WiiM Devices)

Feature Description
Sleep Timer Set sleep timer (0-7200 seconds) to automatically turn off device
Alarm Management Create and manage up to 3 alarms with daily/weekly schedules
Alarm Control Full alarm creation, update, and deletion via services

:bar_chart: Sensors & Diagnostics

Feature Description
Role Sensor Shows current multiroom role (Master/Slave/Solo)
Input Sensor Current audio input source
Audio Quality Sample rate, bit depth, and bit rate sensors
Diagnostic Sensor Comprehensive device health and statistics
Firmware Sensor Device firmware version tracking
Bluetooth Status Bluetooth output and connected device status

:wrench: Advanced Features

Feature Description
Auto-Discovery Finds speakers automatically via UPnP/SSDP/Zeroconf
Real-Time Updates UPnP event subscriptions for instant state changes with HTTP polling fallback
Scene Support Full scene restoration including EQ presets and playback state
Optimistic Updates Immediate UI feedback for all controls
Enhanced Diagnostics Comprehensive device diagnostics with statistics and health monitoring
Protocol Fallback Automatic HTTP/HTTPS protocol detection with multi-port fallback
Audio Pro Support Full support for Audio Pro MkII with mTLS client certificate authentication

How It Works

The integration uses a hybrid approach combining UPnP event subscriptions and HTTP polling for optimal reliability and responsiveness:

  • UPnP Events (Primary): Real-time state updates via DLNA DMR event subscriptions
    • Instant updates when device state changes (play/pause/volume/mute)
    • Reduces network traffic and improves responsiveness
    • Automatically falls back to polling if UPnP becomes unavailable
  • HTTP Polling (Fallback): Adaptive polling strategy ensures reliability
    • 1-second polling during active playback for position updates
    • 5-second polling when idle for resource efficiency
    • Always available as fallback if UPnP subscriptions fail
    • Gracefully handles network issues and device restarts

This dual approach ensures you get the best of both worlds: real-time responsiveness when UPnP is working, and reliable operation even when it’s not.

1 Like