[mythtv-users] Getting lirc working
Angus
sylvania at istop.com
Sat Mar 17 15:52:10 UTC 2007
Jon wrote:
> Angus wrote:
>
>> Jon wrote:
>>
>>> Angus wrote:
>>>
>>>
>>>> Jon wrote:
>>>>
>>>>
>>>>> Angus wrote:
>>>>>
>>>>>
>>>>>
>>>>>> Jon wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Angus wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Jon wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> It sounds like your remote does not repeat keypresses. Does it have a
>>>>>>>>> LED? If so, does it continue flashing as you hold the button down? If
>>>>>>>>> not you can use a digital camera pointed at the ir transmitter to confirm.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>> Digital camera, eh?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> Digital cameras are sensitive to IR light.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Well, as an addendum, after pushing several keys for a while out of
>>>>>>>> frustration, it finally registered a "gap". So I went through the
>>>>>>>> process of testing every key, and you can imagine my frustration when I
>>>>>>>> finished and found every key was coded as 0x0. Here's the less
>>>>>>>> vacuous-looking part of the config file:
>>>>>>>> bits 0
>>>>>>>> eps 30
>>>>>>>> aeps 100
>>>>>>>>
>>>>>>>> one 0 0
>>>>>>>> zero 0 0
>>>>>>>> pre_data_bits 32
>>>>>>>> pre_data 0x800100A7
>>>>>>>> gap 339993
>>>>>>>> toggle_bit 0
>>>>>>>>
>>>>>>>> Now what do I try?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> Have you read http://www.linuxtv.org/v4lwiki/index.php/Remote_controllers
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> Yes, I have.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Specifically,
>>>>>>> saa7134: Most cards need only the saa7134 driver, but a few need the
>>>>>>> ir-kbd-i2c helper. Boards known to require ir-kbd-i2c include the Upmost
>>>>>>> Purple TV and the latest "i-series" Pinnacle PCTV boards (110i, 50i)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> And I've been asking what that means over at v4l, but I haven't
>>>>>> gotten any response.
>>>>>>
>>>>>>
>>>>>>
>>>>> It means you may need to modprobe ir-kdc-i2c before it will work. You
>>>>>
>>>>>
>>>>>
>>>> Ah, yes. But that module loads automatically with saa7134.
>>>> http://www.mythtv.org/wiki/index.php/KWorld_Global_TV_Terminator#Remote
>>>> also says that I might need a patch for that, which is apparently got
>>>> something to do with v4l, but I can't been able to get anyone there to
>>>> help me with that yet.
>>>>
>>>>
>>>>
>>>>> might see if you can use the linux input interface instead of lirc.
>>>>> Open xev and press a few buttons on the remote to see if they register.
>>>>>
>>>>>
>>>>>
>>>> I did, and the results were not remarkable. Anything I pressed
>>>> returned this:
>>>> KeyPress event, serial 28, synthetic NO, window 0x1e00001,
>>>> root 0x45, subw 0x0, time 959597, (-218,-78), root:(400,300),
>>>> state 0x0, keycode 177 (keysym 0x0, NoSymbol), same_screen YES,
>>>> XLookupString gives 0 bytes:
>>>> XmbLookupString gives 0 bytes:
>>>> XFilterEvent returns: False
>>>>
>>>> KeyRelease event, serial 31, synthetic NO, window 0x1e00001,
>>>> root 0x45, subw 0x0, time 959645, (-218,-78), root:(400,300),
>>>> state 0x0, keycode 177 (keysym 0x0, NoSymbol), same_screen YES,
>>>> XLookupString gives 0 bytes:
>>>> XFilterEvent returns: False
>>>>
>>>> Except for the "time" field, this is exactly what was returned with
>>>> every key I pressed. I get the feeling that means it isn't working here
>>>> either.
>>>>
>>>>
>>>>
>>> I suspect your remote is not supported by the driver yet. If you are
>>> feeling adventurous, see the section titled "How to add remote control
>>> support to a card" at the url above. I once added support for a cx88
>>> based card before, it's not very difficult.
>>>
>>>
>> Which URL?
>> http://www.linuxtv.org/v4lwiki/index.php/Remote_controllers? It seems to
>> be only for "GPIO" remotes. How would I know if mine is "GPIO" and not
>> "C3PIO" for instance?
>>
> Per the article: Sometimes remotes are not pure gpio and acts a bit
> differently. For example, keypress can be signalled by gpio and keyvalue
> can be read from i2c device. If you seen only 1 bit is changing in gpio
> once it's probably this situation.
>
>
>> Also, what makes you think I know any C?
>>
> Nothing, I can do hello world in C and that is it. I basically found
> the remote definitions in my driver, cloned one and played with the gpio
> mask until I got different vaules for each key just like it says. It
> was a bit daunting at first. The first time I looked through it I just
> said screw it, but I came back to it a few months later and it worked on
> about the third try.
>
> Actually, I know a great
>
>> deal of C. But all the C-knowledge in the world can't help me understand
>> those instructions. Are there better ones anywhere?
>>
> Assuming your card is correctly auto detected and you are not passing
> card=x to the driver, just find the case statement it is referring to.
> Note the remote that is bound to it. Find the remote definition, change
> mask_keycode to 0. Proceed from step 3.
>
Ah, could this be the problem? My card is *not* autodetected, and I
do have to pass card=x. Here's my /etc/modprobe.d/saa7134:
options saa7134 i2c_scan=1 card=65 tuner=54
If remove this file, then the card doesn't work at all
More information about the mythtv-users
mailing list