IR remote - prevent some codes from be rebroadcast

Here is my situation.

I have a home theater system with cable box, stereo and TV. The TV works as I would like. TO control the cablebox and the stero system (located in a different room) I have an IR bud by the TV and an IR emitter attached to the IR detectors on the receiver and cable box.

I have a multi function remote that can control all of the devices. This works for the knowledgeable user. Unfortunately, for the less experienced user, they end up turning the cable box off when they meant to turn the TV off or the cable box and stereo get out of sync (one off and one on)

With my HTPC, I eliminate this problem using eventghost running on the HTPC. EventGhost received each of the codes and decides what todo with them.

In the setup I have problems with, I don’t have the opportunity to use a PC running eventghost.

I was wondering if anyone had created a arduino type device that would receive IR codes (from a generic IR remote), and broadcast suitable set of codes to the specific devices?

For instance,

power-on - send the appropriate power-on codes to all 3 devices in sequence.

volume up/down - only send commands to the stereo and don’t send to the cable box

Select Input - only send the select input to the stereo and not the TV

Thoughts?

Some of what you want is already in a lot of multifunction remotes. You can tell them that volume up/down goes out as IR codes to the audio system (or TV or cable box). That channel change goes out to only the cable box (or TV). The common hassle is that a macro is used to turn on the devices on/off. And a lot of devices don’t have discretes, separate on and off commands. Some do though and it might be nice to have separate on and off buttons on the remote, so that there would be some hope of getting re-synced via simple button presses by those “less experienced” (your and my Mom and/or Dad) users.

There’s no reason you can’t build the device you mention. It would be simple enough. You can (I have) use an Arduino to decode all the commands sent by a remote and then send those commands. There’s even a simple to use IR library for those uses IIRC. All you need is a remote that none of your components understand. I can’t imagine that you can’t setup almost any multi-function remote to be that way. Then your decoder box gets those commands and issues the proper commands to each component in it’s own “dialect”.

Except for the on/off syncing. If N-1 components of a total number of N components have discrete on/off codes, then you’re set. After 2 pushes of either the on or off button, the system will be synced. If none (or not enough) of your components have discretes then you need another way to sense the “on-ness” or “off-ness” of those devices. There’s no reason your Arduino decoder box couldn’t do that, perhaps by monitoring the line current or some on/off LED on the device or perhaps some back panel jack.