Media Controller

The media controller is a function block that allows you to use your app as a universal remote!


The block allows you to control many different media devices through the same interface, similar to a multi-function remote control. It allows you to bring together commands of various different sources, such virtual outputs, IR commands as well as RS-232 and RS-485 commands, to create a single user interface that controls all video media in a room.

There are two key overall functions that this block allows. The controlling of all AV devices in a room when turning on and switching between certain “modes” (i.e. Blu-Ray, Sky and Apple TV). It also can function as a universal remote control for all thse modes as a universal remote control in the app.


Before you can add devices to the media controller block you need to add them into the program first. To do this you can use our pre-defined devices for virtual outputs, remote controls (for IR), and RS-232/485 templates.

You can also create your own devices, you can find the relevant documentation below:


First add in the media controller block either by selecting it from the Program tab, or by pressing F5 on a page and searching.

If you then double click on the block you will open up the editor so you can configure the modes and devices.By deault there is always one mode called “New mode” created and below this you can see all the buttons that will appear in the UI. There are two notable exceptions right at the top “Change to Mode” and “Change from Mode” that we will address later on this page.

Different modes will allow buttons to do different things. So, for example, you can configure a Watch TV mode to adjust the volume of the TV with the volume buttons. However in another mode Music using the volume buttons will adjust the amplifier volume. Here is an example of a second mode having been added with the “Add mode” option at the bottom left. In my case I have named it “Apple TV” and have used the [-] button to minimise both modes.

To rename a mode click on the name of the mode where you can type in a new name.


When configuring the mode the best way to get started is to use the “Configure main device” option to the right of the mode in the “Configuration” tab. This will auto-populate the commands the system recognises to the correct buttons within the mode. This is best used when you have a remote (like an Sky remote) fully learnt in to your IR Control Air (but this is only an example). In this example I will rename “New mode” to “Sky” and using a Sky Remote I’ve aready added to my IR Control Air in the Living Room that is located under the TV. For instructions on using the IR Control Air and learning in remotes please see our IR Control Air documentation page.

As you can see I have a full set of IR commands in the transmit section of my IR Control Air BEFORE taking this next step.

Please note that you MUST have your IR Control Air assigned to a room in order for it to be picked up by the following view.

Once this is done you should see that there are commands populating the feilds under the mode in the “Configuration” tab of the media controller like below. If this not happening then it is likely that the names chosen are not matching on the auto lookup, please rename your buttons and try again.

 Please note that if you have multiple remotes on the same IR Control Air the Media Controller is not able to identify between these for the auto population as we have just done. As such each command will need to be assigned manually following the process we will go through next to ensure the correct one is assigned.

Click on the blank cell to the right of the  icon to open the command editor. In the command editor popup you will see the system outputs (i.e. the outputs from your devices, you can see the IR Control Air here), the block outputs (AQ1 to AQ26) which you can use to trigger other outputs in your configuration (bring blinds down for example), and finally, you will see the other functions such as delays.

The left side panel shows 3 trees:
  • System outputs: Any relevant devices such as RS232 Devices, Virtual Output Devices and IR Contol Airs.

    ATTENTION: Here only lists devices that are located in the selected room above this panel.

  • Block outputs: Outputs of the program block (AQ1 to AQ26)

  • Other functions: to insert time delays between commands (eg IR commands so they can be properly processed by the device)


To add a command to the button list, highlight the command to the left and then click on the + button to add the command to the list.

Existing entries can be deleted and moved up and down in the list order using the control buttons between the left and right panels. Hovering the mouse over each will say what each one is for. If you have used one of the AQ1 to AQ26 outputs you can define a value or let the numeric keypad define the value using the <v> entry.

The column “Pulse [ms]” defines how long this command is sent for. If you put a 0 in this field the command will be permanently set for the duration the button is pressed, any other values defines it as a set time each time the button.

Using the delay function and having different pulse lengths you can set up sequences for controlling your media equipment just like you would when using a remote by hand.

For an example of this here we are using the “Change to Mode” command. This will be sent any time this mode is selected, from any other mode including Off. The converse is also true for the “Change from Mode” as it will be sent any time this mode is left for any other mode including Off.

Be very careful when using toggle commands (i.e. but the on/off button of the TV remote) as you want to be sure you are not accidentally turning the device off when it is already on when you would simply like to keep it on. To avoid this use discrete commands. More info on this link.

Here I have built an example “change to mode” which utilised virtual outputs, block outputs and IR commands to set a mode for a room when watching Sky.

You can see here that when changing to mode “Sky” the following commands are sent.

  • Block output ‘AQ1’ – This block output will be used to put the blinds down in the room. See below screenshot for an example of how this is done.
  • Output ‘Infocus Projector – IN3118HD 0> Power On’ – A discrete power on command for the projector, this is to get it on and running when watching Sky. The great thing here is because we’re using a discrete command, it does not matter if we to this mode from “Apple TV” mode where the projector is already on. Another on command will simply be ignored by the projector as it is already on.
  • Output ‘Pioneer AVR -> Power On’ – A discrete power on command.
  • Function ‘delay for [x] ms’ – example delay to allow the AVR to boot up before sending the next command to ensure it does not get lost in the boot process of the AVR.
  • Output ‘Pioneer AVR -> Source TV-Sat’ – Source command for the AVR to ensure the correct video stream is being pushed through to the projector.
  • Output ‘TV -> Sky OK’ – A command to wake the Sky box from a sleep mode it may be in.

By building up commands like this you can create macros when changing from one mode to another.

Here is how we can bring the blinds down from AQ1 on the Media Controller.

 Following this process through for your installation will allow you to build a user-freindly and advanced AV setup for their home.




TrTrigger on and offToggles the power button on and off, a double click will turn off.
V+Volume upTriggers the volume up button.
V-Volume downTriggers the volume down button.
T5T5 input for Loxone Touch SwitchesTouch Point 2 (top right)= Vol + / Double-click: Next Source
Touch Point 5 (bottom right)= Vol- / Double-click: Power OFF
P+Next channelTriggers the next channel button.
P-Previous channelTriggers the previous channel button.
AImAnalogue input to choose modeSelect a mode using this analogue input (1 to 8).
M1-M8Trigger input to select modeSelects modes 1 to 8.
RResetSets all outputs to 0 and any commands will be interrupted.
DisDisableChild lock input, will stop all inputs to the block working but the user interface will still function.




AQmAnalogue outputOutputs the current mode as an analogue value from 1 to 8.
AQpDigital outputReturns the state of the power button, so can be used to switch the power for a device.
AQ1-AQ26Analogue outputsAllows other outputs to be controlled through the analogue outputs of the block.


TnNumber pad timeoutAfter this timeout in ms, whatever number is entered in the number pad will be transmitted. If Tn is equal to 0 then the value is only transmitted after the confirmation key is pressed.
TdcMaximum pulse seperation (s) This parameter defines how close together two pulses have to be in order to count as a double click and not two separate clicks. The smaller this parameter the faster the click has to be.



Here is an example of what the media controller looks like on the apps. There is also a number pad screen where you can choose numbers to control devices.




Find links to the right for videos on our video channel and lots of sample files!

You can also find out more about what you can do with AV equipment and Loxone.

See our video channel for Loxone Config videos and more!

Head over to our sample files page for inspiration and ideas.

Find out about controlling audio and video equipment with Loxone.