Menu

#37 code length limitation

v1.0 (example)
open
nobody
None
5
2016-05-21
2016-05-21
toxis
No

I'm trying to write a configuration file for a Chinese remote control,
which is using a Realtek's rts715-3 transmitter chip.
The rts715-3 has 7 pins for key input, D1, D2, D4, D5, D7, D8, and D9.
My remote transmitter use only D1, D2, D5,and D7.
First of all, I tried RawCodes.exe with my python script,
and got the following results.

10011000 01100000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00011100
10011000 01100000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0001110
pre_data <D1><D2>     [D4] <D5>     <D7>[D8] [D9]

I guess first 8 bit is pre_data, 0x98.
and following 64 bit is code,
and next 8 bit is post_data.
it repeats only two times while pressing the button.
The last 0 is ended with space, so there's no way to recognize length of the space.
I resolved this problem using ptrail, repeat_gap, and min_repeat.
The following is my configuration file.

begin remote
    name        RTS715_3
    bits        64
    flags       SPACE_ENC | CONST_LENGTH
    eps         30
    aeps        300

    one             300 3000
    zero            300 1500
    pre_data_bits   8
    pre_data        0x98
    post_data_bits  7
    post_data       0x0E
    ptrail          300
    repeat_gap      1500
    min_repeat      1
    toggle_bit_mask 0x0

    begin codes
        KEY_D1  0x6000000000000000
        KEY_D2  0x0600000000000000
        KEY_D4  0x0006000000000000
        KEY_D5  0x0000600000000000
        KEY_D7  0x0000006000000000
        KEY_D8  0x0000000600000000
        KEY_D9  0x0000000060000000
    end codes
end remote

It works well except KEY_D2 is recognized as KEY_D1.

Connecting to 127.0.0.1 ...
Connected to 127.0.0.1
000000000000000e 00 KEY_D1 RTS715_3
000000000000000e 00 KEY_D1 RTS715_3
000000000000000e 00 KEY_D1 RTS715_3
000000000000000e 00 KEY_D1 RTS715_3
003000000000000e 00 KEY_D5 RTS715_3
003000000000000e 00 KEY_D5 RTS715_3
000030000000000e 00 KEY_D7 RTS715_3
000030000000000e 00 KEY_D7 RTS715_3

I guess WinLIRC concatenates code and post_data.
and it has 64 bits limitation.

KEY_D1 : 
    0x6000000000000000(64) and 0x0E(7)
 -> 0x30000000000000000E(71)
 -> 0x000000000000000e(64)  # truncated
KEY_D2 :
    0x0600000000000000(64) and 0x0E(7)
 -> 0x03000000000000000E(71)
 -> 0x000000000000000e(64)  # truncated
KEY_D5 :
    0x0000600000000000(64) and 0x0E(7)
 -> 0x00003000000000000E(71)
 -> 0x003000000000000e(64)  # truncated
KEY_D7 :
    0x0000006000000000(64) and 0x0E(7)
 -> 0x00000030000000000E(71)
 -> 0x000030000000000e(64)  # truncated

I hope next version of WinLIRC should solve the problem.
Thanks a lot.

Discussion


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.