Browser based UI for B&O products

21 replies
UPDATE: This thread was originally titled "Command line utility for controlling B&O products" A while back I wrote a utility to control B&O products.  I did this primarily because I wanted to understand how the B&O app communicates with B&O products, and better understand their capabilities, so that I could potentially write a replacement app.  I recently found the motivation to clean that code up and have put it on GitHub: https://github.com/andy-js/beoutil The last several updates to the B&O app have removed features, like the ability to view the play queue on a device that is in standby, as well as modify it, and begin playback from any point in that queue.  I don't know why they did this, but I suspect it's because the newer Mozart based speakers are lacking functionality and it looks better to not expose that in the app.  For me this makes the B&O app much less useful than it used to be.  My utility provides a way to access this functionality again.  It also has full support for multiroom audio, allowing you to borrow sources from other products, expand a multiroom experience, etc, all things that have become more difficult in the latest version of the B&O app. B&O have also pushed out updates to the older speaker's firmware which have removed features.  I was dismayed to discover that they removed support for using a Deezer playlist as a timer, which allowed you to use a speaker as an alarm clock.  I'd hoped to include support for this in my utility but the functionality is simply not there anymore on the speaker side.  I think this is really poor form, they should've at least asked for confirmation before installing an update that removed features.  Hopefully they will get better about this in the future. For now I've abandoned my plans to create a third-party app and have instead started working on a web based GUI for B&O products that will be able to run on something like a Raspberry Pi.  Imagine something a bit like sonos-web for B&O products, though the UI is going to be something other than the typical iTunes style UI that both sonos-web and the B&O app have.  I think this style of UI just does not work for multiroom audio, especially when there are a large number of speakers.  Eventually I expect this will be a total replacement for the overpriced BeoLiving Intelligence.  I have other features in mind which I think will be game changers, but I'll reveal that later.  I plan to make this freely available with the source code.
Hello Andy, Thanks for this initiative! I tried both installation methods, with the following results. Method 1: go install github.com/andy-js/beoutil@latest And so, I tried your second method, with the following similar result:   However, the above must be somehow wrong, because your app seems to have written the files!  I must be doing something wrong: I realize you are not the help desk, but I do want to try these commands.  Best,
No problem!  I'm glad someone else thinks this utility might be useful.  I've pushed some fixes that should resolve your problems.  Both installation methods should now work.
Thanks.  The good news is that these commands now download v.0.1.0, whereas before  it was o.o.o.2024... Unfortunately, no joy: method 1 yields "found (v0.1.0), but does not contain package github.com/andy-js/beoutil" and method 2 yields "no Go files in [local directory].  Underlined both outcomes here:
Part of the fixes I pushed involved correcting some mistakes in the README file.  You should have better luck if you try this:
go install github.com/andy-js/beoutil/beoutil@latest
Or
git clone https://github.com/andy-js/beoutil.git cd beoutil/beoutil go install
Thank you so much.  With the new instructions, both Method 1 and Method 2 completed with no adverse feedback. Alas!, once instalation appeared to be complete, the command «beoutil» was not found.  The good news is that the command «go» was found.    
Go binaries are normally installed into ~/go/bin.  Try ~/go/bin/beoutil.
I again thank you, and admit that the Terminal lies outside my comfort level.  I don't want to further harass you.
To run beoutil from the current directory you will need to prefix the command with "./" so it ends up looking like "./beoutil".  The dot here refers to the current directory.  To run beoutil from ~/go/bin (the tilde here refers to your home directory) you would type "~/go/bin/beoutil".  I recommend the latter because it will work regardless of the current directory.  I don't mind the questions so don't sweat it.
It worked!  On my Mac as long as I type (or use a shortcut) «~/go/bin/beoutil» it all works as you said.  Thanks for your patience! Now, I have 3 wireless devices, well, 4 if you count the H95, but I am not sure your app would track the BT-only H95, so forget about that.  But... look at this:
MacBook-Air:bin fmmbair$ ~/go/bin/beoutil find-products
Scanning for products...
Found 3 products.
MacBook-Air:bin fmmbair$ ~/go/bin/beoutil list-products
NAME             ROLE    IP            JID                                             ONLINE  STATE
Beoplay A6       -       192.168.0.66  2703.1200287.27252054@products.bang-olufsen.com true    -
Beosound Essence -       192.168.0.235 2872.1293028.28118056@products.bang-olufsen.com true    -
MacBook-Air:bin fmmbair$
It  found 3, but displayed only 2!  The one missing is a Converter ML/NL, with the latest sw installed, and known to be functional 100%, and with IP 192.168.0.168, so it is in the same network segment. I tried this twice; once with all systems on std.by, and then once with all systems playing the same Deezer source, multiroom. What's interesting is that get-sources 192.168.0.168 works!  It gives me the sources for the product it didn't list.
or
BeoWorld Gold Membership card
Join BeoWorld

Register to access the forums, reference material, and exclusive member benefits — including our monthly prize draw.

Become a Member

December 2026 Prize Draw

Gold Members Only

As a Gold member you're automatically entered into our exclusive prize draw — your chance to win iconic Bang & Olufsen products. A unique benefit of BeoWorld Gold membership, every draw brings a new opportunity to win something special.

BeoSound Level

1st Prize

BeoConnect Core

2nd Prize

BeoRemote Halo

3rd Prize