Problems with PVR 250 and MythTV

Vadim Mikhailov lirc at mikhailov.org
Wed Feb 28 08:51:53 UTC 2007


Matt Stegmeir wrote:

> Joe.  As far as I know no one has done the work to make the remote work
> with lirc (but I may be wrong)
> 
> This guy's code will show you if the remote hardware is working and
> provide a starting point if you want to roll your own remote code.  It
> works with my pvr-350.
> 
> http://www.arcknowledge.com/gmane.comp.hardware.lirc/2006-03/msg00018.html

  Yes, that was me - I made LIRC work with PVR350 on FreeBSD back in
March 2006. I have never published my work because my approach was
rather crude and remote was not very responsive - it used polling.

  You can get my old patched port here:
http://mikhailov.org/files/lirc-0.7.2-cxm-patched-port.tar.gz
I never got to create full patch against LIRC though, so use at your own
risk.

  Few months ago I decided to stop fighting windmills and converted
FreeBSD MythTV box to Linux, and boy, how much better experience it is!
Everything just works out of the box - no patching of cxm driver to
bring V4L2 ioctls, MythTV never crashes, tuner appears to get much
better picture - I have no idea why.

  I love FreeBSD a lot, but in multimedia it lags behind Linux
considerably. It's pleasure to see that you guys trying to change it to
the better.

  Talking about REAL fix for PVR350 remote: I believe the only good
solution to this is to enhance cxm kernel driver to create another
device like /dev/cxmr0 (in addition to /dev/cxm0) for remote control, so
select() on it could be used by LIRC and avoid polling.
This will also make creating LIRC driver extremely simple. In fact,
hw_cxm may become simplest driver of all LIRC drivers - almost all heavy
lifting will happen in kernel. Actually, such heavy lifting is already
done by bktr (and REMOTE_GETKEY ioctl can use it as is), it only needs
to do it via device other than tuner device, and should support read()
and select().

  Good luck!

Vadim Mikhailov



More information about the freebsd-multimedia mailing list