LinkPlay Binding

LinkPlay Binding

The LinkPlay Binding for OpenHAB enables seamless integration with LinkPlay-based audio devices, allowing users to control playback, volume, multiroom audio, and system monitoring directly from OpenHAB.


Features

  • Playback Control: Manage play, pause, stop, and skip tracks while viewing metadata (track title, artist, album).
  • Volume Management: Adjust volume levels or toggle mute.
  • Multiroom Audio: Create groups, set master/slave roles, and synchronize playback across devices.
  • Device Monitoring: View firmware version, network status, and WiFi signal strength.
  • UPnP Discovery: Automatically discover and add compatible devices.

Changelog

Version 1.0.0-beta1

  • Initial release:
    • Playback control, volume adjustment, and mute toggling.
    • Multiroom management (grouping, ungrouping, roles).
    • Device discovery via UPnP and manual configuration.
    • Network and system status monitoring.

Resources

Direct Download: LinkPlay Binding JAR for OH4.3+
Source Code: GitHub Repository


Installation

  1. Download the JAR file linked above.
  2. Place the file in the addons/ folder of your OpenHAB installation.
  3. Restart OpenHAB, then use the Main UI to discover and add devices.

READ.ME

Tags

linkplay, wiim, arylic

3 Likes

It is actually interesting that you have provided this binding because I had started the same thing (for my WiiM) 2 months ago until, during the implementation I noticed that there is already the generic upnp binding that does it for me.

It seems that your adds a bit more features Multiroom mgmt and monitoring and why did you not just use the upnp binding (just curious)?

Btw, I would recommend to link Linkplay, WiiM, Arylic in the binding docs, so in case, someone is interested, they can follow the link and see what devices these are.

1 Like

The UPnP implementation is inconsistent across link play devices and often quits and craps out. The home assistant community has gone to an HTTP implementation as it’s rock solid. And I needed multi room control. I have 4 of these in my home and another 4 at that cottage. They are great

1 Like

@mjcumming I had the same behaviour as you on using the UPnP with my Linkplay. Didn’t always work so I ended up not making it available in openHAB.
I’m glad you developed this binding. I own a Linkplay Muzo Cobblestone and once I have some time I will will be testing it.

1 Like

Let me know how it works…

Thanks @mjcumming can’t wait to try it! I was just trying to build the project locally, it looks like the git repo is missing a few files? There are missing import errors for

LinkPlayBindingConstants
LinkPlayHttpClient

and maybe others (i stopped there).

fixed - had some git issues between my laptop and desktop…

1 Like

Hi,

First of all thanks for binding :ok_hand:

Before, I was using http binding to connect Wiim Amp to openhab, and now I tried the binding.

I have some observations:

  1. Wifi Signal Strength is not showing anything
  2. For shuffle and repaat are you using this: Arylic Audio HTTP API ? - I’m asking because as you see there are separate options for loop and loop once. I “implemented” that as an single channel with several states.
  3. I think that it will be a good idea to add “preset” channel

Hi Andy,

  1. WiFi seem ok here - it might be a linkplay version issue
  2. I updated to use all 3 loop options - you need to stop openhab clear the cache and restart to see the new channels
  3. I added the preset and play URL endpoints.

Do you mind targeting this then to become an official binding? I would love to see that.

I will soon try out the binding instead the upnp. Thanks again for the effort!

I definitely would submit it as an official binding - I really need some additional testing against other setups and linkplay devices. I have the Wiim and Arylic devices and it seems good with that - however, I am certain we will find various problems somewhere :slight_smile:

1 Like

Does it already implement the auto-discovery feature, so the binding would be detected automatically when being part of the official distribution.

Yes, it uses standard UPnP device discovery followed by HTTP(S) to confirm the discovered device is a LinkPlay device. Note, if a device is a slave device during discovery, the slave will not be seen by UPnP.

First of all, I can confirm that binding works nicely with my WiiM Pro C490. So, good job :smiley:

When I mentioned “auto-discovery” I actually meant discovering the binding as a proposed binding to be installed by scanning the network during startup of openHAB so it it will be shown under “Suggested Bindings”.

1 Like

Ah, got it - the main issue I see is that determining if a device is a LinkPlay device just the UPnP discovery seems consistent - currently, the binding takes all UPnP renderers and then does an HTTP check for an endpoint on the device. I’ll look and see if there is away to discover common versions WiiM, Arylic (which I have)>