Volume Knob on Antec Fusion
Antec Fusion has this big, nice-looking volume knob. It would also be nice to let it actually do something. The following are the steps I took to make it to work nicely with an MCE remote. My Myth box was based on Fedora Core 6, installed using RPMs from Fedora and ATRpms as much as possible. If you have a system based on another distribution, adapt the steps accordingly.
.
Note: In mid 2007 Antec released Version 2 of the silver case and a black version. The V2 silver case contains an updated iMon OEM VFD module with integrated IR receiver, which differs from the original case which contained an OEM iMon VFD with no IR receiver. Many (Windows) users on the SoundGraph forum have reported heavy restrictions in the later revision that break compatibility with the earlier version. The black version contains an iMon OEM LCD module which currently does not work with Lirc or LcdPROC(see Imon page for more details). The instructions on this page are currently valid for the original Antec Fusion case and Version 2 of the silver case, and may not be appropriate for the black version.
Update Oct 2007 patch for Black Fusion available here. IR receiver in Black Fusion is working with MCE remotes. Use this guide for a cut and paste howto.
.
Contents
Get the VFD to work
I followed the LCDproc page and made the VFD work.
Edit udev rules
There are two lirc devices on the system (in my case, lirc_imon, and lirc_mceusb2), but it's sort of random that which device is assigned lirc0 or lirc1 at boot time. So we need udev to make some symlinks with unique names to point to the correct devices.
Edit /etc/udev/rules.d/lirc.rules, and add the following lines to the end of the file. You need to change the idVendor for your own devices.
KERNEL=="lirc[0-9]*", SYSFS{idVendor}=="0471", SYMLINK+="lirc_mce" KERNEL=="lirc[0-9]*", SYSFS{idVendor}=="15c2", SYMLINK+="lirc_imon"
If you need info on how to write udev rules, or on how to find out unique SYSFS attributes you can use to write the rules, see here. New versions of udev will need SYSFS to be replaced with ATTR.
For some devices, such as the Hauppauge PVR-150, the idVendor can be tricky to find. In which case, you can try to assign the symlink based in the character device number. Running
ls -l /dev/lirc*
will show the lirc devices
crw-rw---- 1 root root 61, 0 2008-01-20 19:45 /dev/lirc0 crw-rw---- 1 root root 61, 1 2008-01-20 19:45 /dev/lirc1
If you are confident the latter is the PVR device, you can assign a symlink using
KERNEL=="lirc[0-9]*", ATTR{dev}=="61:1", SYMLINK+="lirc_pvr"
Although this will fail if the assigment is truly random, it usually isn't if you are not making changes to your system, and this trick enables you to follow the rest of this guide.
Add entries to lircd.conf
Following this thread, I added these lines into /etc/lircd.conf
begin remote name ClickWheel bits 24 eps 30 aeps 100 one 0 0 zero 0 0 post_data_bits 8 post_data 0xFF gap 131993 toggle_bit 0 begin codes WheelCC 0x010000 WheelCW 0x000100 WheelClick 0x000008 end codes end remote
Newer versions may require the following two lines to be adjusted:
post_data_bits 48 post_data 0xFFFFFF35EE
Edit /etc/sysconfig/lircd
Edit /etc/sysconfig/lircd (or /etc/lirc/hardware.conf for Ubuntu) to read as follows
# Options to lircd LIRCD_OPTIONS="--driver=default --device=/dev/lirc_mce --output=/dev/lircd --pidfile=/var/run/lircd.pid --connect=localhost:8765" LIRCD1_OPTIONS="--driver=default --device=/dev/lirc_imon --output=/dev/lircd1 --pidfile=/var/run/lircd1.pid --listen"
Modify the device names according to whatever symlinks you've chosen for your devices.
Edit /etc/init.d/lircd
Replace the line
daemon lircd $LIRCD_OPTIONS
with these two lines
lircd $LIRCD1_OPTIONS lircd $LIRCD_OPTIONS
And add after the line
killproc lircd
another line that reads
killproc lircd1
Note that this will start the first lircd instance with "--listen" then a second instance using "--connect". You have to start them in this order for it to work.
Edit .mythtv/lircrc
Add the following section to .lircrc.
begin prog = mythtv button = WheelCW repeat = 1 config = ] end begin prog = mythtv button = WheelCC repeat = 1 config = [ end
You can increase the repeat number to make the wheel less sensitive. But I've found that it feels the best by letting repeat=1, which makes every notch count.
Restart udev, lircd, and mythfrontend to test
- A word of warning:
System updates can and most likely will replace these edited files with updated originals. Making backups of your edited files can assist you in re-creating your edits after a system update, saving you the time of looking up your vendor strings again.