by recursive
16 subcomments
- Modern AV stuff is insane. I have no interest in taking it up as a hobby. I have an xbox, a TV, and a pair of bookshelf speakers. How am I supposed to get the audio to the speakers without a bulky expensive receiver box? Luckily, I have one of the last remaining TVs with a headphone jack. I don't use a remote for any of it.
Side note: Sometimes the TV doesn't come on when you press its power button. After a tremendous amount of experimentation, I determined this was because the "brain" was on, but the backlight was not. Power cycling it blind usually fixes it. That's harder than it sounds though because you have to navigate the menu blind using short and long button presses with the one button. But I'm scared to try a new TV, because then I'm going to have to figure out how to get audio out of the TV.
It seems like AV stuff used to be so simple. Now the simplest scenarios seem to require more and more knowledge about arcane connection standard interactions and network topology. Ugh.
by davidczech
3 subcomments
- A side note: I am very sad that HDMI-CEC apparently can only support like 3 "console-like" devices. I have an Apple TV, Nintendo Switch 2, Sound Bar (eARC) and PS5 hooked up, but only 3 can really interact with CEC.
It took me a long time to diagnose why it seemingly wouldn't work with my Nintendo Switch 2.
I ended up disabling it on my PS5 because I never use the darn thing, but it kind of stinks since most TV's have 4 HDMI inputs.
by codepoet80
4 subcomments
- Yup, my AppleTV is the only device that gets CEC right. Even my LG TV and LG soundbar get confused. And don’t get me started on the PS4 Pro’s garbage implementation. I’m sad that Logitech killed Harmony because CEC was supposed to make universal remotes obsolete — they’re still the only way my full home theater can function without juggling a dozen remotes.
- I am using a raspberry pi pico with a modified pico-cec program to control my Jellyfin-client media PC. CEC is actually really fun to hack on, and once you get a custom setup working, it is (at least in my experience) rock solid.
Jellyfin even has a TV mode that you can enable in a normal desktop browser. So my media PC runs the browser in kiosk mode, and it has CEC buttons mapped to keyboard presses. Guests have used it, and I don't think anyone could tell that it wasn't a "smart" TV.
https://github.com/gkoh/pico-cec
- I saw the Steam Machine bragging about CEC and being able to turn the TV on when it does, which made me wonder why my setup doesn't do that.
Turns out that there's a special pin on your APU that has to be wired up, and AMD didn't bother for the Z1 Extreme chips. I wish "wake on signal" was a universal option.
by jonah-archive
0 subcomment
- A long time ago I used one of these HDMI-CEC-to-USB/serial bridges: https://web.archive.org/web/20110219131237/http://rainshadow...
(I'd gotten a large LG monitor instead of a flatscreen tv, and it didn't talk HDMI-CEC but it had a serial-over-TRRS control interface, so I listened for messages on the bus and my media PC translated and relayed them to the monitor.)
by star-glider
0 subcomment
- heh I really enjoyed reading this because I went on a RPI-fueld CEC deep-dive about a year ago when we put a gym in our house. I wanted a simple media center control for the TV/Receiver we had in there. An RPI sits at the center of the thing, and by reading the CEC bus I can respond to various remote commands to launch the media center, bring up security camera feeds, switch the receiver to Bluetooth, start Spotify Connect, etc.
It works well, but CEC most definitely is the buggiest part of the setup. It's a reasonably elegant system, but it's just not implemented very well by most electronics. I ended up putting in a lot of retries: stuff like "send active source command; wait five seconds and send it again." Still, if you're willing to dive into the weeds, you can do some nifty stuff.
- I’ve tried getting CEC working with my pretty average setup: Samsung Frame, Marantz receiver, couple of console games.
It has been worse than doing all the remote juggling switching mysel because it is non-deterministic. This article will help me debug it, but it’s a toss up which audio device the screen will pick, if game mode activates or not, and if some device waking in the wrong order will put another one right back to sleep. Even if I follow the same steps every time.
- Assuming you’re ok with connecting your receiver to the network, you should be able to wake the receiver if you detect the tv is on without any cables at all - if your tv is also on the network (I’ve got a home assistant automation doing exactly that) or you can use a $10 smart plug with power metering.
That said props for actually using HDMI-CEC! And it’s cheaper than most smart plugs (and probably safer, too)
by rgovostes
1 subcomments
- This is the lord’s work. It’s ridiculous that in 2025 my $500 gaming PC GPU cannot tell the receiver to change inputs. Even my Apple TV, which is considered a model citizen here, steals the receiver’s input every few hours if I have another device active.
- I used a similar setup to translate CEC user commands (volume/fwd/reverse/etc), that travelled from my TV remote to the TV to the CEC bus to a pi that was plugged into the TV via HDMI. The pi was running jukebox software (moode audio). Similar to the article, the pi had a shell script that reads all the loglines coming from cec-client and acted on them when appropriate, in my case translating a subset of the CEC user commands to moode commands.
Worked pretty well, was nice to CEC-ify a pi program and eliminate the need for special-purpose hw/sw to interact with the audio player.
The CEC spec has all of the user control codes on the 2nd last page[1], in table 27.
[1] https://storage.googleapis.com/google-code-archive-downloads...
by FatherOfCurses
0 subcomment
- I have what I believe is an acceptable setup at home (Denon AVR-X1700H and Apple TV like the OP, a decent Sony display, 7.1 speaker setup, but the plethora of audio coding options completely mystify me. I know this is a me problem. I'm hoping in the new year to watch more movies with the family and would like to make better use of the surround system for sci-fi and action movies but for whatever reason I have no idea where to start.
by InterlooperX
0 subcomment
- Agreed that CEC is weird. Never thought about adding yet another device like the Pi into the mix to help control everything, though...
I have accepted that I am apparently in the minority with my setup.
In fact I was actually surprised to read that OP has a Denon as, just by what I have read about the topic of home theater", everyone else seems to be doing just fine with a simple soundbar which has one! hdmi socket.
So, here is my setup:
-Dumb TV (Panasonic. So old it doesn't have a CI+ module built in, it is "just" a CI module)
-Denon AV Receiver
-Nintendo Wii
-Nintendo Switch Dock
-Original Xbox
-Blueray Player
-HTPC
-Satellite Receiver
-AppleTV
Excessive? Maybe but I still own all that stuff, have room for it in my cabinet so I like to convenience of powering each of these on when I feel like it without having to unearth them from a storage room and then fiddle with cables to connect everything for just a short time of usage.
Basically everything is plugged into the Denon. And then a single HDMI cable goes from the Denon to the TV. So the TV stays on one HDMI channel and everything else happens on the Denon. Switch Inputs on there and you get the corresponding Audio/video signal from the chosen device.
So far I have been lucky that in order to switch everything on, I could use a Harmony One. I could simply program the power on command for the TV, then switch to HDMI1 and turn on the Satellite receiver. This was the default. Put it on a news station and you got yourself some background noise. If you want to switch, you just had to tell the Harmony to switch its input to any other device listed above.
It really irks me that the Harmony line is dead and I don't know what I will do should the remote, one day, stop to function.
Now I wonder if I would have to go the Pi route to have that switch things around depending on devices announcing themself when turned on.
- Would love to know more about the magic Apple bytes and why the Denon is behaving differently with consoles.
by pottertheotter
1 subcomments
- “every console behaves like it missed the last week of CEC school. They wake the TV, switch the input, then leave the Denon asleep so I’m back to toggling audio outputs manually.”
My Roku does this! It will turn on the TV but not the soundbar, which is so frustrating. Guess it’s somewhat normal.
by hackernudes
0 subcomment
- I wrote a program in Golang to control my a/v setup. Included within are small pkgs to control Linux CEC and LIRC devices (ioctl/read/write) as well a pkg for LG TV commands over serial port. Link here: https://github.com/EBADBEEF/tvman
One really useful thing when getting started was to use `cec-ctl -M` to monitor the CEC traffic live. Like the author, I used the v4l-utils commands to interact with CEC but eventually got frustrated with them and rewrote my program in in Go!
I have found CEC to be flaky and hard to work with. I had to turn off CEC on my TV because it breaks everything, almost randomly switching inputs and turning on and off devices.
- My TV and soundbar have the same issue: CEC works for everything except the "turn on" command. I ended up fixing it with an arduino-ish IR blaster that's powered by the TVs USB port - so as soon as the TV powers on, the Arduino boots up and tells the soundbar to turn on too. https://www.nfriedly.com/techblog/2015/01/samsung-tv-turn-on...
I also had a NUC that I installed a Pulse Eight CEC module into, but I never ended up using it, so it got passed on to someone else.
- An analogous audio binding issue used to happen with my Jabra Bt headphones. It was generally connected to my phone and my computer. After finishing a phone call — if previously the computer was playing some music — the music would turn back on but it would be a very poor quality, I suspect the audio "mode" was stuck at "transmitting" phone call audio quality even though the BT software on the headset detected devices being switched from phone -> computer. Toggling the BT sound output on the mac to and fro between Computer and Headphones, fixed it.
I suspect it was probably a vendor — jabra — software issue when sending a signal to apple's BT stack when switching between types of devices? But probably not worth fixing on my own.
by deepspace
1 subcomments
- I am not sure why the author specifically mentions a $7 cable when the Raspberry Pi and accessories are going to set you back close to $100. That is by far the most expensive component. The money is possibly better spent buying a programmable remote.
by Arbortheus
0 subcomment
- In my home media setup (LG UQ81 TV, WiiM Amp via ARC, Xbox Series X, Chromecast with Google TV), the CEC setup _almost_ works perfectly.
* I can use the LG TV’s remote alone to control everything including the Chromecast and amp’s volume controls.
* The amp automatically switches on and off with the TV.
* Turning the Xbox on/off via its controller also turns on/off the TV and the amplifier together.
Mostly good, except sometimes when I have my Chromecast on and switch the Xbox on via the controller it gets stuck in an endless loop of flicking back and forth between HDMI 1 and HDMI 2, between Chromecast and Xbox. Nothing I can do will stop it except to power cycle the TV.
If anyone has experienced anything similar or has any tips on how to debug this that would be much appreciated!
- I have an Apple TV and Nvidia Shield connected to a home theater receiver which is connected to the LG TV.
Sometimes when turning any of the set top boxes, the other one would turn on and its HDMI would become the active one. I couldn't simply turn off the box I didn't want to use because all the system would turn off.
The solution was to disable CEC on the TV. I still get CEC between the boxes and the receiver (for volume and HDMI active input) but I need to manually turn the tv on and off.
- In a similar vein, I created a project, Amity, that uses HDMI-CEC to control the whole home theater with one remote. Using a simple streamer remote you can select an activity (watch Apple TV, play on the PlayStation) navigate interfaces, control the system's volume, and power it off. One of several fairly common streamer or TV remotes can be used.
Amity, too, is based on a Raspberry Pi but also uses a very simple custom PCB to hook into the HDMI-CEC bus between the TV and the receiver. One of the most common problems encountered with HDMI-CEC is that different components will often compete to be displayed by the TV (for example, turning on your Apple TV, turns on the TV, which turns on the PlayStation, which requests to be displayed, which switches the TV to displaying the PlayStation. So you end up viewing the PlayStation when you wanted to stream Netflix on your Apple TV). I found that the only way to fix this problem is to sit between the receiver and the TV to break the cycle. Hence, the PCB.
Amity is available here:
https://github.com/retsyx/amity
- Super cool, I'm definitely going to have to grab a pi and set this up. Now if we could also solve the ps5/switch/etc not turning off the TV, my setup would be perfect!
by Hackbraten
1 subcomments
- Nice hack! The cat seems to be happy with the setup, too!
- I wrote related kind of thing a while back: https://github.com/askvictor/ChromecastControls . Though I haven't used it since upgrading most of my AV gear.
by theLegionWithin
0 subcomment
- that was an interesting read. glad I do all of my video watching & games playing on a computer instead of consumer grade hardware!
by colechristensen
2 subcomments
- The first time I "discovered" CEC was when the arrow keys on my TV remote inadvertently navigated the PS3 system menu. I thought I was hallucinating because there was no mechanism for this magic to happen.
- Genius. I might have a pretty good use for this, since I have constant issues with my consoles fighting for the TV.
by VerifiedReports
0 subcomment
- Well, from the article I learned about Homebridge, which integrates non-Homekit products into Homekit.
Yay!
- I really need this in my life. Once upon a time, things were good and our Chromecast with Google TV knew _exactly_ how to turn on our soundbar, set our TV to output sound to said soundbar, control the volume on that soundbar using IR.
Now absolutely nothing of that works. The audio output on the TV is set seemingly semi-randomly depending on content!?. The volume controls just stopped working, and I can not FIND THE SETTINGS in the menus? I suspect it is required to completely redo the remote setup to see those settings, OR as I rather suspect: they broke this shit in purpose to get us to buy a new Google TV Streamer.
by jauntywundrkind
1 subcomments
- I know it's called a bus, but I'm still surprised that all devices get the HDMI-CEC stream of all other devices. Being able to watch the Apple TV from the Pi was super cool, and I never would have guessed it was possible to see what was going on there (short of building a man in the middle hardware proxy)!
by rogerallen
0 subcomment
- This is the content I come here for.
by pyrolistical
2 subcomments
- Now package that into a tiny device with an hdmi plug.
Better hurry befor-, too late it’s cloned in china.
Actually it would be funny if somebody integrated this fix into a cable
by neuroelectron
1 subcomments
- "Media closet tour"
Just looks like a Rube Goldberg server to me. This is really illustrative of the nonsense that media copyright has manufactured. I'm not going to solve "HDMI-CEC weirdness with a XYX" I'm going to download the movie from a torrent or run an emulator.