I am planning to use R-Pi to replace an old Xbox1 running XBMC ... but I had hoped to do this without having to plug in a keyboard.
I had hoped to control it using the remote control of the TV and then use HDMI CEC controls (once mapping for Sony Bravia remote control pass-through via CEC is worked out).
However, although the forum FAQ says that CEC is supported, the wiki says that there are no drivers for it.
Can anyone (probably from R-Pi or TeamXBMC) comment on plans in this area?
I did some hunting around and found a couple of open source projects working on HDMI CEC - but also Pulse-Eight, who have built a small box to take HDMI and route the CEC signals to USB. Looks like Pulse-Eight and TeamXBMC have at least one shared person.
However, would be a shame to buy another box, around the same price as R-Pi just to control it.
Another route would be to plug in Infrared-USB device and control it using my Xbox remote - again a shame to have to plug in something extra.
HDMI CEC and XBMC
96 posts
Page 1 of 4 1, 2, 3, 4
Paul Webster said:
I have seen a TV via its remote, control the same GPU over HDMI CEC to get it to play, pause etc. However, I don't know how/if that functionality is on the Raspi. So best I can say is that it's technically feasible.
I am planning to use R-Pi to replace an old Xbox1 running XBMC ... but I had hoped to do this without having to plug in a keyboard.
I had hoped to control it using the remote control of the TV and then use HDMI CEC controls (once mapping for Sony Bravia remote control pass-through via CEC is worked out).
However, although the forum FAQ says that CEC is supported, the wiki says that there are no drivers for it.
Can anyone (probably from R-Pi or TeamXBMC) comment on plans in this area?
I did some hunting around and found a couple of open source projects working on HDMI CEC - but also Pulse-Eight, who have built a small box to take HDMI and route the CEC signals to USB. Looks like Pulse-Eight and TeamXBMC have at least one shared person.
However, would be a shame to buy another box, around the same price as R-Pi just to control it.
Another route would be to plug in Infrared-USB device and control it using my Xbox remote - again a shame to have to plug in something extra.
I have seen a TV via its remote, control the same GPU over HDMI CEC to get it to play, pause etc. However, I don't know how/if that functionality is on the Raspi. So best I can say is that it's technically feasible.
- Moderator
- Posts: 6900
- Joined: Sat Jul 30, 2011 7:41 pm
You can find some information about coding CEC support for XBMC here
http://www.solid-run.com/mw/in....._over_HDMI
http://www.solid-run.com/phpbb.....#038;t=204
Pulse-Eight said at least that they would welcome patches to libCEC for other CEC hardware chips than their own in their upstream libCEC
http://blog.pulse-eight.com/20...../#comments
I asked Pulse-Eight this
and I got this reply
So you need to start by finding out which HDMI transmitter chip that Raspberry Pi uses so that you can get the display controller sample code and CEC module from the manufacturer.
Then you have to integrate that code into libCEC
https://github.com/Pulse-Eight/libcec
http://libcec.pulse-eight.com
Hopefully someone will code this up and submit as a pull request patch for libCEC upstream to Pulse-Eight on GitHub
http://www.solid-run.com/mw/in....._over_HDMI
http://www.solid-run.com/phpbb.....#038;t=204
Pulse-Eight said at least that they would welcome patches to libCEC for other CEC hardware chips than their own in their upstream libCEC
http://blog.pulse-eight.com/20...../#comments
I asked Pulse-Eight this
Would you consider adding support for other third-party manufacturers CEC chips/modules that are not yourselves to libCEC so that software application developers such as XBMC and MythTV do not have to add different CEC libraries?
and I got this reply
We would accept any patches to the library made by other people or companies, but we have no plans to go and develop the support ourselves at this time
So you need to start by finding out which HDMI transmitter chip that Raspberry Pi uses so that you can get the display controller sample code and CEC module from the manufacturer.
Then you have to integrate that code into libCEC
https://github.com/Pulse-Eight/libcec
http://libcec.pulse-eight.com
Hopefully someone will code this up and submit as a pull request patch for libCEC upstream to Pulse-Eight on GitHub
- Posts: 7
- Joined: Wed Jan 04, 2012 3:32 pm
However, isn't libCEC looking at the USB side of their device rather than the HDMI CEC side?
If yes - then might be quite a lot of work both to put in GPU support and to make it work for top-level applications without using USB route.
I openly admit to not being an expert on this - and that while I have worked on device drivers ... it was for a totally different environment and long long ago (Macro-11 on RSX).
Others that I found that might be of use
http://www.arduino.cc/cgi-bin/.....237176/all
There is also a project that requires a Realtek SoC
http://sourceforge.net/apps/trac/cecd/
and perhaps something in SH4-duckbox
http://gitorious.org/open-duck.....roject-sh4
Also - RainShadow - similar device to Pulse-Eight (but more expensive)
http://rainshadowtech.com/defa.....CECUSB.htm
If yes - then might be quite a lot of work both to put in GPU support and to make it work for top-level applications without using USB route.
I openly admit to not being an expert on this - and that while I have worked on device drivers ... it was for a totally different environment and long long ago (Macro-11 on RSX).
Others that I found that might be of use
http://www.arduino.cc/cgi-bin/.....237176/all
There is also a project that requires a Realtek SoC
http://sourceforge.net/apps/trac/cecd/
and perhaps something in SH4-duckbox
http://gitorious.org/open-duck.....roject-sh4
Also - RainShadow - similar device to Pulse-Eight (but more expensive)
http://rainshadowtech.com/defa.....CECUSB.htm
look if your planning on using it for xbmc then your obviously going to have it on a network, whats wrong with the xbmc remote on android or iphone?
- Posts: 3
- Joined: Sun Jan 22, 2012 1:51 pm
onejay09 said:
While using a smart phone with touchscreen is cool to show your friends it is not very practical for family use or in other citations with multiple people using it, then you want one dedicated remote control for media center / television.
Most people today also prefer to use a remote with physical buttons so that you can use it in the dark without looking at the screen to change volume, etc. as you can feel each button.
look if your planning on using it for xbmc then your obviously going to have it on a network, whats wrong with the xbmc remote on android or iphone?
While using a smart phone with touchscreen is cool to show your friends it is not very practical for family use or in other citations with multiple people using it, then you want one dedicated remote control for media center / television.
Most people today also prefer to use a remote with physical buttons so that you can use it in the dark without looking at the screen to change volume, etc. as you can feel each button.
- Posts: 7
- Joined: Wed Jan 04, 2012 3:32 pm
Paul Webster said:
I cloned the gitrepo of libCEC yesterday and started to take a look. It basically is a thin layer of serial port handling that is done thru pulse-eight's USB-CEC adapter to actually send out the messages on the CEC line. libCEC also contains a lot of logic to actually compose messages and send them.
My goal is to make some modifications to libCEC so that I can replace the serialport customized for the pulse-eight adapter with something else. (In first step a network link to another computer having the pulse-eight adapter). But that work would fit well with connecting to a kernel driver for Raspberry Pi's CEC controller in GPU that is also something I am intressted in doing.
Now just waiting to get my hands on a RPi and some free time to code!
However, isn't libCEC looking at the USB side of their device rather than the HDMI CEC side?
If yes - then might be quite a lot of work both to put in GPU support and to make it work for top-level applications without using USB route.
I openly admit to not being an expert on this - and that while I have worked on device drivers ... it was for a totally different environment and long long ago (Macro-11 on RSX).
Others that I found that might be of use
http://www.arduino.cc/cgi-bin/.....237176/all
There is also a project that requires a Realtek SoC
http://sourceforge.net/apps/trac/cecd/
and perhaps something in SH4-duckbox
http://gitorious.org/open-duck.....roject-sh4
Also - RainShadow - similar device to Pulse-Eight (but more expensive)
http://rainshadowtech.com/defa.....CECUSB.htm
I cloned the gitrepo of libCEC yesterday and started to take a look. It basically is a thin layer of serial port handling that is done thru pulse-eight's USB-CEC adapter to actually send out the messages on the CEC line. libCEC also contains a lot of logic to actually compose messages and send them.
My goal is to make some modifications to libCEC so that I can replace the serialport customized for the pulse-eight adapter with something else. (In first step a network link to another computer having the pulse-eight adapter). But that work would fit well with connecting to a kernel driver for Raspberry Pi's CEC controller in GPU that is also something I am intressted in doing.
Now just waiting to get my hands on a RPi and some free time to code!
- Posts: 12
- Joined: Tue Jan 24, 2012 11:54 am
Cec is already working on the raspberry pi, think this is on xbmc
http://m.youtube.com/index?des.....Bs7KaTK5Hk
http://m.youtube.com/index?des.....Bs7KaTK5Hk
- Posts: 9
- Joined: Sat Dec 24, 2011 6:55 pm
That sure looks interesting! My only concern is that there is noone speaking about its technical solution (drivers/interface) here. I can only see comments similar like in this thread:
"There are a hardware interface but no linux userland drivers nor documentation available on how to write a driver".
"There are a hardware interface but no linux userland drivers nor documentation available on how to write a driver".
- Posts: 12
- Joined: Tue Jan 24, 2012 11:54 am
dave3641 said:
That is cool if it is using the rPi's CEC support, but that is still not XBMC though, he said in that video it is only a "Qt demo using OpenGL ES" :/
Like davka003 noted, there is still no technical information available to help enable this in XBMC, there is no open source code, no API available , and no free documentation about the rPi's CEC support
Cec is already working on the raspberry pi, think this is on xbmc
http://m.youtube.com/index?des.....Bs7KaTK5Hk
That is cool if it is using the rPi's CEC support, but that is still not XBMC though, he said in that video it is only a "Qt demo using OpenGL ES" :/
Like davka003 noted, there is still no technical information available to help enable this in XBMC, there is no open source code, no API available , and no free documentation about the rPi's CEC support
- Posts: 7
- Joined: Wed Jan 04, 2012 3:32 pm
This is a great piece of news (video from 2 days ago). Given that someone from TeamSBMC has an alpha board then I"m very hopeful that this means that the info (even if private for now) is in their hands as well.
XBMC dev team for sure have an alpha-board and I am realy supprised how well it seems to be running 1080p video and the XBMC GUI. That in it self is a great work and probably the focus of what those developers have done.
I wouldn't hold my breath waiting for CEC support from them. Not saying that they dont do a great work but hey they are only humans (I belive).
I wouldn't hold my breath waiting for CEC support from them. Not saying that they dont do a great work but hey they are only humans (I belive).
- Posts: 12
- Joined: Tue Jan 24, 2012 11:54 am
AnandTech have posted a review of the Pulse-Eight USB - CEC Adapter here:
http://www.anandtech.com/show/.....ter-review
It should give a good idea of what could be done with libCEC support
"XBMC is not the only software capable of benefiting from the USB CEC adapter. Pulse-Eight also provides libCEC for download. It is a open source library designed for softwares to communicate with the USB CEC adapter. You can find more information about libCEC here. In this review, we chose not to cover libCEC in detail. libCEC makes a lot of sense for home theater integrators / home automation developers. In fact, any situation involving the need to reliably connect to the correct video source in a HDMI based system can benefit from libCEC. Apart from home entertainment, this includes video conferencing systems and Point of Sale control. But, detailed coverage of these types of applications is beyond the scope of this review. Coming back to HTPC applications, MythTV has already adopted libCEC in their unreleased 0.25 build."
"Support for the USB CEC adapter is currently available to the public only through XBMC Eden. However, Pulse-Eight indicated that Windows Media Center, Event Ghost and MediaPortal would also be able to take advantage of the USB CEC adapter by the end of February along with support for wake from standby through the adapter."
"The bigger picture is the home automation and control scene. It is up to the software community to come up with interesting applications using the adapter, but there is nothing of note in the market right now in that area. There is a lot of scope in the CEC protocol and its potential lies untapped."
http://www.anandtech.com/show/.....ter-review
It should give a good idea of what could be done with libCEC support
"XBMC is not the only software capable of benefiting from the USB CEC adapter. Pulse-Eight also provides libCEC for download. It is a open source library designed for softwares to communicate with the USB CEC adapter. You can find more information about libCEC here. In this review, we chose not to cover libCEC in detail. libCEC makes a lot of sense for home theater integrators / home automation developers. In fact, any situation involving the need to reliably connect to the correct video source in a HDMI based system can benefit from libCEC. Apart from home entertainment, this includes video conferencing systems and Point of Sale control. But, detailed coverage of these types of applications is beyond the scope of this review. Coming back to HTPC applications, MythTV has already adopted libCEC in their unreleased 0.25 build."
"Support for the USB CEC adapter is currently available to the public only through XBMC Eden. However, Pulse-Eight indicated that Windows Media Center, Event Ghost and MediaPortal would also be able to take advantage of the USB CEC adapter by the end of February along with support for wake from standby through the adapter."
"The bigger picture is the home automation and control scene. It is up to the software community to come up with interesting applications using the adapter, but there is nothing of note in the market right now in that area. There is a lot of scope in the CEC protocol and its potential lies untapped."
- Posts: 7
- Joined: Wed Jan 04, 2012 3:32 pm
I"ve had a reply from the Pulse-Eight people … and the good news is that it is their intention to add CEC support into libcec – going to the native RPi hardware (ie no external device needed).
http://forums.pulse-eight.com/.....4#post1824
http://forums.pulse-eight.com/.....4#post1824
Cool. We're quite keen to support libCEC and have bought a couple their dongles to evaluate. If they are keen too, then I guess it will happen.
For a Raspberry Pi CEC demo:
(not using libCEC)
For a Raspberry Pi CEC demo:
(not using libCEC)
- Moderator
- Posts: 3322
- Joined: Wed Aug 17, 2011 7:41 pm
- Location: Cambridge
If the "keen":ness is not enogh from both sides I might add some as I am also keen on seeing this happen 
But all this is hard to do without access to documentation on how to control the low level CEC-hardware in the GPU. If that is just available I do think I can make libCEC run against it. (Even thou I can think of other that is better on the hardware driver part of the work).
But all this is hard to do without access to documentation on how to control the low level CEC-hardware in the GPU. If that is just available I do think I can make libCEC run against it. (Even thou I can think of other that is better on the hardware driver part of the work).
- Posts: 12
- Joined: Tue Jan 24, 2012 11:54 am
http://www.raspberrypi.org/archives/592
I got this reply from JamesH of the Raspberry Pi Foundation in the comments to the above linked news post when I asked if the Raspberry Pi Foundation have replied to Pulse-Eight with this requested information yet, and that I thought that Raspberry Pi Foundation should prioritize posting the CEC code and API to the public as soon as possible in any case so everyone can access it.
Sad to hear when when Pulse-Eight said that they will do all the work on libCEC themselves for Raspberry Pi if they just get the technical information from Broadcom via the Raspberry Pi Foundation, as that does not sound like too much work on their partfor this
I for one will not buy a Raspberry Pi until CEC works with XBMC in it
You may think it’s high priority, but compared with lots of other stuff that needs doing – not so much.
I got this reply from JamesH of the Raspberry Pi Foundation in the comments to the above linked news post when I asked if the Raspberry Pi Foundation have replied to Pulse-Eight with this requested information yet, and that I thought that Raspberry Pi Foundation should prioritize posting the CEC code and API to the public as soon as possible in any case so everyone can access it.
Sad to hear when when Pulse-Eight said that they will do all the work on libCEC themselves for Raspberry Pi if they just get the technical information from Broadcom via the Raspberry Pi Foundation, as that does not sound like too much work on their partfor this
I for one will not buy a Raspberry Pi until CEC works with XBMC in it
- Posts: 7
- Joined: Wed Jan 04, 2012 3:32 pm
Harley said:
OK.
http://www.raspberrypi.org/archives/592
You may think it’s high priority, but compared with lots of other stuff that needs doing – not so much.
I got this reply from JamesH of the Raspberry Pi Foundation in the comments to the above linked news post when I asked if the Raspberry Pi Foundation have replied to Pulse-Eight with this requested information yet, and that I thought that Raspberry Pi Foundation should prioritize posting the CEC code and API to the public as soon as possible in any case so everyone can access it.
Sad to hear when when Pulse-Eight said that they will do all the work on libCEC themselves for Raspberry Pi if they just get the technical information from Broadcom via the Raspberry Pi Foundation, as that does not sound like too much work on their partfor this
I for one will not buy a Raspberry Pi until CEC works with XBMC in it
OK.
- Moderator
- Posts: 6900
- Joined: Sat Jul 30, 2011 7:41 pm
JamesH said:
Oh he set himself up for that one.
I'd love to see CEC work with xbmc but I can wait.
Harley said:
I for one will not buy a Raspberry Pi until CEC works with XBMC in it
OK.
Oh he set himself up for that one.
I'd love to see CEC work with xbmc but I can wait.
- Posts: 128
- Joined: Sat Jan 21, 2012 9:31 am
Harley said:
Whew, that's a relief, one less person I have to worry about competing with to get a spot in the first batch line :-p
I for one will not buy a Raspberry Pi until CEC works with XBMC in it
Whew, that's a relief, one less person I have to worry about competing with to get a spot in the first batch line :-p
Dear forum: Play nice 
Abishur said:
rofl!!!!!!!
Harley said:
I for one will not buy a Raspberry Pi until CEC works with XBMC in it
Whew, that's a relief, one less person I have to worry about competing with to get a spot in the first batch line :-p
rofl!!!!!!!
- Posts: 60
- Joined: Fri Jan 06, 2012 3:44 am
Hello!
I have one question that is not directly related to topic and I'm sorry for that but I don't know who other to ask :/ I have Sony TV with BRAVIA Sync and a laptop with HDMI CEC and this works well but I wan't to premapp some buttons.
If somebody can help me, please send me a PM or a e-mail on randy2841(at)hotmail(dot)com
Thank you very much and I'm sorry for offtopic :/
I have one question that is not directly related to topic and I'm sorry for that but I don't know who other to ask :/ I have Sony TV with BRAVIA Sync and a laptop with HDMI CEC and this works well but I wan't to premapp some buttons.
If somebody can help me, please send me a PM or a e-mail on randy2841(at)hotmail(dot)com
Thank you very much and I'm sorry for offtopic :/
- Posts: 23
- Joined: Sat Mar 17, 2012 12:14 pm
Do you have a laptop with HDMI or with HDMI and CEC support? If CEC support you need to have some software that uses the laptop driver for CEC. How to configure that piece of software without knowing its name is probably impossible.
Other alternatives are that you have an external HDMI-CEC device from for example pulse-eight and they provide the software to control things. But then you should ask at their forum.
My guess is that you dont have CEC support, just HDMI on your laptop. I have only seen one Toshiba laptop that actually have built in CEC support (and I have been investigating this subject).
Good luck!
Other alternatives are that you have an external HDMI-CEC device from for example pulse-eight and they provide the software to control things. But then you should ask at their forum.
My guess is that you dont have CEC support, just HDMI on your laptop. I have only seen one Toshiba laptop that actually have built in CEC support (and I have been investigating this subject).
Good luck!
- Posts: 12
- Joined: Tue Jan 24, 2012 11:54 am
Latest update from Pulse8 - 3rd-May
http://forums.pulse-eight.com/.....9#post3469
The reference to "adapter" is the hardware dongle from Pulse8. It won't be essential to have the dongle but looks like they might be able to justify it for extra ease of use.
In my case - the TV supplies power to the USB socket, that my Pi is powered from,after the screen has started up (and I presume HDMI is ready to talk).
If the Pi is still connected to the TV when the TV is soft-powered down then it leaves the USB power up for quite a long time (> 30 mins - and might be configurable) but does eventually turn the power off so not a good place for a permanently running Pi (I haven't yet checked to see if this action is configurable in the TV).
"The r-pi has CEC support in the chip and we are working with broadcom to bring libCEC support for that chip, however it does not support wake-on-cec due the way the chip itself is designed, therefore the adapter still serves a purpose in terms of being able to wake the pi back up"
http://forums.pulse-eight.com/.....9#post3469
The reference to "adapter" is the hardware dongle from Pulse8. It won't be essential to have the dongle but looks like they might be able to justify it for extra ease of use.
In my case - the TV supplies power to the USB socket, that my Pi is powered from,after the screen has started up (and I presume HDMI is ready to talk).
If the Pi is still connected to the TV when the TV is soft-powered down then it leaves the USB power up for quite a long time (> 30 mins - and might be configurable) but does eventually turn the power off so not a good place for a permanently running Pi (I haven't yet checked to see if this action is configurable in the TV).
Hello
I've written a quick hack which enables me to control OpenElec/XBMC with a TV remote control.
It's up on github:
https://github.com/olajep/rpi-cecd
I've written a quick hack which enables me to control OpenElec/XBMC with a TV remote control.
It's up on github:
https://github.com/olajep/rpi-cecd
- Posts: 2
- Joined: Wed Jun 06, 2012 10:19 am