The USB-CEC Adapter is a look into the Future

November 1st, 2011 natethomas

Sometime around 2006 or 2007, I modded my first Xbox. I admit it, I’m practically a n00b in the realm of XBMC hacking. I didn’t even know what YAMP or Xbox Media Player were until I researched them! I bring this up because since that amazing day I haven’t felt the complete astonishment of a perfect merge of hardware and software until this past weekend, when I connected my TV to my pc via the Pulse Eight USB-CEC Adapter.

The HDMI CEC adapter

Here we can see the tiny adapter connected on both sides to HDMI cables and a mini-USB cable attached on the end. Those aren't over-sized HDMI cables either. The adapter is REALLY tiny.

First, a bit of back story: Often, people don’t understand why the Team so excitedly awaits the coming of Binary Addons. To put it simply (and probably factually inaccurately), binary addons mark the step in which much of XBMC becomes self-updating.

Since XBMC Atlantis and Babylon, the team has slowly been trying make XBMC more and more modular, so that pieces of XBMC could be updated without the need for a complete reinstall of the system. A highly successful example is our scrapers, which were once built into the system, and are now easily and often updated.

Unfortunately, many pieces of XBMC are simply too integrated to ever fully get pulled out or added onto without the use of an independent program. Likewise, a great deal of functionality can never be added using the simple python addons we rely on today. Thus, the necessity for independent, binary addon programs becomes clear.

With binary addons XBMC could add an entirely new video player (possibly even one that actually plays DRM content). It could add independent Live TV and PVR software. Practically every individual component of XBMC could be updated without needing a new release.   And, particularly relevant to this article, the binary addon system could add new libraries that interact with specific pieces of totally unanticipated hardware.

XBMC and Siri, XBMC and Kinect? Sure, all with a simple (at least, simple for the user) addon, without the need of additional helper software like EventGhost.

First out of the gate of exciting new ways to control your entertainment system is the USB-CEC Adapter. While the USB-CEC Adapter’s library is not a binary addon itself, it does act as a demonstration of how XBMC will be able to act with peripheral devices. The USB CEC Adapter doesn’t require lirc, a change to the Windows registry, or a default OSX remote. It operates entirely independently via a separate software library. When binary addons become a reality, any user could add (and update) a software library that allows a completely new piece of hardware to interact more closely with XBMC.

So what does this adapter do?

Simply put, the USB-CEC adapter lets your computer, your TV, and any other CEC compatible hardware “talk” to each other via HDMI cables. In one fell swoop, this adapter has the potential of making Harmony remotes entirely pointless.

For example, I have a Samsung TV that uses AnyNet+, the Samsung-branded version of CEC,  to communicate with other devices. Once I set up the adapter, I was able to use my television remote to navigate the XBMC menus, play, pause, and stop video, switch between pictures, videos, and music menus using my colored buttons, and, of course, select various options.

The USB-CEC Adapter is sold by Pulse Eight, but was pretty well entirely developed by a subset of Team XBMC members. Bob van Loosen, maker of the boblight, known in the forums as bobo1on1, did a first schematic cut. The board was layed out by Pulse Eight and then tested externally by Newbury Electronics. Bob then finished the firmware and built a test lib (i.e. a software library of commands that help software and hardware interact). Lars Op den Kamp, known as dushmaniac around here, then developed the official libCEC library based on Bob’s original work.

Once the adapter is plugged in, XBMC and libCEC work together to delegate which buttons control which aspects of your system. In XBMC, you can alter these controls by visiting system -> input -> peripherals -> CEC adapter. In addition, because the CEC adapter allows XBMC and your computer to control your TV and other peripherals as much as it allows your TV to control XBMC, you are given a host of thoughtful (and power-saving) commands that a Harmony remote could not hope to replicate. For example, when XBMC turns on its grayed-out screensaver, it can turn off your television. And when you turn off your television, XBMC will be able to recognize the change in state and go into sleep mode itself. For a video on some of the simpler functions, check out the bottom of this page.

CEC Adapter settings page

The CEC Adapter is currently compatible only with the most recent nightly versions of XBMC Pre-Eden. As always, when using pre-release software like Pre-Eden, users may run into odd quirks that can vary from night to night. Once the adapter is installed and working though, everything should be smooth sailing… with one major exception.

It is possible that your peripheral devices (but most importantly, your TV) may not have support for CEC. This lack of support can range from entirely being unable to interact with other devices to mild, device-specific quirks. For example, my Samsung had no problem recognizing and connecting with XBMC, but its firmware separates “receivers” from “players.” So if I want to interact with XBMC using my TV’s remote, I can, but I can’t control the audio in XBMC. This is actually a known issue that is being worked on by the Pulse Eight development team. In fact, the development team has been incredibly helpful and is actively seeking out additional hardware to support. If you have any problems with your specific devices, you are welcome to list the issues in the Pulse Eight forums, and the team should move fairly quickly to add support. I presume that most recent name brand televisions should all work relatively well over CEC, but looking through the manual of your television would probably not hurt, nor would asking on the Pulse Eight forums. Odds are, your device will use an alternative naming scheme for CEC. For example, Samsung uses Anynet+. See here for a list of alternative trade names.

In the end, I’m sold on the USB-CEC adapter. It really is an awesome device and a great deal cheaper than the equivalent Harmony remote. But more important than that, I’m excited about the future of XBMC and what the CEC adapter and devices like it mean for that future.

With binary addons now slated for Frodo (the release after Eden), we look forward to more and more hardware vendors integrating their devices with XBMC and providing new and innovative methods for creating a more connected home theater system. Until then, feel free to have a go at the USB-CEC adapter and keep an eye out as we bring you additional interesting developments.

  1. Corey
    November 1st, 2011 at 20:00 | #1

    Very exciting.

  2. Flanhare
    November 1st, 2011 at 20:05 | #2

    This is just awesome! I have been looking at the USB-CEC adapter for a while, might make a order now.

  3. Dave
    November 1st, 2011 at 20:08 | #3

    This is very interesting. I might be looking at getting one of these. The ability to hit standby on the TV and have my XBMC do the same is very tempting.

  4. November 1st, 2011 at 20:10 | #4

    Dave :
    This is very interesting. I might be looking at getting one of these. The ability to hit standby on the TV and have my XBMC do the same is very tempting.

    Don’t forget you can do it the other way round too, hit standby on your PC and it standby’s the TV

  5. curious
    November 1st, 2011 at 20:58 | #5

    cost?

  6. curious
  7. Luke
    November 1st, 2011 at 21:00 | #7

    I like the idea here, but it won’t replace my Harmony Remote just yet, as much as I hate the software that powers it. I have an AV receiver and I have no idea if I could use one remote (or which one that would be) to control the TV standby; receiver volume, power, input; and all functions of every other device I own (if they are even CEC compatible).

  8. Patrik Dufresne
    November 1st, 2011 at 21:46 | #8

    I’m very looking into it. I have a Samsung TV supporting AnyNet+ and was looking for a way to use only one single remote control to operate the TV and the XBMC at low Cost. let hope it’s not too complicated to setup it. I don’t have the patient to work on this kind of stuff any more.

    +1 for the innovation of the XBMC team

  9. NateM
    November 1st, 2011 at 22:06 | #9

    I’m just curious, why isn’t something like this integrated into video cards, or could be software base? obviously we are running XBMC on some forum of PC, I find it strange that this is something that comes out of the PC along with the HDMI cable, just to meet back up with the HDMI cable.
    I am excited about it though, I wouldn’t mind getting rid of one more remote.

  10. Anonymous
    November 2nd, 2011 at 00:30 | #10

    That’s a lot of enthusiasm for what is basically an expensive workaround. The graphics card (or similar) should clearly be responsible for exposing a decent CEC interface to the OS, directly using the HDMI ports.

  11. clank
    November 2nd, 2011 at 01:30 | #11

    just ordered one… :)

  12. Hans
    November 2nd, 2011 at 02:13 | #12

    This is awesome! But from what i read you can’t use it through a dvi-> hdmi connection, correct? My mini has dvi out which send its signal through an hdmi adapter, that probably wont work?

  13. Anonymous
    November 2nd, 2011 at 02:57 | #13

    have it at home and so far was not able to make it running .. hopefully with new build of libCEC i will see it in action.

  14. hagay
    November 2nd, 2011 at 03:05 | #14

    Great news indeed.

    Tough from my experience binary addons/plugins usually causes a lot of crashes/hangs and the core system can’t prevent them all.

  15. November 2nd, 2011 at 03:07 | #15

    @Anonymous
    I fully agree. The graphics card SHOULD be responsible for exposing a decent CEC interface. Now, if you can just convince ATI or NVIDIA to actually DO that, then everyone will be happy.

    @Hans
    I am actually using dvi->hdmi right now. Since the signal is sent via usb and not via HDMI, it doesn’t especially matter what port is being used on your graphics card.

    @Anonymous
    I actually ran into some install problems myself (running Windows). If you are using an XBMC build from this week, you should be in for a better time. This guy is REALLY cutting edge.

  16. November 2nd, 2011 at 03:27 | #16

    When Eden hits the shelfs I will definitly get one of these! great work all who developed! as always please add a flattr (http://flattr.com/) button to the site

  17. bleze
    November 2nd, 2011 at 04:17 | #17

    WARNING! Turning CEC on in at least some Onkyo receivers will yield a very high standby power consumption.

    http://nodef.blogspot.com/2009/02/onkyo-tx-sr876-power-consumption.html

    Best to check with a meter before getting an unusual high power bill.

  18. November 2nd, 2011 at 04:18 | #18

    Patrik Dufresne :
    I’m very looking into it. I have a Samsung TV supporting AnyNet+ and was looking for a way to use only one single remote control to operate the TV and the XBMC at low Cost. let hope it’s not too complicated to setup it. I don’t have the patient to work on this kind of stuff any more.
    +1 for the innovation of the XBMC team

    Just plug it in, it will just work without any effort on your part

  19. November 2nd, 2011 at 04:19 | #19

    Luke :
    I like the idea here, but it won’t replace my Harmony Remote just yet, as much as I hate the software that powers it. I have an AV receiver and I have no idea if I could use one remote (or which one that would be) to control the TV standby; receiver volume, power, input; and all functions of every other device I own (if they are even CEC compatible).

    Put a list of your hardware on the Pulse-Eight forums and we will see what you can control

  20. November 2nd, 2011 at 04:21 | #20

    NateM :
    I’m just curious, why isn’t something like this integrated into video cards, or could be software base? obviously we are running XBMC on some forum of PC, I find it strange that this is something that comes out of the PC along with the HDMI cable, just to meet back up with the HDMI cable.
    I am excited about it though, I wouldn’t mind getting rid of one more remote.

    Because to be CEC compliant a graphics card vendor needs to have all exposed HDMI ports be connected to the same CEC bus, this is fine if you only have 1 graphics card. But imagine the nightmare if you’ve got to interop with an onboard hdmi port, and what if you have a crossfire/sli configuration? the problem just becomes nightmarish, so basically all the card vendors just gave up and don’t even wire the pin.

  21. Dush
    November 2nd, 2011 at 06:27 | #21

    In principle this sounds awesome but I’ve had issues with things like this before and standby power consumption since the device normally has to stay ‘more awake’ than when powering on over IR. But 3-5 years from now when all equipment has it as standard it will be great.

    Btw my TV shuts itself off as I have XBMC set to blank the screen and my Samsung to switch off when no signal received.

  22. November 2nd, 2011 at 06:32 | #22

    @Dush
    there’s no extra power consumption at all and nearly every TV with HDMI already supports it (if it’s not older than 3 years).

    the USB-CEC adapter also does a lot more than just powering on/off the TV and switching it to the right channel, and we’ll be adding more features later.

  23. November 2nd, 2011 at 09:11 | #23

    Very cool but I’m looking forward to Pulse-Eight coming out with a Ambilight Kit and Boblight Addon for XBMC!

    There are several DYI Ambilight Kits out there but I want one that “just works” out-of-the-box with XBMC :)

  24. fifthrider
    November 2nd, 2011 at 09:13 | #24

    So, if we are getting binary plugins, can we please get a means of swapping out the codec packs? I’d use my XBMC install a lot more if I could get 10-bit encodes to work smoothly.

  25. Mikael
    November 2nd, 2011 at 09:46 | #25

    @bleze

    Thats an design flaw, look at the idle aswell…

    Denon AVR-3312
    0.1 Watt (Standard)
    < 2.2 Watt (CEC activated)
    < 2 Watt (Network standby)

  26. Myth
    November 2nd, 2011 at 10:13 | #26

    I’m guessing any changes that are being made to support more devices will only influence the PC software (drivers)? Or if needed does the device support updating its firmware?

  27. November 2nd, 2011 at 12:13 | #27

    Myth :
    I’m guessing any changes that are being made to support more devices will only influence the PC software (drivers)? Or if needed does the device support updating its firmware?

    The firmware will get updates but the lib will handle auto updating the module as required

  28. November 2nd, 2011 at 12:13 | #28

    Mikael :
    @bleze
    Thats an design flaw, look at the idle aswell…
    Denon AVR-3312
    0.1 Watt (Standard)
    < 2.2 Watt (CEC activated)
    < 2 Watt (Network standby)

    My guess is an extra microcontroller is running to support CEC which needs a little bit more power

  29. bobo1on1
    November 2nd, 2011 at 13:48 | #29

    @Martin Ellis
    2 watts is about what you would expect when keeping on the power supply, controllers and possible some leds, the Onkyo using 86 watts in standby with cec on is ridiculous, I’m guessing the internal amplifiers are still turned on in standby due to a software bug, 86 watts for 8 idling amplifier channels sounds about right.

  30. Kieran
    November 2nd, 2011 at 14:41 | #30

    Does it work with any platform for XBMC or only specific ones? Does it work with a Mac?

  31. November 2nd, 2011 at 14:58 | #31

    @Kieran
    It works with OSX, Windows, and Linux. iOS is out, because there’s no easy way to attach USB on that platform.

  32. November 2nd, 2011 at 15:00 | #32

    @Myth
    To my knowledge, binary addons are not intended to be extended to updating firmware. They are more for software libraries within XBMC.

  33. basco
    November 2nd, 2011 at 16:50 | #33

    that is a lot cheaper then this one:
    http://rainshadowtech.com/default_files/HDMICECUSB.htm

    i have an onkyo receiver so unfortunally i cannot use hdmi cec adapter.
    when i turn on hdmi cec in my receiver the STANDBY power consumption is 60 watt!! (how about that for a design flaw..)

  34. jgslima
    November 2nd, 2011 at 18:36 | #34

    It seems nice, but I feel like I am missing something here.
    I wonder if would be possible to acomplish all that without the adapter, that is, just with the HDMI cable itself. After all, the device that talks with XBMC (the TV), has nothing but the capabilities of HDMI only, both to send and to receive instructions.
    Why is not possible to “simply” use the HDMI capabilites to talk with the other device?

  35. RyanG
    November 2nd, 2011 at 19:20 | #35

    Great device! Assumedly works with Panasonic’s VIERA Link?

    Is there any reason why it isn’t more “dongle-like”, with fixed/attached HDMI/USB cables, instead of sockets? Sure, I have spare HDMI and USB cables, but the shortest one I have is ~1m… And my TV isn’t 2m from my HTPC, the existing 1m cable is too long. If there was a short HDMI+USB cable hanging out of this box, with a socket for the HDMI->TV, it’d be a lot easier to hide.

    Just a suggestion. :)

  36. RyanG
    November 2nd, 2011 at 19:26 | #36

    @RyanG

    Ehhh.. Wait. Does it come with short cables? It’s not really mentioned on the product page, but here (http://blog.pulse-eight.com/2011/08/30/installing-the-cec-adapter/) says it does..

  37. zemosabe
    November 2nd, 2011 at 20:15 | #37

    This may not be the right venue for this question but I will give it a shot anyway. I have a Sony TV with “BraviaLink”(sic?) capability. Sony seems to claim that I need a Sony receiver with BraviaLink in order to fully utilize CEC. I am currently in the market for a receiver and wondering if I am limited to Sony’s options. The Sony STR-520 seems well suited to my needs (cost and otherwise) but as Black Friday approaches it would be nice to know If other options exist.

    Would love to ditch my keyboard and Monster AVL 300 w/ a broken select key for a USB-CEC and Motorola Nyxboard.

    Keep up the good work Pulse Eight and XBMC Team!

  38. meeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
    November 2nd, 2011 at 21:20 | #38

    uuuummmmmm why isnt my xbmc working it is just saying error plus my cousins and friends are not working either

  39. November 2nd, 2011 at 21:25 | #39

    I thought binary addons would be in Eden and they would be the big offering of Eden. If not, what is Eden offering?

    Sorry that was a bit off topic.

    The CEC adapter sure seems very intriguing. How about controlling two devices simultaneously? Is that supported? Such as, HDMI goes from htpc to CEC adapter, then goes to receiver, then to the tv. Can this control both the receiver and the tv from xbmc??

  40. Jonas
    November 3rd, 2011 at 04:26 | #40

    So, just to make sure that I understood everything right – if I buy one of these and plug it in, I can use my TV remote to interact with XBMC? I have a modern Toshiba TV with “Regza link” which is Toshiba’s fancy name for CEC.

  41. November 3rd, 2011 at 06:12 | #41

    basco :
    that is a lot cheaper then this one:
    http://rainshadowtech.com/default_files/HDMICECUSB.htm
    i have an onkyo receiver so unfortunally i cannot use hdmi cec adapter.
    when i turn on hdmi cec in my receiver the STANDBY power consumption is 60 watt!! (how about that for a design flaw..)

    It used to be over a 100usd they dropped the price once we built ours, but it still lacks pass through and doesn’t ship with the cable accessories which ours does

  42. November 3rd, 2011 at 06:13 | #42

    jgslima :
    It seems nice, but I feel like I am missing something here.
    I wonder if would be possible to acomplish all that without the adapter, that is, just with the HDMI cable itself. After all, the device that talks with XBMC (the TV), has nothing but the capabilities of HDMI only, both to send and to receive instructions.
    Why is not possible to “simply” use the HDMI capabilites to talk with the other device?

    Because the CEC wire is not exposed on virtually any motherboard or graphics card (only 1 laptop that we know of made by Toshiba has done this and provided an app to talk to it)

  43. November 3rd, 2011 at 06:15 | #43

    RyanG :
    Great device! Assumedly works with Panasonic’s VIERA Link?
    Is there any reason why it isn’t more “dongle-like”, with fixed/attached HDMI/USB cables, instead of sockets? Sure, I have spare HDMI and USB cables, but the shortest one I have is ~1m… And my TV isn’t 2m from my HTPC, the existing 1m cable is too long. If there was a short HDMI+USB cable hanging out of this box, with a socket for the HDMI->TV, it’d be a lot easier to hide.
    Just a suggestion. :)

    It ships with short cables, see the installation video on youtube for what is supplied. Because each home is different and each setup is different, you may need to install the CEC Adapter after your amplifier (if it doesn’t pass the CEC wire through) equally, cables break, and are cheap to replace. Having integrated cables is expensive for us as well to have manufactured

  44. November 3rd, 2011 at 06:16 | #44

    RyanG :
    @RyanG
    Ehhh.. Wait. Does it come with short cables? It’s not really mentioned on the product page, but here (http://blog.pulse-eight.com/2011/08/30/installing-the-cec-adapter/) says it does..

    Thanks, fixed the product description

  45. November 3rd, 2011 at 06:18 | #45

    aptalca :
    I thought binary addons would be in Eden and they would be the big offering of Eden. If not, what is Eden offering?
    Sorry that was a bit off topic.
    The CEC adapter sure seems very intriguing. How about controlling two devices simultaneously? Is that supported? Such as, HDMI goes from htpc to CEC adapter, then goes to receiver, then to the tv. Can this control both the receiver and the tv from xbmc??

    We ran out of time, we’ve added so many other features in Eden we felt like they should be released, we’re hoping for Frodo now for binary addons

    RE: CEC Adapter you only need 1 for each distinct HTPC setup, i.e. TV, Receiver, PC the one adapter will control all devices simultaniously

  46. November 3rd, 2011 at 06:19 | #46

    zemosabe :
    This may not be the right venue for this question but I will give it a shot anyway. I have a Sony TV with “BraviaLink”(sic?) capability. Sony seems to claim that I need a Sony receiver with BraviaLink in order to fully utilize CEC. I am currently in the market for a receiver and wondering if I am limited to Sony’s options. The Sony STR-520 seems well suited to my needs (cost and otherwise) but as Black Friday approaches it would be nice to know If other options exist.
    Would love to ditch my keyboard and Monster AVL 300 w/ a broken select key for a USB-CEC and Motorola Nyxboard.
    Keep up the good work Pulse Eight and XBMC Team!

    Largely speaking Bravia follow the CEC standard so any amp should interop with your TV, but we are working on library updates to the CEC Adapter which will allow it to act as a language bridge between 2 alien devices

  47. November 3rd, 2011 at 06:20 | #47

    meeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee :
    uuuummmmmm why isnt my xbmc working it is just saying error plus my cousins and friends are not working either

    What build of XBMC are you running and if you have problems, best raise it on the forums or email Pulse-Eight support for help

  48. Myth
    November 3rd, 2011 at 09:07 | #48

    @Martin Ellis
    sounds sweet

  49. Anders
    November 3rd, 2011 at 17:34 | #49

    But Linux and some hardware already have this built in? My acre revo, can receive commands from my pioneer reciever.
    I don’t know how, but it do get them. I don’t know how to setup the different buttons so it do what I want.

    Maybe I will be able after this new release? :)

  50. Pietje Puck
    November 3rd, 2011 at 18:37 | #50

    wow, this sounds very interesting! thanks for telling us! i wasnt aware, that such hw exist!

Comment pages
1 2 4891
Comments are closed.