Skip to main content

hdmi_cec_to_adb

Project description

HDMI CEC to ADB

Turns off an Android TV using a Raspberry Pi and adb shell commands. Not all Android TVs respect the HDMI "standby" command (even if the HDMI-CEC settings are enabled) and as result, the won't turn off automatically when a standby broadcast message is sent via HDMI.

This package aims to solve that using python-cec / libcec and adb (Android Debug Bridge). When a broadcast standby command has been sent, this program sends an adb shell command to turn off the TV using key input.

Installation

There are a few steps to getting all the pieces working.

Android TV Setup

Turn on your Android TV "Developer Mode" and enable adb debug logging.

Install Raspbian

For this setup to work, you will need a Raspberry PI and will need to complete the guide from PiMyLifeUp. This basically installs a Raspberry PI with Raspbian and cec-client which is required to communicate with HDMI and used by this library.

Copy adb keys

You will need to copy public and private keys to your /home/pi/.android/ folder on the Raspberry PI. These could be taken from any computer were adb is installed. These allow from communication over TCP/IP and to turn off the TV.

Install hdmi_cec_to_adb

Once your Raspberry PI is setup, install hdmi_cec_to_adb and setup a cron to automatically start on boot.

# assuming you have virtualenvwrapper already installed
mkvirtualenv hdmi_cec_to_adb

pip install hdmi-cec-to-adb
# Add the following to your crontab and make sure you use your TV IP Address
SHELL=/bin/bash
@reboot source /home/pi/.virtualenvs/hdmi_cec_to_adb/bin/activate && start_hdmi_cec_monitor --tv_ip_address=192.168.1.99 --adb_key_filepath=/home/pi/.android/adbkey

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hdmi-cec-to-adb-0.2.tar.gz (4.0 kB view hashes)

Uploaded Source

Built Distribution

hdmi_cec_to_adb-0.2-py3-none-any.whl (4.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page