Screen control widgets
Applies to Elementi 2015 and later.
Description

The screen control widgets can be used to send different commands to the connected screen, like power on/off the screen, mute/unmute, set a certain volume level, or select a screen input. The commands are sent via the serial connection, so a proper RS232 cable must be used.
These widgets don't display any content and are especially useful when the screen commands must be sent according to a predefined schedule; for instance, the Power.svg widget can be used to create a custom power saving schedule.
Get started

- Create a new Elementi project or open an existing one.
- Click the "Widgets" tab in the Browse panel.
- Open the "Screen Control" folder.
- Pick a widget (see the list below) that best fits how you want to present the data.
- Drag & drop that widget from the Browse panel into the Preview panel or Edit panel. The widget is automatically copied within your opened project.
- Configure the widget to display your data.
Widgets
Elementi software comes with several screen-control widgets accessible from "Widgets" tab within the Browse panel:
- Power
- It is used for turning on or off the screen, depending on the "Command" property being set to "PowerOn" or "PowerOff".
- This widget might work without a serial connection, as the player uses multiple display power management mechanisms simultaneously.
- Mute
- It is used for muting or unmuting the sound of the screen, depending on the "Command" property being set to "MuteOn" or "MuteOff".
- Volume
- It is used for setting the screen volume to a certain level; expected value is between 0 and 100. The command that is triggered is "SetVolume", with the selected value passed as parameter.
- Sources
- It is used for selecting a certain input source of the screen, from the following choices: HDMI1, HDMI2, VGA, AV1, AV2, AV3. The command that is triggered is "SelectInput", with the selected value passed as parameter.
Advanced
Each screen control widget allows modifying the command to be sent or its parameters directly from Elementi GUI; the specified command is simply passed to the finite state machine of the player through the auxCmd
element present inside the widget code.
The "Power" and "Mute" widgets allow setting which command to be sent. For instance, the "PowerOn" command is described like this within the Power widget:
<auxCmd command="PowerOn" target="monitor"/>
Inside the serial port protocol file, something like this would be present:
<onStart command='PowerOn' goto='start'>
<write data='ª%c{17}ÿ%c{1}%c{1}%c{18}'/>
</onStart>
The "Volume" and "Sources" widgets allows setting the parameter of the fixed command ("SetVolume" or "SelectInput") they are sending. In such cases, two finite states are required within the fsm file, for instance, the following code would allow to select the HDMI1 input:
<state xml:id='start'>
[...]
<onStart command='SelectInput' goto='select_input_start'>
</onStart>
</state>
<state xml:id='select_input_start'>
<onTest var='$PARAM1' stringEqualTo='HDMI1' goto='start'>
<write data='%c{1}0A0E0A%c{2}11%c{3}r
'/>
</onTest>
</state>
The full example can be found here.