B&O ControlLink


Bang & Olufsen ControlLink

This driver adds integration with the new B&O ControlLink AV products. All the products are displayed as BeoLiving Intelligence RENDERER resources.

System connection status

System connection status is shown on the BLI’s web interface, each color represents the system connection state:

  • Green: the connection to all of your resources is working as expected.
  • Yellow: not every resource is connected, please check your network and settings.
  • Red: there is a system error.

Resources

Resources are automatically discovered on the network and can be added to Zones either using the iOS app or in the Resources tab of the web interface by clicking on “Show discovered resources”. In a standard local network setup, using discovery and addressing the products by serial number is the recommended way. If you are having troubles, check the Network considerations section below.

Available inputs vary depending on the ControlLink product, they can be found in the “Interfaces” tab under “AV Products”, where they can be hidden in the app. Every ControlLink product offers the B&O NetRadio input, where radios all over the world can be found.

The resource states include the selected input, the playing state (play, pause etc.), volume information, and information about what is currently playing such as name, artist, album and artwork.

TV resources can be configured to show the BLI Home Control panel. This configuration is done automatically by the BLI once a TV is added to any zone, and only if the TV’s Home Control configuration is not yet set. For overwriting this configuration, you can go to the “Interfaces” tab, select the device under “AV Products” and check/uncheck the Home control owner flag.

Commands:

SEND_DIGIT
Send a digit key
LEFT
Cursor command LEFT
UP
Cursor command UP
RIGHT
Cursor command RIGHT
DOWN
Cursor command DOWN
ENTER
Cursor command ENTER
EXIT
Send an exit command
RETURN
Send a return command
SET_VOLUME
Set the volume to a given level
VOLUME_UP
Increase the volume
VOLUME_DOWN
Decrease the volume
SET_MUTE
Enable or disable mute
SET_DEFAULT_VOLUME
Set the default volume, which the product will use on startup
UNLINK
Unlink from the ongoing multiroom experience
LINK
Perform a link to a Multiroom experience
JOIN
Join the first Multiroom experience found (touch to join)
SELECT_INPUT
Select an input (or source)
TURN_ON
Turn on the product
STANDBY
Turn off the audio product
ALL_STANDBY
Turn off all the audio products of the network
CHANNEL_UP
Send channel up command
CHANNEL_DOWN
Send channel down command
RED
Simulate the red key press
GREEN
Simulate the green key press
YELLOW
Simulate the yellow key press
BLUE
Simulate the blue key press
PLAY
Play command
PAUSE
Pause command
STOP
Stop command
NEXT
Next track command
PREV
Previous track command
SET_CONTENT_ID
Select the content to play from a content provider (use it with beoCloud:netRadio for radio selection)
SET_INDEX
Change the playing item from the playqueue by number
SET_SHUFFLE
Set the playqueue to shuffle or not
SET_REPEAT
Change the playqueue repeat mode policy (repeat all, current track, none)
ADD_ITEM
Add an item to the playqueue for a given provider and id. Requires the content metadata like artist, name and so on
REMOVE_ITEM
Remove an item from the playqueue
MOVE_ITEM
Move an item in the playqueue
CLEAR
Clear the playqueue
AUDIO_OVERLAY_URI
Play an audio from a URL, overlayed to whatever is playing and at the selected volume
AUDIO_OVERLAY_TEXT
Speak the text as overlay content. Currently, 100 unique TTS messages can be generated a day and generated messages are cached for 24 hours
AUDIO_OVERLAY_USB
Play an audio from a USB drive connected to the B&O speaker, overlayed to whatever is playing and at the selected volume
HOME_CONTROL
Request a TV to open the HOME CONTROL panel
CUSTOM_COMMAND
Send a custom command, each product may provide different custom commands
_MOVE_STAND
Move the stand position to a defined angle
_SET_SOUND_LISTENING_MODE
Select the listening mode
_SET_SPEAKER_GROUP
Set the current speaker group
_SET_LISTENING_POSITION
Set the listening position
_TRIGGER_SCENE
Trigger a specific scene
_PRESET
Trigger a specific preset
_MOVE_CURTAIN
Move the curtain to the specified position

Connecting to BeoCloud

A BeoCloud connection is needed in order to use B&O NetRadio, and requires signing into the BeoCloud account.

A connection can be established from the BLI on the “ControlLink” system in the “Systems” tab, or directly from the BeoLiving application in Settings->YOUR-BLI->Device Settings->BeoCloud.

Both means will prompt the user for a pin, which can be retrieved from the Bang & Olufsen application in Settings->Integrations, where a code with the format “XXX-XXX-XXX” can be created.

Once the BeoCloud account is linked with the BLI, all of the NetRadio content will be available.

Network Considerations

All communication between the BLI and the AV products is based on Multicast discovery (Bonjour). This method allows the products to be discovered on the network and addressed by their serial numbers. It is essential that all products are accessible on the same subnet as the BLI and that the network supports multicast discovery.

In cases where the AV products are on different subnets (VLAN) or multicast communication is disturbed by the network, a FIXED IP can be used as the address in the Resource tab. It is crucial to verify your network configuration to ensure that the IP assigned to each of the AV products is fixed and exclusively assigned to that product. The most reliable method to achieve this is by using DHCP reservation on the DHCP server within the network setup. If you are experiencing instabilities while using the product IP as a resource address, please check that the IP is not being used by another device at the same time.

Product Group

The ControlLink system allows you to make groups of ControlLink and NetworkLink products. By defining one product as the Main product, the rest of the group will follow the behavior of this product in terms of volume, source selection, and standby mode.

The Product Group’s configuration is shown under Systems. When you select the ControlLink system, the configured product groups will be listed below, with options for editing the existing groups or adding new ones. ControlLink products can only form part of one group, so you won’t be able to add a product to a group if it’s already in another.

For a new group to be created you need to select a Main product for the group and at least one Follower, if not, the group won’t be created.

A group can also be created from the BeoLiving application in Settings->YOUR-BLI->Device Settings->Group products where you should first choose a master and then the followers.

Changelog

v0.4 | 2024/04/18

  • Adds support to fixed ip address

v0.3 | 2022/10/31

  • Documentation updates.

v0.2 | 2021/04/28

  • Initial version.

Please, report any issue with this driver to: support+drivers@khimo.com