Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lirc - irsend timeout when using rcmm encoding #590

Closed
sk-os opened this issue May 11, 2014 · 8 comments
Closed

lirc - irsend timeout when using rcmm encoding #590

sk-os opened this issue May 11, 2014 · 8 comments

Comments

@sk-os
Copy link

sk-os commented May 11, 2014

Using Raspberry as IR remote with gpio controlled ir-led using lirc_rpi

uname -a
Linux raspberrypi 3.12.18+ #679 PREEMPT Thu May 1 14:40:27 BST 2014 armv6l GNU/Linux

lircd -v
lircd 0.9.0-pre1

Sending and receiving SPACE_ENC remote codes works perfectly fine.
receiving RCMM codes with irw works, but sending with irsend does not.

command executed: irsend SEND_ONCE KathreinRC660 KEY_OK

symptoms: IR-led flashes once, than nothing happens. Following irsend runs into a timeout

running lirc in debug mode:

sudo lircd -n -d /dev/lirc0
lircd-0.9.0-pre1[6020]: lircd(default) ready, using /var/run/lirc/lircd
lircd-0.9.0-pre1[6020]: accepted new client on /var/run/lirc/lircd
lircd-0.9.0-pre1[6020]: removed client
lircd-0.9.0-pre1[6020]: accepted new client on /var/run/lirc/lircd

client is after approx 30 sec removed again, during this time irsend runs into the timeout

problem occurs/reproduced in raspbian, openelec and archlinux

Used lircd.conf:

begin remote

name KathreinRC660
bits 16
flags RCMM|CONST_LENGTH
eps 10
aeps 130

header 500 185
three 217 700
two 217 560
one 217 367
zero 210 185
ptrail 250
pre_data_bits 16
pre_data 0x2290
gap 16777215
toggle_bit 17
min_repeat 0
frequency 36000
duty_cycle 50

  begin codes
      KEY_0                        0x0000
      KEY_1                        0x0001
      KEY_2                        0x0002
      KEY_3                        0x0003
      KEY_4                        0x0004
      KEY_5                        0x0005
      KEY_6                        0x0006
      KEY_7                        0x0007
      KEY_8                        0x0008
      KEY_9                        0x0009
      KEY_INFO                     0x000F
      KEY_OK                       0x005C           
      KEY_STAND_BY                 0x000C
      KEY_MUTE                     0x000D
      KEY_CURSOR_RIGHT             0x005B
      KEY_CURSOR_LEFT              0x005A
      KEY_CURSOR_UP                0x0058
      KEY_CURSOR_DOWN              0x0059
      KEY_VOLUME_UP                0x0010
      KEY_VOLUME_DOWN              0x0011
      KEY_RED                      0x006D
      KEY_GREEN                    0x006E
      KEY_YELLOW                   0x006F
      KEY_BLUE                     0x0070
      KEY_EPG                      0x00CC
      KEY_EXIT                     0x0055
      KEY_MENU                     0x0054
      KEY_CHANNEL_UP               0x001E
      KEY_CHANNEL_DOWN             0x001F
      KEY_PLAY                     0x0038
      KEY_STOP                     0x0031
      KEY_RECORD                   0x0037
      KEY_PAUSE                    0x0039
      KEY_FASTFORWARD              0x0020
      KEY_REWIND                   0x0021
      KEY_TEXT                     0x003C
  end codes

end remote

@sk-os
Copy link
Author

sk-os commented May 19, 2014

any comments an that? or should I report this issue somewhere else?

@popcornmix
Copy link
Collaborator

The pi specific lirc driver was contributed by community and it's not something I know much about.
There was an update to lirc transmission that a number of people responded positively to:
#525

I was hoping someone who knows more about this will chime in.

@sk-os
Copy link
Author

sk-os commented May 20, 2014

I followed the issue you have mentioned as I thought it is related, but after the fix the RCMM problem still occurs.
anyway, I searched the web again in the last days and found out that there was a new version of lirc released a few days ago http://sourceforge.net/projects/lirc/files/LIRC/0.9.1/
So maybe the problem gets fixed by this new version, altough there's nothing like this mentioned in the changelog.

I also found a few discussions of that RCMM problem in the mailing list archive from 2012 but without a real explanation or solution. For me at the moment it looks like that this is more likely a general problem in lirc and not related to raspberry pi or lirc_rpi

I will try contact the mailing list and/or the developers, maybe they can help.

@popcornmix
Copy link
Collaborator

Okay. I'll leave this issue open for now in case any users who have found a solution can comment.
Please report here if you learn anything that may help.

@sk-os
Copy link
Author

sk-os commented May 22, 2014

Problem solved

I used the lirc.conf from the remote controlled system (a Linux based satellite receiver) which caused the problem (the vendor supplied config file, so to say). It's a little bit confusing because receiving works and sending doesn't. However, I exchanged the vendor header with the one from lirc supplied rcmm32.conf template and now it works.

see also mailing list thread: http://sourceforge.net/p/lirc/mailman/lirc-list/thread/537DD50F.40904%40gmail.com/

so this was clearly a program/config issue.
Issue can be closed :)

@popcornmix
Copy link
Collaborator

Okay, good to hear.

@spuder
Copy link

spuder commented May 18, 2015

So what was the confirmation problem that solved this? I'm encourting the same problem where I get a timeout. I've read the mailing list discussion half a dozen times, but I don't see what the problem was with the config.

@sk-os
Copy link
Author

sk-os commented May 18, 2015

specific problem in my case: the header of the vendor supplied config file (took the file from the linux based receiving device) was faulty.

the solution:
first use the lirc supplied rcmm32.conf as template for your remote. than record your RCMM signals with irw and the rcmm32.conf as EXISTING remote config file.
if you have done everything right, irw will not ask you for setting up the remote (press different buttons a.s.o.) but will ask directly for a key.
after recording your keys you will be able to send the keys.

so in short and general -
problem: you cant setup a new RCMM remote with irw (getting wrong values)
solution: use rcmm32.conf as existing remote and record only the keys

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants