or Connect
AVS › AVS Forum › A/V Control & Automation › Remote Control Area › Control AVR volume via IR output from PC
New Posts  All Forums:Forum Nav:

Control AVR volume via IR output from PC

post #1 of 5
Thread Starter 
Hi All -

Here's my setup: I have a Windows 7 PC with a Sound Blaster Recon 3D card that has dolby digital live. The card is hooked to my AVR via toslink. With this setup, the AVR does the decoding of the audio stream, so the PC cannot control volume.

Here's what I'm trying to do: use my keyboard volume controls to control volume on the AVR. I'm thinking that some sort of IR blaster than can send volume up/down/mute commands to the AVR when I change the window's system volume level (via keyboard controls) would let me do this. Note that the AVR doesn't have any sort of PC connectivity, so the volume has to be controlled via IR.

I think there are Windows Media Center remote kits that have IR blasters, but I've been unable to determine if the they only emit IR volume commands when the volume change happens in media center, as opposed to when the system volume is changed. Anyone know of something that will do what I want?

Thanks!
post #2 of 5
You should be able to do what you want with a usb-uirt and eventghost. You'd learn the AVR's volume and mute commands into eventghost via the usb-uirt, then map the volume keys in eventghost to send the IR out either the built in blaster on the usb-uirt or through an emitter connected to it. There's a bit of a learning curve to eventghost (not too bad) but once you get the hang of it you can do some really neat stuff with it.
There may be less expensive and more elegant solutions, but I'm pretty sure this would do what you want.
post #3 of 5
Thread Starter 
Thanks Hedg! This looks like exactly what I need - I just ordered a USB-UIRT.
post #4 of 5
At risk of sounding redundant - I too think that the USB-UIRT is a good way to go. I've used one for a number of years and it has been a great performer. I've been able to control a wide and diverse range of equipment and it's always delivered.

Admittedly not what you posted about, but I've recently moved to using an iTouch and the RoomieRemote app to control my whole-house and media room setups - the USB-UIRT has been brilliant at capturing IR codes for insertion into the Roomie control file.
post #5 of 5
Thread Starter 
I just wanted to post back on this topic so others finding this thread know the results: the suggestions to use USB-UIRT and EventGhost were good ones. Everything is working well, though I did have to do some Python scripting in EventGhost in order to overcome some fundamental differences in the way my AVR, Logitech G13 keyboard, and Windows handle volume levels. I'm thinking that this could be a common issue so I'm posting below the script I wrote. It has some detailed comments on why I wrote the script. Hopefully it helps someone, somewhere, someday.
Code:
#Listens for System.Volume events and compares the system volume received to 
#50.00. If new volume is less than 50.00, it sends a volume down command to 
#the AIWA AVR via the USB-UIRT device. If it's greater than 50.00, it sends 
#volume up.
#
#Why 50.00? Because every time we get a systemvolume event, we reset the
#system volume to 50.00. First, note that this is okay to do because the 
#AIWA is controlling the volume, not the PC (this is true only when using 
#the sound blaster's DolbyDigital live - i.e. when the AVR is doing all
#of the audio decoding). But why set it to 50.00 at all? Because the 
#roller on the logitech keyboard is infinite - i.e. it never stops, even
#when, for example, system volume gets to 100.00. Thus,
#you could be turning the wheel, and the system volume would be at 100
# and never going up, which meansEvent Ghost would not see the system
#volume chaning and not know to keep raising the volume on the AIWA. In
#short, this method lets us ignore the fact that the AIWA and PC system
#volumes will never be in sync and let's us always know that moving 
#the volume control wheel up will let us (in this script) see an increasing
#volume value, and vice versa for down.


#This function handles the volume change.
def OnVolumeChange():
    #Make sure we got a real System.Volume event. If not, don't do anything
    #else
    if eg.event.string != "System.Volume":
        print "Error: Volume change action invoked for non-volume change event."
        return
    
    if float(eg.event.payload) < 50.00:
        eg.plugins.USB_UIRT.TransmitIR(u'0000 006C 002C 0002 0156 00AC 0015 0016 0016 0016 0016 0016 0015 0041 0016 0040 0016 0041 0015 0041 0016 0016 0015 0016 0016 0016 0016 0016 0015 0016 0016 0016 0016 0040 0016 0041 0015 0041 0016 0016 0015 0016 0016 0016 0016 0016 0015 0041 0016 0040 0016 0041 0015 0041 0016 0040 0016 0041 0015 0016 0016 0041 0015 0016 0016 0016 0016 0040 0016 0016 0016 0016 0015 0016 0016 0041 0015 0016 0016 0041 0015 0041 0016 0016 0015 0041 0016 0040 0016 0041 0015 036F 0157 00AC 0015 0DFF', 4, 0)
    elif float(eg.event.payload) > 50.00:
        eg.plugins.USB_UIRT.TransmitIR(u'0000 006C 002C 0002 0157 00AD 0015 0016 0016 0016 0016 0016 0015 0041 0016 0040 0016 0041 0015 0041 0016 0016 0015 0016 0016 0016 0016 0016 0015 0016 0016 0016 0016 0040 0016 0041 0015 0041 0016 0016 0015 0016 0016 0016 0016 0016 0015 0041 0016 0040 0016 0041 0015 0041 0016 0040 0016 0041 0015 0041 0016 0016 0015 0016 0016 0016 0016 0040 0016 0016 0016 0016 0015 0016 0016 0016 0016 0040 0016 0041 0015 0041 0016 0016 0015 0041 0016 0040 0016 0041 0015 0370 0157 00AC 0015 0E03', 4, 0)

#Invoke the volume changing fucntion.
OnVolumeChange()

As mentioned in the comments, in EventGhost, not only does this script run every time a volume change event comes, but there is also an action that resets the system volume to 50%. Thus Event Ghost is only monitoring volume change direction (up or down) not absolute volume. This is needed to convert the Windows system volume from a scale of 0 - 100 to my AVR volume, which is a much smaller scale and also needed to handle the fact that the volume control on my keyboard has no knowledge of the current system volume. One final Note: anyone using this script would have to replace the USB_UIRT IR commands with the ones specific to their AVR, which is easily done using the EventGhost USB-UIRT plugin's learn IR feature.

I don't know if EventGhost has a simpler way to handle this sort of thing than a script, but this was the first idea that came to mind.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Remote Control Area
AVS › AVS Forum › A/V Control & Automation › Remote Control Area › Control AVR volume via IR output from PC