• Alexa for Squeezebox

    Breathing new life into your LMS.
    Add Alexa voice control to your Squeezeboxes.

    Learn More See it in action
  • Currently in Alpha

    We're almost feature complete.
    Beta opening soon...

  • 1
  • 2
Built for Alexa

Built for Alexa

All the power of Alexa, all the flexibility of Squeezebox! A custom skill facilitates voice control for transport, content selection
Built for SqueezBox

Built for SqueezBox

Squeezebox is an amazingly flexible and resilient platform. Our custom plugin links to Alexa to add voice control.
Built for Simplicity

Built for Simplicity

An LMS plugin linked to an Alexa skill. Simple. Easy. Effective.
  • 1
Wednesday, April 08, 2020

Alexa for Squeezebox

These days, it seems that voice assistants are everywhere. In stand-alone devices, in a/v equipment, in household appliances, cars and more. Beyond a gimmick, voice applications are evolving to a point where they are approaching usefulness.

But what about legacy technology? Squeezebox was a great platform. There's still plenty about and there's a healthy second-hand market. The LMS is still viable and supported by a great community. 

The Hab-Tunes project seeks to breath new life into older technology by integrating voice control. The first such endeavor is Alexa for Squeezebox - an Alexa skill and LMS plugin that allows you control your Squeezebox by voice.



Comprising a standard Alexa skill and LMS plugin, it's familiar and easy to install, configure and use.



With https used when available, and no need for open ports locally, Alexa for Squeezebox helps keep the ner-do-wells at bay.



Developed over 2 years, with over 50 testers from around the world, Alexa for Squeezebox is stable and reliable.



With ongoing maintenance and feature additions, you can shape the direction and request functionality you'd like to see.


The ambition is to add Alexa voice control to the LMS
and Squeezebox platform in a simple and intuitive way.
Find out more about the design philosophy, or dive right in. Learn More

Get Started

It's All About the Music


Simplicity and Flexibility.
All the hallmarks of Squeezebox - Now with added voice control.

Volunteer Testers


Extensive Alpha phase is ending, with Squeezebox users from around the world contribuiting time and ideas.

Ready for the World


With German localisation well advanced, Alexa for Squeezebox can be ported to any supported Alexa language.

Recent Blog Posts

v0.1.6 is currently in pre-testing and, all going well, will be released  to all testers over the weekend.

This is a significant step up as the LMS plugin now includes both an http proxy and MQTT as options for communications between the skill and the LMS plugin. MQTT implementation was the primary focus of attention and testing in v0.1.5.x and it seems to work well. Response times are better than with the http proxy and further improvements in v0.1.6 and future versions will only help with stability and effectiveness.

I've also set up a Repo for the plugin meaning installation and updating is less command line and more GUI. With this in place, the plugin is more or less feature complete and future work will be focused on bug fixes and optimisations.

That being the case, I'm pleased to announce that this release marks the commencement of the Alpha test phase of the project. Still a long way to go and still the potential to completely bork your LMS, but a milestone nevertheless.

On the skill side, I've added support for volume control to the existing play/pause commands. The focus on the Alpha phase will be the expansion of the command set to cover a well-rounded sub-set of LMS / Device functionality. (@nickb has kindly agreed to the proposal that this skill and his excellent DIY Secure Integration would benefit from sharing a common core command set thus allowing user try out both and feel familiar in each.) Thus that set of commands (with some extensions) will be the focus of development over the next few releases. Once they are implemented, we'll move on to Beta.

With this release, I'm also widening the tester base. There have been several expressions of interest and offers of help over the past few weeks and I'll be contacting those users this weekend and inviting them in to the test portal.

Here's the full list of changes and improvements over the past few versions;

Version 0.1.6 (15th April 2017)

  • Added a startup check to ensure existing prefs files are compatible (plugin)
  • Added a startup check to ensure LMS password protection is off (plugin)
  • Fixed a bug causing MQTT pings to log LMS warnings (plugin)
  • Verified plugin works when LMS inbound connections are blocked (host IP on allowed list) (plugin)
  • Verified plugin works when CSRF protection levels are set to medium and high (skill)
  • Added extra checks for socket disconnect and implemented max retries for re-connection (plugin)
  • Added support for Volume+, Volume-, Set Volume (n), Set Volume (%), Mute and unMute (skill)
  • Added support for translation of some strings that were previously missed (skill)
  • Caught error when socket read fails for some reason to close socket and prevent log flooding (plugin)
  • Added password encryption for MQTT socket instantiation (plugin)
  • Fixed a bug preventing time tracking due to no SSL status flag when using MQTT (skill)
  • Added support for install & update via LMS Plugin Additional Repositories (plugin)
  • Updated supported commands documentation (doc)
  • Bumped the version (plugin)


Version (11th April 2017)

  • Set clientID as unique fixing a bug preventing simultaneous users  (skill/plugin)
  • Fixed a condition that caused infinite loop on MQTT topic subscribe failure (plugin)
  • Bumped the version (plugin)


Version 0.1.5 (10th April 2017)


  • Added 'Use MQTT' selector to settings page (plugin)
  • Implemented MQTT for command initialisation between skill and plugin (skill/plugin)
  • Misc. DB updates to accommodate MQTT (db)
  • Adjusted dynamicIP check interval (plugin)
  • Removed  reporting user password in clear in debug (plugin)
  • Improved internal error logging & reporting (skill)
  • Added support for STOP and PLAY commands (skill)
  • Improved response time of play/pause/resume/stop intents (skill)
  • Caused PAUSE and RESUME commands to behave correctly (skill)
  • Tweak to list devices phrasing (skill)
  • Misc. updates to message translations (skill)
  • Misc. updates to status messages (plugin)
  • Confirmed functionality in OSX (LMS 7.9)
  • Bumped the version (plugin)


Get Involved

Right now, site membership at Hab-Tunes.com is open. However, membership does not accrue any benefits. Participants in the ongoing closed alpha need to be members, and those who will participate in the forthcoming Beta cycle will also require membership.
Details on how to get involved can be found here