[mythtv-users] Joy and pain (Daryl McDonald)

Daryl McDonald darylangela at gmail.com
Thu Feb 13 20:01:45 UTC 2014


On Thu, Feb 13, 2014 at 2:44 PM, Daryl McDonald <darylangela at gmail.com>wrote:

>
>
>
> On Thu, Feb 13, 2014 at 2:34 PM, Daryl McDonald <darylangela at gmail.com>wrote:
>
>>
>>
>>
>> On Thu, Feb 13, 2014 at 11:06 AM, Hika van den Hoven <hikavdh at gmail.com>wrote:
>>
>>>  Hoi Karl,
>>>
>>>
>>> Thursday, February 13, 2014, 3:39:29 PM, you wrote:
>>>
>>>
>>>  On Thu, Feb 13, 2014 at 5:00 AM, Daryl McDonald <darylangela at gmail.com>
>>> wrote:
>>> On Wed, Feb 12, 2014 at 7:41 PM, NickS <nicks272 at yahoo.co.uk> wrote:
>>> >
>>> > I'm also running Mythbuntu (12.04) with a USB infrared receiver, and
>>> had the
>>> > same problem. The following steps are how I've resolve it:
>>> >
>>> > *** 1. Identify the /dev/lirc mappings created at boot-time:
>>> >
>>> > ~$ ls /dev/lirc*
>>> > /dev/lirc0  /dev/lirc1  /dev/lirc2  /dev/lircd
>>> >
>>> > ~$ dmesg | grep lirc
>>> > [    7.675423] lirc_dev: IR Remote Control driver registered, major 250
>>> > [    7.725757] rc rc0: lirc_dev: driver ir-lirc-codec (mceusb)
>>> registered at
>>> > minor = 0
>>> > [    7.937544] rc rc1: lirc_dev: driver ir-lirc-codec (saa716x)
>>> registered
>>> > at minor = 1
>>> > [   11.655015] rc rc2: lirc_dev: driver ir-lirc-codec (cx23885)
>>> registered
>>> > at minor = 2
>>> >
>>> > In this case my mceusb device is number 0, i.e. /dev/lirc0 .
>>> >
>>> > *** 2. Get more info on /dev/lirc0 :
>>> >
>>> > ~$ udevadm info -a -p $(udevadm info -q path -n /dev/lirc0)
>>> >
>>> >   looking at device
>>> > '/devices/pci0000:00/0000:00:12.0/usb4/4-3/4-3:1.0/rc/rc0/lirc0':
>>> >     KERNEL=="lirc0"
>>> >   ....
>>> >   looking at parent device
>>> > '/devices/pci0000:00/0000:00:12.0/usb4/4-3/4-3:1.0/rc/rc0':
>>> >   ....
>>> >   looking at parent device
>>> > '/devices/pci0000:00/0000:00:12.0/usb4/4-3/4-3:1.0':
>>> >   ....
>>> >   looking at parent device '/devices/pci0000:00/0000:00:12.0/usb4/4-3':
>>> >     ATTRS{idVendor}=="1784"
>>> >     ATTRS{idProduct}=="0011"
>>> >   ....
>>> >
>>> > *** 3. Create (or append to) the file
>>> > /etc/udev/rules.d/z21-persistent-local.rules
>>> > the following udev rule:
>>> >
>>> > KERNEL=="lirc*", ATTRS{idVendor}=="1784", ATTRS{idProduct}=="0011",
>>> > SYMLINK+="input/irremote"
>>> >
>>> > Note how the specified elements match the output from step #2 above.
>>> >
>>> > *** 4. Reload the udev rules and test the new rule to make sure it
>>> works:
>>> >
>>> > ~$ sudo udevadm control --reload-rules
>>> > ~$ sudo udevadm test -a -p  $(udevadm info -q path -n /dev/lirc0)
>>> >
>>> > You should see lines confirming that your rules file has been read,
>>> the rule
>>> > has been applied and the link has been created:
>>> >
>>> > ....
>>> > parse_file: reading '/etc/udev/rules.d/z21-persistent-local.rules' as
>>> rules
>>> > file
>>> > ....
>>> > udev_rules_apply_to_event: LINK 'input/irremote'
>>> > /etc/udev/rules.d/z21-persistent-local.rules:1
>>> > ....
>>> > link_update: creating link '/dev/input/irremote' to '/dev/lirc0'
>>> > ...
>>> > DEVLINKS=/dev/input/irremote
>>> > DEVNAME=/dev/lirc0
>>> > DEVPATH=/devices/pci0000:00/0000:00:12.0/usb4/4-3/4-3:1.0/rc/rc0/lirc0
>>> >
>>> > *** 5. Of course step 4 was just a test, so restart udev and check
>>> that you
>>> > can see the device link itself:
>>> >
>>> > ~$ sudo /init.d/udev restart
>>> > ~$ ls -l /dev/input/irremote
>>> > lrwxrwxrwx 1 root root 8 Feb 13 00:19 /dev/input/irremote -> ../lirc0
>>> >
>>> > *** 6. Update /etc/lirc/hardware.conf to specify the device:
>>> >
>>> > REMOTE_DEVICE="/dev/input/irremote"
>>> >
>>> > *** 7. Restart lirc:
>>> >
>>> > ~$ sudo /etc/init.d/lirc restart
>>> >
>>> > And your remote should be working in the MythTV frontend :)
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > _______________________________________________
>>> > mythtv-users mailing list
>>> > mythtv-users at mythtv.org
>>> > http://www.mythtv.org/mailman/listinfo/mythtv-users
>>> > http://wiki.mythtv.org/Mailing_List_etiquette
>>> > MythTV Forums: https://forum.mythtv.org
>>>
>>> My situation is a IR blaster, which controls a set top box, connected
>>> via serial port, not usb. No remote involved.
>>>
>>> Thanks anyway.    Daryl
>>>
>>> Daryl,
>>>
>>> This is still good advice, and is a good template for your specific
>>> operating system.
>>>
>>> Karl
>>>
>>>
>>> Karl is right. Check if you have a file /etc/lirc/hardware.conf and if
>>> it containts a line
>>> 'REMOTE_DEVICE="/dev/lirc0"' then change that line to
>>> 'REMOTE_DEVICE="/dev/lircSerial"'
>>> and restart lircd as said.
>>> Adding the new card then would keep your blaster working.
>>>
>>> Tot mails,
>>>   Hika                            mailto:hikavdh at gmail.com<hikavdh at gmail.com>
>>>
>>> "Zonder hoop kun je niet leven
>>> Zonder leven is er geen hoop
>>> Het eeuwige dilemma
>>> Zeker als je hoop moet vernietigen om te kunnen overleven!"
>>>
>>> De lerende Mens
>>> --
>>>
>>> _______________________________________________
>>> mythtv-users mailing list
>>> mythtv-users at mythtv.org
>>> http://www.mythtv.org/mailman/listinfo/mythtv-users
>>> http://wiki.mythtv.org/Mailing_List_etiquette
>>> MythTV Forums: https://forum.mythtv.org
>>
>>
>> In theory I agree, I went in and made the changes and it still did not
>> work.
>>
>> I even commented out the udev rule and changed "lircSerial" to "lirc1",
>> because it persistently loads cx88xx to "lirc0", and still nogo. I'm going
>> to put it all back as suggested above and give it one more try.    Daryl
>>
>
> This is what I see in the terminal after putting things back:
>
> daryl at daryl-A780L3C:~$ ls /dev/lirc*
> /dev/lirc0  /dev/lirc1  /dev/lircd  /dev/lircSerial
> daryl at daryl-A780L3C:~$ dmesg | grep lirc
> [   26.059015] lirc_dev: IR Remote Control driver registered, major 250
> [   26.059485] rc rc0: lirc_dev: driver ir-lirc-codec (cx88xx) registered
> at minor = 0
> [   27.964481] lirc_serial: module is from the staging directory, the
> quality is unknown, you have been warned.
> [   28.863438] lirc_serial: auto-detected active high receiver
> [   28.863553] lirc_serial lirc_serial.0: lirc_dev: driver lirc_serial
> registered at minor = 1
> daryl at daryl-A780L3C:~$ /usr/local/bin/check_stb
> irsend: command failed: SEND_ONCE DCT700 info
> irsend: unknown remote: "DCT700"
> daryl at daryl-A780L3C:~$
>
> And this is the /etc/lirc/hardwaqre.conf file:
>
> # /etc/lirc/hardware.conf
> #
> #Chosen Remote Control
> REMOTE="None"
> REMOTE_MODULES=""
> REMOTE_DRIVER=""
> REMOTE_DEVICE=""
> REMOTE_SOCKET=""
> REMOTE_LIRCD_CONF=""
> REMOTE_LIRCD_ARGS=""
>
> #Chosen IR Transmitter
> TRANSMITTER="Serial Port (UART) : Motorola Cable box"
> TRANSMITTER_MODULES="lirc_dev lirc_serial"
> TRANSMITTER_DRIVER=""
> TRANSMITTER_DEVICE="/dev/lircSerial"
> TRANSMITTER_SOCKET=""
> TRANSMITTER_LIRCD_CONF="motorola/dctxxxx.conf"
> TRANSMITTER_LIRCD_ARGS=""
>
> #Enable lircd
> START_LIRCD="true"
>
> #Don't start lircmd even if there seems to be a good config file
> #START_LIRCMD="false"
>
> #Try to load appropriate kernel modules
> LOAD_MODULES="true"
>
> # Default configuration files for your hardware if any
> LIRCMD_CONF=""
>
> #Forcing noninteractive reconfiguration
> #If lirc is to be reconfigured by an external application
> #that doesn't have a debconf frontend available, the noninteractive
> #frontend can be invoked and set to parse REMOTE and TRANSMITTER
> #It will then populate all other variables without any user input
> #If you would like to configure lirc via standard methods, be sure
> #to leave this set to "false"
> FORCE_NONINTERACTIVE_RECONFIGURATION="false"
> START_LIRCMD=""
>
> Not fair, this should have worked.    Daryl
>

OK I'm re-reading this thread, pardon the Irish cranium (and now that I'm
Italian-in-law it's called testa duro), and forgive me Nick. Below is the
info for potential new rules, serial port is lirc1, and new tuner is lirc0:

daryl at daryl-A780L3C:~$ udevadm info -a -p $(udevadm info -q path -n
/dev/lirc1)

snip

  looking at device '/devices/platform/lirc_serial.0/lirc/lirc1':
    KERNEL=="lirc1"
    SUBSYSTEM=="lirc"
    DRIVER==""

  looking at parent device '/devices/platform/lirc_serial.0':
    KERNELS=="lirc_serial.0"
    SUBSYSTEMS=="platform"
    DRIVERS=="lirc_serial"

  looking at parent device '/devices/platform':
    KERNELS=="platform"
    SUBSYSTEMS==""
    DRIVERS==""

daryl at daryl-A780L3C:~$ udevadm info -a -p $(udevadm info -q path -n
/dev/lirc0)

snip

  looking at device
'/devices/pci0000:00/0000:00:14.4/0000:04:01.0/rc/rc0/lirc0':
    KERNEL=="lirc0"
    SUBSYSTEM=="lirc"
    DRIVER==""

  looking at parent device
'/devices/pci0000:00/0000:00:14.4/0000:04:01.0/rc/rc0':
    KERNELS=="rc0"
    SUBSYSTEMS=="rc"
    DRIVERS==""
    ATTRS{protocols}=="rc-5 nec rc-6 jvc sony sanyo mce_kbd [lirc]"

  looking at parent device '/devices/pci0000:00/0000:00:14.4/0000:04:01.0':
    KERNELS=="0000:04:01.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="cx8800"
    ATTRS{irq}=="21"
    ATTRS{subsystem_vendor}=="0x11bd"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x040000"
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{dma_mask_bits}=="32"

ATTRS{local_cpus}=="00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000007"
    ATTRS{device}=="0x8800"
    ATTRS{msi_bus}==""
    ATTRS{local_cpulist}=="0-2"
    ATTRS{vendor}=="0x14f1"
    ATTRS{subsystem_device}=="0x0051"
    ATTRS{numa_node}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:14.4':
    KERNELS=="0000:00:14.4"
    SUBSYSTEMS=="pci"
    DRIVERS==""
    ATTRS{irq}=="0"
    ATTRS{subsystem_vendor}=="0x0000"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x060401"
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{dma_mask_bits}=="32"

ATTRS{local_cpus}=="00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000007"
    ATTRS{device}=="0x4384"
    ATTRS{msi_bus}=="1"
    ATTRS{local_cpulist}=="0-2"
    ATTRS{vendor}=="0x1002"
    ATTRS{subsystem_device}=="0x0000"
    ATTRS{numa_node}=="0"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""

daryl at daryl-A780L3C:~$

Now from that first group of info, I'm at a loss to create a rule. I don't
get the categories that Nick was able to work from, what I get is pretty
scant, no?   Daryl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.mythtv.org/pipermail/mythtv-users/attachments/20140213/1f708a7e/attachment.html>


More information about the mythtv-users mailing list