Skip to content

HDMI-CEC: turn the TV on/off and switch its input #75

Description

@lippdev

Idea

Use HDMI-CEC so entering console mode also turns the TV on and switches it to the PC's input, and restoring the desk puts the TV back in standby (optional). Today the user still has to grab the TV remote before or after.

Possible extras: TV remote arrows/OK driving the console interface (CEC key presses), and volume through the TV/soundbar.

The catch

Almost no PC GPU exposes CEC on its HDMI port, so Windows can't send CEC commands by itself. Options:

  • Pulse-Eight USB-CEC adapter (sits inline on the HDMI cable) with libcec; cec-client or the .NET wrapper (LibCecSharp). Most reliable, needs extra hardware.
  • A device on the same TV that has CEC: Raspberry Pi, Chromecast/Google TV, Fire TV, a console. Console Mode would ask it over the network (e.g. a tiny service on a Pi running cec-client, or Home Assistant).
  • Smart TV network APIs instead of CEC: LG webOS, Samsung Tizen (SmartThings), Sony Bravia IP control, Android TV ADB. Not CEC, but power and input switching over Wi-Fi with no extra hardware for supported models.

Sketch

  • Settings → "TV control": none / USB-CEC adapter / network TV (brand) / Home Assistant.
  • On start: power on → set active source (CEC Image View On + Active Source) → then the existing display flow.
  • On restore: optional standby (CEC Standby), off by default.
  • A "Test" button like the TV confirmation test.

Open questions

  • Which route first? Network TV APIs cover many users without buying anything; USB-CEC covers any TV.
  • 👍 this issue and say your TV brand/model and whether you have a CEC adapter or a Pi.

Not planned for a specific version yet.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestroadmapPlanned feature

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions