[mythtv-users] Getting lirc working

Jon jon at sd-6.org
Sat Mar 17 04:49:48 UTC 2007



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.
 Finally, it seems
> that saa7134-cards.c needs several parameters in connection with my 
> board for, which I don't have.
> 
> _______________________________________________
> mythtv-users mailing list
> mythtv-users at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users


More information about the mythtv-users mailing list