A Home Assistant integration for controlling Marshall Bluetooth speakers over BLE (Bluetooth Low Energy).
- π Media Player Control: Play, pause, next, previous track controls
- π Volume Control: Adjust speaker volume with real-time feedback
- π‘ LED Brightness: Control speaker LED brightness (0-35 range)
- π΅ Audio Source Selection: Switch between Bluetooth, Aux, and RCA inputs (model-dependent)
- οΏ½οΈ 5-Band Equaliser: Individual control for Bass, Low-Mid, Mid, High-Mid, and Treble (0-10 range, 5 is neutral)
- π Interaction Sounds: Toggle device interaction sounds on/off
- π Media Metadata: Display track title, artist, and album information
- π Connection Status: Track device connectivity
- π·οΈ Device Information: Model, serial number, firmware, and hardware details
- π― Multi-Model Support: Acton II, Stanmore II, and extensible for additional models
| Model | Features |
|---|---|
| Acton II | Volume, LED Brightness, Audio Source (Bluetooth/Aux), 5-Band EQ, Interaction Sounds, Media Controls, Media Info |
| Stanmore II | Volume, LED Brightness, Audio Source (Bluetooth/Aux/RCA), 5-Band EQ, Interaction Sounds, Media Controls, Media Info |
- Open Home Assistant and go to Settings β Devices & Services β Custom repositories
- Add this repository URL:
https://github.com/elrobertocarlos/marshall_bluetooth_speaker - Search for "Marshall Bluetooth Speakers" in HACS and install
- Copy the
custom_components/marshallfolder to your Home Assistantcustom_componentsdirectory - Restart Home Assistant
- Go to Settings β Devices & Services β Create Integration
- Search for "Marshall Bluetooth Speakers" and select it
The integration will automatically discover nearby Marshall speakers via Bluetooth:
- Go to Settings β Devices & Services
- Look for "Discovered" section showing your Marshall speaker
- Click "Add" to add the integration
- Confirm the device when prompted (prevents accidental pairing)
If auto-discovery doesn't work:
- Open Settings β Devices & Services β Create Integration
- Search for "Marshall Bluetooth Speakers"
- Select and configure (will prompt for device address)
- Play/Pause/Next/Previous: Full playback control
- Media Title: Shows current track - artist (album)
- Source Selection: Switch between available audio inputs
- Volume: Adjustable via slider (0-32)
- LED Brightness: Adjustable LED brightness (0-35)
- EQ Bass: Bass equaliser band (0-10, where 5 is neutral)
- EQ Low-Mid: Low-mid equaliser band (0-10, where 5 is neutral)
- EQ Mid: Mid equaliser band (0-10, where 5 is neutral)
- EQ High-Mid: High-mid equaliser band (0-10, where 5 is neutral)
- EQ Treble: Treble equaliser band (0-10, where 5 is neutral)
- Interaction Sounds: Enable/disable speaker interaction sounds (button press and notification sounds)
- Device Name: Speaker name from device
- Model: Device model name
- Serial Number: Device serial number
- Firmware Version: Current firmware version
- Hardware Version: Hardware revision
- Volume Level: Current volume setting (0-32)
- Audio Source: Currently active audio source
- Play Status: Current playback state (playing/paused/stopped)
- Connected: Speaker connection status
service: media_player.toggle
target:
entity_id: media_player.acton_iiservice: media_player.volume_set
target:
entity_id: media_player.acton_ii
data:
volume_level: 0.5service: select.select_option
target:
entity_id: select.acton_ii_source
data:
option: "Aux"# Set Bass band to maximum
service: number.set_value
target:
entity_id: number.acton_ii_eq_bass
data:
value: 10
# Set Treble to neutral
service: number.set_value
target:
entity_id: number.acton_ii_eq_treble
data:
value: 5service: switch.turn_off
target:
entity_id: switch.acton_ii_interaction_soundsservice: number.set_value
target:
entity_id: number.acton_ii_led_brightness
data:
value: 20- Ensure the speaker is powered on and in Bluetooth pairing mode
- Check that your Home Assistant device has Bluetooth capability
- Try rebooting Home Assistant
- Move the speaker closer to your Home Assistant device
- Reduce interference from other Bluetooth devices
- Restart the speaker
- Ensure the characteristic is writable
- Check the device is responding to commands (LED should blink)
- Verify the speaker model supports the feature
Contributions are welcome! Please open an issue or submit a PR for:
- Additional Marshall speaker models
- Bug fixes
- Feature improvements
- Documentation updates
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
This is an unofficial integration and is not affiliated with Marshall Amplification plc.
This integration was developed by reverse-engineering the Marshall Bluetooth protocol and is built upon research and insights from:
- rabbit-aaron/marshall-stanmore-2 - Protocol analysis and characteristic research for Marshall speakers
Developed for controlling Marshall speakers via BLE without requiring official apps.