Android CEC Screen power On/Off with DSDevices
- Xibo for Android
- Install a White Label or a different Player version on DSDevices
- CEC Screen Power on/off with DSDevices
- Hardware Recommendations
- Philips Signage SoC Monitors
- Managing Storage on the Android Device
- Player Settings
- Players without an Internet Connection
- Remote Administration with SS Helper
- Restart Rooted Device with a Shell Command
- Running Xibo for Android
- Resolving Common Issues
- Error shown when I try to licence my Player?
- Player not updating from the CMS?
- I can see my Licence entry but the Player appears unlicensed?
- Error message - Player is missing dependencies
- My scheduled Layouts are not working?
- Layout won't play? Splash screen plays?
- Watchdog error message
- Troubleshooting for Administrators
- Audit Trail
- Log Information
- Player Logs
- Getting the Player Status
- Can I use the Xibo name / logo?
- Can I run a Xibo Player on Raspberry Pi?
- How can I increase the upload file size limit?
- How do Players communicate with the CMS?
- How many displays can Xibo support?
- How do I reset the Xibo_admin account password?
- Power On/Off for Players
- Testing with Xibo
- Why do I need a Default Layout?
- Xibo for Android FAQ's
- Autoplaying Embedded Youtube Videos
- Closing to Home screen
- Displaying Images
- Embedded TV
- External SD card not listed when running Banana-Pi
- Helper Command to change Time zone
- HTML5 Video
- Memory Notifications
- Menu not accessible
- SSL Support
- Using Portrait Displays
- Video wont play properly
Android CEC Screen power On/Off with DSDevices
If you are using a CMS later than v3.0 please use this link
This guide will take you through how to use the DSDevices DSCS9X and DSCS9 to control the attached TV/screen via HDMI-CEC.
Modern TVs and signage panels offer the HDMI-CEC standard to accept power on/off Events via the HDMI cable.
The DSDevices DSCS9X and DSCS9 offers a method to send those CEC control signals so that you can turn the screen on and off via Commands Scheduled in Xibo or built into Layouts.
If you are using a DSCS9X, please go straight to the Xibo Setup section below.
Plesae note: DSCS9 devices shipped from 1st January 2019 onwards have the DSDCEC app pre-installed and the CEC options correctly configured for you automatically, so you can skip straight to the Xibo Setup section below.
On your DSCS9, first install the
DSDCEC app which you can download from the
DSDevices Utilities section of the Download Centre.
Once installed, if you open the
DSDCEC app, it should look like this:
Next, go into the
Settings app from the device home screen:
Ensure that the following options are selected:
- CEC Control - Open
- One key play - Close
- One key power off - Close
- Auto change language - Close
Exit the settings using the back arrow at the bottom of the screen.
Next, ensure that your TV or panel has HDMI-CEC control enabled. How you achieve this varies from manufacturer to manufacturer. Please see the user guide for your particular TV for guidance.
Once CEC is enabled, ensure that your DSCS9 is connected to the TV via HDMI cable. CEC control signals cannot pass through HDMI to VGA adapters for example.
POWEROFF button, or press
f on the keyboard in the DSDCEC app. Your TV should turn off. Assuming it does so, turn the screen back on manually, or if you have a keyboard connected use the
n button to trigger a power-on event.
Assuming that the screen powers off and on as expected, the Player setup is complete.
Once the Players are configured and power off/on is working from the DSDCEC app, triggering that from Xibo is straight forward.
From the CMS, we first need to define a Command to turn screen power off and on. Go to the CMS Menu, and select the Commands page located under the Displays section.
If you don’t already have a suitable Command defined, create one now by clicking Add Command.
Repeat for a
Screen On Command.
The two new Commands should now appear in your list. If you already have screen on/off commands defined (for example if you use webOS Players), then there’s no need to define specific ones for Android. You can use the same Commands across both types of Player.
If you don’t already have a Display Settings Profile that you’ll use for DSDevices DSCS9X and DSCS9 based Players, then now is a great time to create one.
To create a new profile, in the CMS main Menu, go to Display Settings and click Add Profile. Ensure the Client Type is set to Android, and give the Profile a meaningful name.
Enter your Licence Pool information, along with any other settings you would routinely change for your environment.
Finally, move to the Commands tab, and define the two Commands you created earlier for these devices as follows:
Those commands are:
echo 0x40 0x36 > /sys/class/cec/cmd
echo 0x40 0x04 > /sys/class/cec/cmd
Save your Display Settings Profile.
You now need to assign that Display Settings Profile to your DSCS9 Players. If you’re using only one Display Settings Profile, and have put those Commands into the Default Profile, then you can skip this step. Otherwise, go to the Displays page of the CMS.
Edit each Display served by a DSCS9 and click on the Advanced tab. Choose the new Profile you created in the Settings Profile? field and Save your changes.
Allow time for the Player to download the new Settings Profile. You can see when it last connected on the Displays page. Once that date changes, it should have the new Commands defined.
If you have XMR up and running, you can now send an instant screen on/off command from the Displays page:
Click the row menu next to your selected Display, and select Send Command. Pick Screen Off and then Save. The screen should receive an XMR message and turn off.
The same Commands can then be Scheduled from the Schedule screen (these don’t require XMR to work):
As in the example image above, the selected Start Time would cause the screen to turn off at 18:30 on the selected Display. You could then use a Repeat to cause that to happen every day for example. A similar Schedule could be defined to turn the screen back on again.
It is also possible to embed the Commands required into a Layout. Simply add the Shell Command Widget and choose the Commands you defined earlier. When that particular Layout is shown, the screen power state will change accordingly.