# How to get the TiVo to play nice with HDMI-CEC



## bdraw (Aug 1, 2004)

I love my TiVo peanut remote and have never found a programmable remote that I felt wasn't a compromise to use instead. So while I have a Harmony, in the end it just ends up adding to the remote clutter. This is because I also like certain features of my remote for my Apple TV, AVR, TV and my PS4 controller.

So it ends up that the only device that doesn't work with HDMI-CEC in my home theater system is my TiVo. And while I dream of being able to control the volume and power of my system with my TiVo iPad and iPhone App, at this point I'm just happy I figured out a way to get my TiVo to play nice with CEC.

Before I implemented this solution, often when my Harmony would turn on my TV a few seconds after the activity fired, one of my CEC enabled devices would become active and switch the input on my AVR to that device. To fix it, I had to either use the Harmony to select the correct input, or just grab the AVR remote and hit input 2. I tried all kinds of work arounds in the Harmony activity, but most people online just suggested disabling CEC completely. Only this wasn't really workable because my TV requires CEC for the Audio Return Channel and right now my TV is the only way I can watch HDR via Netflix, Amazon and Vudu, so disabling HDMI-CEC completely isn't an option.









This solution essentially adds just enough CEC to the TiVo for the other devices to realize it is in use and doesn't switch the input unexpectedly. It also makes it so that the TiVo shows up on my TV's input list, which means I can use the input button on the TiVo remote to change the input on the AVR and watch TV. Best of all I don't even need the Harmony to watch TV anymore, I just turn the TV on and off by programming the TV power button on the TiVo remote, then I press the TiVo button to turn on the TV. When I'm done I just turn the TV off using the same button. Even a babysitter could figure that out.

*Overview of solution:*
Program the TiVo remote to control the TV's power and input.
Program the TiVo remote to control the AVR volume and mute.
Buy a Raspberry PI and Pulse-Eight CEC Adapter and configure it, basically $100 in parts - if you don't already have some of it. Should take about an hour, because the PI processor takes a long time to compile.

*Materials* (thanks in advanced for using my Amazon affiliate links)
Raspberry pi $35
CEC Adapter $50
USB power supply or USB micro to USB cable and use the TiVo's USB port for power.
16GB SD Card (can use as small as a 2GB)









Download Raspbian Jessie Lite and follow installation instructions to install to SD Card using your regular computer.

*Now lets connect everything.*
Insert the SD Card
Connect CEC Adapter to the Pi via included USB
Connect CEC Adapter inline between your TiVo and your AVR or TV.
Connect PI NIC to a switch for configuration and troubleshooting
Connect PI Micro USB to the TiVo for power
Give it some time to boot and then get the IP from your DHCP server

*Now lets configure it*
Login via SSH with pi/raspberry and change the password with passwd command (use putty on windows)
Run the following commands on the PI to update it and configure the CEC adapter:

```
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
reboot
sudo apt-get install git cmake liblockdev1-dev libudev-dev libxrandr-dev python-dev swig
git clone [URL]https://github.com/Pulse-Eight/platform.git[/URL]
mkdir platform/build
cd platform/build
cmake ..
make
sudo make install
cd
git clone git://github.com/Pulse-Eight/libcec.git
cd libcec
vi CMakeLists.txt
```
Add this line next to the other lines that start with "set" (try pico if you don't want to lookup vi shortcuts)

```
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
mkdir build
cd build
cmake -DRPI_INCLUDE_DIR=/opt/vc/include -DRPI_LIB_DIR=/opt/vc/lib ..
make -j4
sudo make install
sudo ldconfig
```
Now that libcec and thus cec-client are installed, you need to figure out the physical address of your device. Just like TCP/IP, CEC has a physical and logical address. But instead of a MAC and an IP, CEC's logical address is based on the type of device (0-15, TV is zero, etc) and the physical address is based on which port of the TV it is connected to. The TV is always 0.0.0.0 and if you had your TiVo connected directly to HDMI1, then your TiVo would be 1.0.0.0. My TiVo is connected to my AVR's port 2, which is in turn connected to my TV's port 2, so my TiVo's logical address is 2.2.0.0. The reason why this is important is because you want to ensure both the TV and the AVR are on the correct input when you select the TiVo to be the active device.

Now that I know my CEC physical address and I know I want my TiVo to show us as "TiVo" on my other devices on-screen displays, this is the command I'll launch cec-client with:

```
cec-client -b 2 -p 2 -o TiVo
```
Run cec-client -h for details, but basically -b is the TV's input, -p is the AVR's input and -o is the OnScreen display name (cectester is the default).

Since I want cec-client to run even after I disconnect from SSH or restart the Raspberry PI, I edit rc.local with the following command:

```
sudo vi /etc/rc.local
```
Then add this command to the end to get the cec-client to start on boot

```
nohup cec-client -b 2 -p 2 -o TiVo > /dev/null 2>&1 &
```
Next I'm looking for a way to turn the system on with just the TiVo button. I'd like to find a way to detect the push of the TiVo button with the PI (perhaps with an IR receiver) and then send the Active Source command from the CEC Adapter. This way I can just use one button on one remote, no matter which input was used when the TV was turned off.


----------



## ehharley1 (Apr 28, 2016)

Sounds bad ass,
I'm impressed. I've been curious to see some real world applications of Raspberry Pi


Sent from my iPhone using Tapatalk


----------



## DatCFC (Nov 22, 2016)

This is great, and solves my current dilemma.
I just got a Roamio Plus last week, and was pretty sad that it didn't have HDMI-CEC.
Not sure when I'll be able to, but I've added this on my to do list.
I'm wondering though, if there's a way I could leverage my HTPC to do the same as the PI.
I'm currently using a Pulse-Eight CEC adapter with the PC, but I have my doubts that I'd be able to run two adapters off the single PC.

For now, I have my TiVo hooked up to an HDMI input directly on my TV (LG), so I can still have CEC enabled and use ARC, however, I don't have Dolby Digital pass through, so I'm settling for 2.0 audio.
If your TV can pass-through 5.1 from other HDMI inputs via ARC, that may work for you.

Thanks for sharing!
CFC


----------



## bdraw (Aug 1, 2004)

You should be able to use two, but you probably only need one. CEC is a shared bus without any authentication. There is an Eventghost plug-in for the CEC-Adapter. You should be able to use it to configure automated tasks for both apps. The trick will be getting Eventghost to know when you are using the TiVo and when you are using your HTPC. If you have an IR reciever you can probably key off a remote code. 

I'm working on an update to this post to add IR. Basically I want to be able to hit the power button the TiVo remote and have everything turn on and wake up the TiVo with one button press -- if only TiVo would make the power button able to do macros.


----------



## DatCFC (Nov 22, 2016)

Hmm... I'm not visualizing how I'd use just one.
Are you suggesting simply switching the logical address on the CEC app based on which device I'm wanting to use? Or perhaps you mean with the Eventghost plug-in? As far as I can tell, the Windows CEC app detects the logical address automatically, but I haven't investigated it further since it did what I needed it to with just the HTPC.
Interesting.
I have an IR receiver - an MCE RC6 compatible one.

Another thought I had was using an IR capable HDMI switch to toggle between HTPC and TiVo, thus not needing to change the CEC logical address.

CFC


----------



## bdraw (Aug 1, 2004)

Yes, you should be able to either switch the physical & logical address of the adapter. Another option would be to just send the commands you want manually. There is no authentication, so if you send a command saying device 1 wants to be active, no one will question where the command came from. This might be easier said then done, as some CEC commands expect a level of interaction.

I currently have lirc working to send 1f:82:22:00 (1-logical source address|f- destination broadcast:82-active source command|2200- HDMI2TV,HDMI2AVR) when the input button on my TiVo button is pressed. I could just as easily send some other input. You can figure out all kinds of commands on CEC-O-MATIC and send them on the bus.

The CEC app does auto detect the USB device and physical address, you can manually specify it, though.


----------



## DatCFC (Nov 22, 2016)

Ok, I think I understand.
Where you're using lirc, I'd instead use eventghost to send a command to the CEC adapter?
In my case, I have my AVR connected to the TV's HDMI 1, my HTPC to HDMI 3 of the AVR passing through the CEC adapter, and the TiVo I will have it say on HDMI 2 of the AVR with a direct HDMI cable connection.
If I wanted to switch to HTPC, I'd need to send 4F:82:13:00 (as a playback device)
If I wanted to switch to TiVo, I'd need to send 1F:82:12:00 (as a recording device)
Sounds about right?
I really appreciate the help. Would be really nice if I didn't even need to get more hardware.

CFC


----------



## bdraw (Aug 1, 2004)

You got it, but the trick is I think you'll need to register the logical device first. By default the CEC Adapter registers itself as logical device 1 (recorder). The other devices may not respond to a command if it doesn't know about the device. That's why you may just need to get Eventghost to switch from HTPC to the TiVo, since that is how the software is written to work. This way you can still use one device and you probably don't ever need the output of the HTPC and the TiVo at the same time.

You can read about the addressing here, but basically the logical address is between 0 and 15, and is like an IP address. The physical address is based on the input, and is like a MAC address.

The HDMI-CEC bus - wikwikwai


----------



## DatCFC (Nov 22, 2016)

I think I'm getting it.
Based on logical/physical with my given scenario I'm thinking now:
To switch to HTPC, I'd need to send 1F:82:13:00 (logical address 1)
Then to switch to TiVo, would I need to send FF:82:12:00 (as an unregistered device) or EF:82:12:00 (as a "Free Use" device)? Or would it just be 1F:82:12:00 - keep the CEC Adapter as the logical device, but "fake" the actual physical address?
Then again, does it even matter what the first byte (source) is since it's simply broadcasting an active source request? Shouldn't matter where the message is coming from.
Guess I have some testing to do 

What did you program your TiVo remote's "Input" button to? Just a random device so that lirc can capture it?

CFC


----------



## bdraw (Aug 1, 2004)

Yes, that's the basic idea. What I don't know is if a device will switch inputs from a logical device it doesn't know about. I've watched the BUS and the devices query each other, so I suspect if a device is unknown and doesn't respond to quries, it may not respond to active source requests from it. 

But what I think you might be able to do is to get Eventghost to stop the HTPC CEC service, start up CEC again as the TiVo and issue commands. Then both devices will be known. It'll require some testing, and worst case you get another CEC Adapter and have the HTPC use one and Eventghost use the other. This should be as simple as not using auto-detect. 

I used the IR command for a generic device in the list, then just used lirc to capture the command.
Hold Input & TiVo for 5 sec, Enter 0014


----------



## DatCFC (Nov 22, 2016)

Unfortunately, it doesn't seem like sending commands through EventGhost will cut it.
When sending command, the input switches correctly, but immediately reverts back to the previous. Haven't figured out a way to keep it active.
For now I've hard coded the TiVo's physical address to the CEC-Adapter tray application, and it works like your PI setup.
Not perfect, but good enough. I may need to get that additional adapter eventually, but this will hold me over.
I don't mind manually switching to the HTPC since I'll be using it less and less (RIP Windows Media Center :sob

I really appreciate the tips.
Are you Ben Drawbaugh previously of Engadget? Really like your work. I read up on your old Roamio review before deciding to pull the trigger on this one. Where do you write these days?

CFC


----------



## bdraw (Aug 1, 2004)

That's interesting that it works but then switches back, but not surprising. 

Yeah, that's me. I haven't written anything other than on forums and stuff in a few years. It was always a second job for me, so now I just have one job. It was a lot of fun while it lasted. Thanks for the kind words.


----------



## SFDave (Aug 25, 2006)

Thanks for this guide. I have an Onkyo TX-NR626 receiver and an LG OLED65E6P TV. I was having the same issues you described. This solved it for me too. In addition to a TiVo, I have a PS3, a PS4, and a Fire TV connected to the AVR. I had to disable CEC on the PS3 and PS4, because every time I turned on the TV, it turned on the PS3 and PS4 too. I previously had this connected to a Samsung PN60F8500 TV, and it didn't turn on any connected CEC devices, which was the behavior I preferred.

I did have to make some adjustments to your guide. The link to the Raspberry PI is a model that uses a micro SD card instead of an SD card. These newer models also don't have SSH enabled by default, so I had to connect a wireless keyboard and monitor (TV) to enable it.


----------



## jonw747 (Aug 2, 2015)

I ran in to an issue getting this work, seems to be related to getting the physical address assigned. I finally got it working by manually setting the physical address with the "pa ab cd" command where a.b.c.d is the physical address of the TiVo.


----------



## AppleTechy (Dec 31, 2017)

Hello. I seem to be having some issues. I have an LG TV on port 2(Which supports ARC), then connected to my Yamaha TSR-7810 receiver which on HDMI port 3 is connected to the TiVO(with adapter/RPI in between the two). When I run the command given, when power cycling the system when previously set to the correct HDMI 3 input on the receiver with everything working; it seems to end up setting my receiver to AV4 which is the audio only, however, the TiVo visual is still getting passed through to the TV. It seems that the receiver is recognizing the CEC but is mis-interpreting(?) the signal and sets the video to HDMI input 3 on the receiver but sets the audio to AV4. Is there some TX command I can send that tell the receiver to read the audio from the HDMI port? Any ideas or guidance would be much appreciated!


----------



## kpeters59 (Jun 19, 2007)

Wait...what?

What port is the TV plugged in to?









-KP


----------



## AppleTechy (Dec 31, 2017)

kpeters59 said:


> Wait...what?
> 
> What port is the TV plugged in to?
> 
> ...


HDMI-out 1 which is arc complaint. And the TiVo is plugged into HDMI-in 3


----------



## dougdingle (Jul 4, 2007)

CEC is an undisciplined public domain crapshoot. Sometimes it works, more often it doesn't.

There are literally *thousands *of posts on the AVS forum threads (including the thread for your Yamaha, which I used to own) with complaints about it being randomly messed up.

I finally got fed up and am using a Harmony 700 remote to control things, and it's much more reliable. Takes some programming of it to get it right, but once it's working, it just works.

The Yamaha and CEC drove me crazy, as did the Denon with which I replaced it. As long as CEC remains public domain, and manufacturers are free to 'improve' the protocol as they wish, randomly adding and removing and modifying commands and structure, it will remain useless garbage for most users.


----------



## AppleTechy (Dec 31, 2017)

dougdingle said:


> CEC is an undisciplined public domain crapshoot. Sometimes it works, more often it doesn't.
> 
> There are literally *thousands *of posts on the AVS forum threads (including the thread for your Yamaha, which I used to own) with complaints about it being randomly messed up.
> 
> ...


I do use a Harmony Hub remote. The reason I want it to declare itself as a CEC device, is when I turn off the setup from watching TiVo when I turn it back on the Apple TV normally hijacks the input. So it's not to be able to use the TiVo remote to control the setup, but rather to prevent the hijacking. Is there anyway to scan the Yamah to figure out what command it is picking up for the TiVo when it's set to the TiVo input. I don't want to send any commands, just simply prevent the hijacking. Any ideas?

Sent from my iPhone using Tapatalk


----------



## dougdingle (Jul 4, 2007)

If you have a component that you don't want issuing CEC requests (if I understand what you mean by 'hijacking'), you can use an adapter like this one in line with its HDMI cable:

HDMI NON-CEC Adapter Type A M/F

All it does is not allow HDMI pin 13 (the CEC signal) to go through it.


----------



## AppleTechy (Dec 31, 2017)

dougdingle said:


> If you have a component that you don't want issuing CEC requests (if I understand what you mean by 'hijacking'), you can use an adapter like this one in line with its HDMI cable:
> 
> HDMI NON-CEC Adapter Type A M/F
> 
> All it does is not allow HDMI pin 13 (the CEC signal) to go through it.


Thanks, I didn't know those existed. However that won't work for me. I like the Apple TV remote too much to give up using it 

Sent from my iPhone using Tapatalk


----------



## kpeters59 (Jun 19, 2007)

Why would that stop the Apple TV Remote from working?

-KP


----------



## AppleTechy (Dec 31, 2017)

kpeters59 said:


> Why would that stop the Apple TV Remote from working?
> 
> -KP


So the issue is that the Apple TV keeps using CEC to hijack the TV. So I would have to put an adapter on the Apple TV line. And I have the Apple TV configured to use CEC to turn everything on/off and control volume.

Sent from my iPhone using Tapatalk


----------



## kpeters59 (Jun 19, 2007)

Welcome to the _wonderful_ world of CEC. The reason I never rely on it. It's amusing to see what it does, though.

The Raspi CEC adapter arrangement can't be setup to overcome some of these issues? It's the most interesting thing I've seen in CEC in awhile...

-KP


----------



## AppleTechy (Dec 31, 2017)

kpeters59 said:


> Welcome to the _wonderful_ world of CEC. The reason I never rely on it. It's amusing to see what it does, though.
> 
> The Raspi CEC adapter arraignment can't be setup to overcome some of these issues? It's the most interesting thing I've seen in CEC in awhile...
> 
> -KP


Well that's what I am trying to do. I simply have it inline between the TiVo and receiver hoping to have it declare a CEC device so the AppleTV(even sometimes the Playstation) realizes a device is currently playing and won't hijack it. But with the CEC adapter I can't even get the LG TV to recognize the adapter as a CEC device. I just need the TV to recognize the CEC adapter as a CEC device, that's it

Sent from my iPhone using Tapatalk


----------



## kpeters59 (Jun 19, 2007)

Maybe if you unplug everything else, the TiVo and Pulse-Eight adaptor will be detected. This might indicate that it's physical address isn't set correctly?

-KP


----------



## AppleTechy (Dec 31, 2017)

kpeters59 said:


> Maybe if you unplug everything else, the TiVo and Pulse-Eight adaptor will be detected. This might indicate that it's physical address isn't set correctly?
> 
> -KP


I'm thinking it's physical address isn't being set correctly but setting it based off the other CEC registered addresses, it theoretically should be right.

Sent from my iPhone using Tapatalk


----------



## kpeters59 (Jun 19, 2007)

Does it get detected if you plug it directly in to the TV CEC port?

-KP


----------



## dalesd (Aug 2, 2001)

Hi Guys,

I almost got this working. A few notes: 
Raspbian Jesse ins't easily available any more, so I used RASPBIAN STRETCH LITE instead.


```
E: Unable to locate package liblockdev1-dev
```
This package isn't available, but things seem to work without it.

*ssh* is now disabled by default in Raspbian. The easy (for me) fix was to create an empty file on the boot partition of the SD card. Name that file "ssh" and ssh will be enabled. Do this on your PC before you put the SD card in the RPi.

Here's what I wand to do where I'm stuck.

TiVo is connected to the Denon AV receiver with the CEC device in-line. I also have a Chromecast 4k connected to the AV receiver. I can cast to the Chromecast and it automatically switches to the correct input, but to change back to the TiVo, I need to get the AV receiver remote and change the input. This is no big deal for me, but it's quite confusing for other household members.

Can I get this to work? I think it's very similar to what bdraw is doing, (make the TiVo show up in the input select screen when you push the "input" button on the TiVo remote) but I can't figure out the syntax of the command I need. 
Could someone help me out with the command I need to do this?

Here's what I get when I query the CEC bus for a list of devices:


```
[email protected]:~ $ echo scan | cec-client -s -d 1
opening a connection to the CEC adapter...
requesting CEC bus information ...
CEC bus information
===================
device #0: TV
address:       0.0.0.0
active source: no
vendor:        LG
osd string:    TV
CEC version:   1.3a
power status:  on
language:      eng


device #1: Recorder 1
address:       1.0.0.0
active source: no
vendor:        LG
osd string:    CECTester
CEC version:   1.3a
power status:  on
language:      eng


device #3: Tuner 1
address:       1.0.0.0
active source: no
vendor:        Denon
osd string:    AV Receiver
CEC version:   unknown
power status:  on
language:      ???


device #4: Playback 1
address:       1.6.0.0
active source: no
vendor:        Google
osd string:    Chromecast
CEC version:   1.4
power status:  on
language:      ???


device #5: Audio
address:       1.0.0.0
active source: no
vendor:        Denon
osd string:    AVR-X2300W
CEC version:   1.4
power status:  on
language:      ???
```


----------



## kpeters59 (Jun 19, 2007)

How can there be 2 devices with the same address?
Wouldn't that be some kind of conflict?

-KP


----------



## AppleTechy (Dec 31, 2017)

kpeters59 said:


> Maybe if you unplug everything else, the TiVo and Pulse-Eight adaptor will be detected. This might indicate that it's physical address isn't set correctly?
> 
> -KP


Well I tried plugging it in directly to the TV HDMI 1. Even the TV wouldn't pick up that the CEC.


----------



## kpeters59 (Jun 19, 2007)

So, it sounds like the Pulse-Eight is not working properly.

Is there a way to 'reset' it and start over?

-KP


----------



## AppleTechy (Dec 31, 2017)

kpeters59 said:


> So, it sounds like the Pulse-Eight is not working properly.
> 
> Is there a way to 'reset' it and start over?
> 
> -KP


Not sure. My google skills pulled up nothing. I think the USB Adapter runs its own firmware, so I event thought about reseting that but I couldn't find out any info


----------



## AppleTechy (Dec 31, 2017)

dalesd said:


> Hi Guys,
> 
> I almost got this working. A few notes:
> Raspbian Jesse ins't easily available any more, so I used RASPBIAN STRETCH LITE instead.
> ...


 Yeah I am having the same issue. With my setup. And even when its plugged directly into the TV and I am declaring the address, the LG TV still won't pick it up. You figure it out?


----------



## kpeters59 (Jun 19, 2007)

This article has some good info:

Pulse-Eight USB CEC Adapter Review

-KP


----------



## alexb (Jan 4, 2003)

I gave up using CEC long time ago it is so unreliable, just have you harmony activity set the right inputs and output fo each activity. Works reliably, simple to use and understand. I see no benefit to ARC with a reciever. No if you have source -> TV (picture and sound) -> soundbar (sound only) that makes sense to me but for receivers always go source (picture and sound) -> reciever -> TV (picture only).

But whatever works for you.


----------



## bimmer95 (Jan 15, 2018)

The Pulse-8 adapter defaults to physical address 1.0.0.0 and has no intelligence built in to auto detect the actual port to which it is connected. You have to manually assign the physical address it should be using via whatever application you're running. For instance, if your receiver is 2.0.0.0 and the adapter is connected to HDMI-3, then the physical address should be 2.3.0.0.

I've been running a modified version of pyCecClient on a RPi for the last year or so to get around issues with my TV automatically switching away from my old DVR when first turned on, along with redirecting CEC commands to IR commands. I got the original code from this site, Raspberry Pi as HDMI-CEC to IR Bridge

I'm currently in the process of changing the IR commands to TCP socket connections, as that seems more reliable now that I have a Bolt Vox instead of a crappy TWC DVR. I was able to change channels on the Bolt via the original TV remote over the weekend before running out of free time. Shouldn't take much more work at this point to get everything else working.


----------



## rhettf (Apr 5, 2012)

I just set this up, thank you so much for the tutorial! I was running into a little trouble at first and it was because I use ARC with my TV. So while the receiver plugged into HDMI 2 on the back of my LG the TV assigned HDMI 5 to the port when ARC is on.

So while I thought I would run the command:

cec-client -b 2 -p 1 -o TiVo 

I actually had to enter:

cec-client -b 5 -p 1 -o TiVo

Now I have a happy wife! If you ever figure out how to get the input to switch with the use of the TiVo button, I would love to know!


----------



## AppleTechy (Dec 31, 2017)

rhettf said:


> I just set this up, thank you so much for the tutorial! I was running into a little trouble at first and it was because I use ARC with my TV. So while the receiver plugged into HDMI 2 on the back of my LG the TV assigned HDMI 5 to the port when ARC is on.
> 
> So while I thought I would run the command:
> 
> ...


Thanks so much. This worked for me! For anyone else I have an LG TV 65UJ6540. The TiVo is a Roamio Pro. The Yamaha receiver is a TSR-7810. So moral of the story if you are using an LG tv and have arc enabled it changes the port number. I was able to get the TV to recognize the device by running `cec-client -b 5 -p 3 -o TiVo` even though the receiver is plugged into port 2 on the TV


----------



## wsmeyer (Jun 23, 2009)

This is awesome and is exactly what I am trying to accomplish.

Unfortunately the current version; RASPBIAN STRETCH LITE is different enough that the setup doesn't seem to work.

This works:
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get dist-upgrade

This fails:
- reboot
Should it be sudo reboot?
I just power cycled to reboot.

This part fails:
- sudo apt-get install git cmake liblockdev1-dev libudev-dev libxrandr-dev python-dev swig
- ERROR: Unable to locate package liblockdev1-dev
Someone else mentioned it worked without it so I just continued.

Next line fails:
- git clone [ URL ] https ://github .com/Pulse-Eight/platform.git [ URL /]
But works removing the [ URL ] :
- git clone https ://github. com/Pulse-Eight/platform.git

Then these work:
- mkdir platform/build
- cd platform/build

Then this fails: - cmake ..
Honestly can't remember the error but I can run through it again if necessary.

This failed: - git clone git://github.com/Pulse-Eight/libcec.git
But I did figure out how to install git.

I was not able to get anywhere after that. Would really like to get this going but I'm afraid I don't have the knowledge to figure it out from scratch.

Any help much appreciated!


----------



## bdraw (Aug 1, 2004)

You'll have to run cmake from platform/build again and share the error.


----------



## mattyro7878 (Nov 27, 2014)

I simply dont want my receiver being turned on and off several times a day. Like my Tivo , I leave my electronics on 24/7. Like a light bulb, most electronics break when powering up or down


----------



## tomhorsley (Jul 22, 2010)

The best way to make HDMI-CEC work correctly is to put some of the HDMI adapters that simply don't pass pin 13 (CEC) on everything (or at least everything that doesn't have a working option to turn off CEC), then use a harmony remote to actually turn on and off the stuff you really want working at any given moment. CEC was carefully engineered by teams of experts to always do the wrong thing .


----------



## JoeKustra (Dec 7, 2012)

tomhorsley said:


> The best way to make HDMI-CEC work correctly is to put some of the HDMI adapters that simply don't pass pin 13 (CEC) on everything (or at least everything that doesn't have a working option to turn off CEC), then use a harmony remote to actually turn on and off the stuff you really want working at any given moment. CEC was carefully engineered by teams of experts to always do the wrong thing .


It sounds like you have much better knowledge of CEC than I do. I have a Mini VOX, HDMI to an older 1080p Sony TV. I have Sony's CEC disabled. When finished with the Mini, I put it into Standby. If I power off the TV at that time, the Mini never enters Standby. If I wait for the Mini to enter Standby, then turn off the TV, it's happy. Turning on the TV does not wake up the Mini. I also have an A93 Mini with Encore on that TV and it doesn't care if I power off the TV. Is this CEC related?


----------



## dougdingle (Jul 4, 2007)

tomhorsley said:


> The best way to make HDMI-CEC work correctly is to put some of the HDMI adapters that simply don't pass pin 13 (CEC) on everything (or at least everything that doesn't have a working option to turn off CEC), then use a harmony remote to actually turn on and off the stuff you really want working at any given moment. CEC was carefully engineered by teams of experts to always do the wrong thing .


Actually, the original design and implementation of CEC was pretty decent. The mistake was making it public domain, and opening up the specification to any stupid thing any manufacturer wanted to include. And there are some seriously stupid manufacturers out there.

There are very few implementations any more that adhere strictly to the original spec. Most manufacturers either drop portions that don't interest them, or more likely, change parameters and sometimes add endless crap that doesn't work universally to try to lock people into buying a single a brand.

The one constant in the CEC universe is that if you call a manufacturer's tech support to ask or complain about CEC matters, you will get this stock answer (because they've tortured the spec beyond recognition): _*"CEC works fine if all the connected components come from us! Otherwise, we can't guarantee anything about it."
*_
I run a Roamio Pro, a Denon AVR, a Samsung UHD player, an Amazon Fire streaming box, and an LG OLED TV, and just for giggles I tried turning CEC on everywhere to see what would happen, and as expected, I got random pieces turning on and off, and inputs on the Denon and the LG randomly changing because they all have their own CEC implementations and 'extensions' that work poorly with other brands, deliberately.

I turned it off on everything. I use a 100% reliable switching power strip to power everything when I turn on the TV, and a harmony remote to switch sources as needed.


----------



## TeamPace (Oct 23, 2013)

Thought I had read somewhere in recent months that CEC was finally coming to TiVo? TiVo is the only device I own that can't turn the TV on and switch to the correct input when I push a button on the remote. While I can certainly do what I need to in order to switch over to TiVo, it would be so much easier if TiVo could manage this. My primary devices for watching TV are my TiVo (for OTA & select apps) and FireTV for everything else. I have added a FireTV Recast DVR on my system, so at least guests can simply pick up the FireTV remote and watch most everything from local channels, to recordings, Directv Now streaming, Hulu, Netflix, Amazon Prime, etc. And it's all controlled by one simple remote through one interface. Only issue is I wish the TiVo could play a bit more nicely with everything as it's still the superior DVR experience.


----------



## HerronScott (Jan 1, 2002)

TeamPace said:


> Thought I had read somewhere in recent months that CEC was finally coming to TiVo? TiVo is the only device I own that can't turn the TV on and switch to the correct input when I push a button on the remote. While I can certainly do what I need to in order to switch over to TiVo, it would be so much easier if TiVo could manage this. My primary devices for watching TV are my TiVo (for OTA & select apps) and FireTV for everything else. I have added a FireTV Recast DVR on my system, so at least guests can simply pick up the FireTV remote and watch most everything from local channels, to recordings, Directv Now streaming, Hulu, Netflix, Amazon Prime, etc. And it's all controlled by one simple remote through one interface. Only issue is I wish the TiVo could play a bit more nicely with everything as it's still the superior DVR experience.


CEC was included in the last TE4 update.

Tivo Customer Support Community

Scott


----------



## stevepow (Sep 3, 2014)

TiVo CEC is a little green at the moment:
- can cause audio to be silent when switching back to TiVo from another source - toggle TiVO PCM / Dobly setting to restore audio.
- sends CEC Mute, even with no TV or AVR programmed - so if you program your TV or AVR, mutes will likely be doubled up and not work.
- sends CEC Vol Up/Down pulses - one per button push, so it can also make programmed TV/AVR volume control a little funky. With no TV or AVR programmed, the volume is one push at a time and not so convenient.

It does power on everything with the push of the TiVo button and selects the proper AVR input which is nice, but the other issues outweigh that for me. Looking forward to an update.


----------



## TeamPace (Oct 23, 2013)

HerronScott said:


> CEC was included in the last TE4 update.
> 
> Thanks for the response. I'm not sure why it's not working for me. I've gone thru all the TiVo setting and don't see anywhere to turn it on. Also looking for settings on my TV. It works for other inputs and devices on my TV.
> 
> ...


Not sure it's bit working


----------



## HerronScott (Jan 1, 2002)

TeamPace said:


> Not sure it's bit working


Are you running TE4/Hydra?

Scott


----------



## TeamPace (Oct 23, 2013)

HerronScott said:


> Are you running TE4/Hydra?
> 
> Scott


I'm on Hydra 21.8.3.RC4-846-6-846


----------



## DatCFC (Nov 22, 2016)

HerronScott said:


> CEC was included in the last TE4 update.
> 
> Tivo Customer Support Community
> 
> Scott


Didn't realize it went live.
I'm still not on Hydra, and was waiting for this to take the plunge.
Have they given any clue if and when this will also be coming to the mini?

Thanks,
CFC


----------



## tomhorsley (Jul 22, 2010)

Another good reason to never go to Hydra. CEC is specifically designed to always do the wrong thing .


----------



## man cave (Nov 15, 2014)

CEC doesn't work on Tivo. Never could get it to work.


----------



## HerronScott (Jan 1, 2002)

TeamPace said:


> I'm on Hydra 21.8.3.RC4-846-6-846


Did you follow the link that I supplied to the TiVo article on it? That shows how to enable it on your TiVo.










Scott


----------



## HerronScott (Jan 1, 2002)

DatCFC said:


> Have they given any clue if and when this will also be coming to the mini?


I don't believe so and the article I linked to indicates the following:

*Note: *TiVo Mini VOX and Mini are not compatible.

Scott


----------



## tenthplanet (Mar 5, 2004)

tomhorsley said:


> Another good reason to never go to Hydra. CEC is specifically designed to always do the wrong thing .


You can't blame CEC on Hydra, it's sins predate the interface.


----------



## man cave (Nov 15, 2014)

HerronScott said:


> Did you follow the link that I supplied to the TiVo article on it? That shows how to enable it on your TiVo.
> 
> View attachment 39211
> 
> ...


Yep. Still doesn't work.


----------



## TeamPace (Oct 23, 2013)

Flipped the switch under settings/remote and CEC is working to turn on TV and switch inputs now. So far haven’t noticed any problems. It simplifies things! Hope they bring it to Mini as well.


----------



## DatCFC (Nov 22, 2016)

Went ahead and upgraded to hydra - 1 Roamio box, and 3 minis.
So far, so good I must say.
The Roamio behaves as I'd expect. I can press the TiVo button to turn the TV on, or automatically switch to its input.
I'd read some folks were getting issues with the mute button also causing an input switch, but I haven't ran into that. Perhaps because my remote is controlling the sound bar volume and not the TV's?
Either way, I like Hydra just fine. I think reading all the mostly negative feedback had me bracing for the worst, but it's not too bad.

CFC


----------



## SFDave (Aug 25, 2006)

I could never get this to change to the correct HDMI ports. My TiVo (connected to the raspberryPi) is plugged into port 5 of my AVR. My AVR is connected to port 2 on my TV. The commands in the OP said I should use the command:
cec-client -b 2 -p 5 -o TiVo
instead I used this command, to change the physical address:
echo "pa 25 00" | cec-client -t r -o TiVo
where in "pa 25 00" the "2" is my TV port, and the "5" is the AVR port.


----------

