Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: NOVA-t remote control
> Julian Tibble wrote:
>
> > As far as I can tell, av7110_ir.c is part of the driver for "fully featured"
> > cards, and budget-ci.c is for cards with a common interface connection for
> > pay-per-view. Neither of these apply to me (as far as I know), so can
> > I use the remote control?
>
> The budget-ci is actually for budget cards with IR input, it confused me
> for a while as well.
>
> My new budget card has an IR connector, but it wasn't initally working
> with the budget-ci driver. Moving the PCI ID from the budget to
> budget-ci driver was all that was required to get the remote recognised.
> Try the patch attached and see if it helps.
>
> I also needed to tweak the mapping table as well to get all the keys
> recognised correctly, but I don't have that code in front of me right now.
>
> Jon
>
Thanks!!!! That worked - my mouse and keyboard moved up one event
device and the remote control is on /dev/input/event0
Is that patch (going to be put) in the main dvb-kernel CVS tree, and
hence on into the official kernel sources?
I'll have to do something about the keytable though - not all of the
buttons on my control produce an event and some of them produce the
wrong event.
Btw, I've heard of people using some program called "evtest", I don't
know where to get that from, but I wrote the following python script
to see which events are produced by which buttons on my remote control:
### BEGINNING OF SCRIPT
#
# Event viewer - written by Julian Tibble (2003-08-30)
#
# Change REMOTE_DEVICE to the correct device for your remote control
REMOTE_DEVICE = '/dev/input/event0'
types = {
0x00: "EV_SYN",
0x01: "EV_KEY",
0x02: "EV_REL",
0x03: "EV_ABS",
0x04: "EV_MSC",
0x11: "EV_LED",
0x12: "EV_SND",
0x14: "EV_REP",
0x15: "EV_FF",
0x16: "EV_PWR",
0x17: "EV_FF_STATUS",
0x1f: "EV_MAX"
}
codes = {
0: "KEY_RESERVED",
1: "KEY_ESC",
2: "KEY_1",
3: "KEY_2",
4: "KEY_3",
5: "KEY_4",
6: "KEY_5",
7: "KEY_6",
8: "KEY_7",
9: "KEY_8",
10: "KEY_9",
11: "KEY_0",
12: "KEY_MINUS",
13: "KEY_EQUAL",
14: "KEY_BACKSPACE",
15: "KEY_TAB",
16: "KEY_Q",
17: "KEY_W",
18: "KEY_E",
19: "KEY_R",
20: "KEY_T",
21: "KEY_Y",
22: "KEY_U",
23: "KEY_I",
24: "KEY_O",
25: "KEY_P",
26: "KEY_LEFTBRACE",
27: "KEY_RIGHTBRACE",
28: "KEY_ENTER",
29: "KEY_LEFTCTRL",
30: "KEY_A",
31: "KEY_S",
32: "KEY_D",
33: "KEY_F",
34: "KEY_G",
35: "KEY_H",
36: "KEY_J",
37: "KEY_K",
38: "KEY_L",
39: "KEY_SEMICOLON",
40: "KEY_APOSTROPHE",
41: "KEY_GRAVE",
42: "KEY_LEFTSHIFT",
43: "KEY_BACKSLASH",
44: "KEY_Z",
45: "KEY_X",
46: "KEY_C",
47: "KEY_V",
48: "KEY_B",
49: "KEY_N",
50: "KEY_M",
51: "KEY_COMMA",
52: "KEY_DOT",
53: "KEY_SLASH",
54: "KEY_RIGHTSHIFT",
55: "KEY_KPASTERISK",
56: "KEY_LEFTALT",
57: "KEY_SPACE",
58: "KEY_CAPSLOCK",
59: "KEY_F1",
60: "KEY_F2",
61: "KEY_F3",
62: "KEY_F4",
63: "KEY_F5",
64: "KEY_F6",
65: "KEY_F7",
66: "KEY_F8",
67: "KEY_F9",
68: "KEY_F10",
69: "KEY_NUMLOCK",
70: "KEY_SCROLLLOCK",
71: "KEY_KP7",
72: "KEY_KP8",
73: "KEY_KP9",
74: "KEY_KPMINUS",
75: "KEY_KP4",
76: "KEY_KP5",
77: "KEY_KP6",
78: "KEY_KPPLUS",
79: "KEY_KP1",
80: "KEY_KP2",
81: "KEY_KP3",
82: "KEY_KP0",
83: "KEY_KPDOT",
84: "KEY_103RD",
85: "KEY_F13",
86: "KEY_102ND",
87: "KEY_F11",
88: "KEY_F12",
89: "KEY_F14",
90: "KEY_F15",
91: "KEY_F16",
92: "KEY_F17",
93: "KEY_F18",
94: "KEY_F19",
95: "KEY_F20",
96: "KEY_KPENTER",
97: "KEY_RIGHTCTRL",
98: "KEY_KPSLASH",
99: "KEY_SYSRQ",
100: "KEY_RIGHTALT",
101: "KEY_LINEFEED",
102: "KEY_HOME",
103: "KEY_UP",
104: "KEY_PAGEUP",
105: "KEY_LEFT",
106: "KEY_RIGHT",
107: "KEY_END",
108: "KEY_DOWN",
109: "KEY_PAGEDOWN",
110: "KEY_INSERT",
111: "KEY_DELETE",
112: "KEY_MACRO",
113: "KEY_MUTE",
114: "KEY_VOLUMEDOWN",
115: "KEY_VOLUMEUP",
116: "KEY_POWER",
117: "KEY_KPEQUAL",
118: "KEY_KPPLUSMINUS",
119: "KEY_PAUSE",
120: "KEY_F21",
121: "KEY_F22",
122: "KEY_F23",
123: "KEY_F24",
124: "KEY_KPCOMMA",
125: "KEY_LEFTMETA",
126: "KEY_RIGHTMETA",
127: "KEY_COMPOSE",
128: "KEY_STOP",
129: "KEY_AGAIN",
130: "KEY_PROPS",
131: "KEY_UNDO",
132: "KEY_FRONT",
133: "KEY_COPY",
134: "KEY_OPEN",
135: "KEY_PASTE",
136: "KEY_FIND",
137: "KEY_CUT",
138: "KEY_HELP",
139: "KEY_MENU",
140: "KEY_CALC",
141: "KEY_SETUP",
142: "KEY_SLEEP",
143: "KEY_WAKEUP",
144: "KEY_FILE",
145: "KEY_SENDFILE",
146: "KEY_DELETEFILE",
147: "KEY_XFER",
148: "KEY_PROG1",
149: "KEY_PROG2",
150: "KEY_WWW",
151: "KEY_MSDOS",
152: "KEY_COFFEE",
153: "KEY_DIRECTION",
154: "KEY_CYCLEWINDOWS",
155: "KEY_MAIL",
156: "KEY_BOOKMARKS",
157: "KEY_COMPUTER",
158: "KEY_BACK",
159: "KEY_FORWARD",
160: "KEY_CLOSECD",
161: "KEY_EJECTCD",
162: "KEY_EJECTCLOSECD",
163: "KEY_NEXTSONG",
164: "KEY_PLAYPAUSE",
165: "KEY_PREVIOUSSONG",
166: "KEY_STOPCD",
167: "KEY_RECORD",
168: "KEY_REWIND",
169: "KEY_PHONE",
170: "KEY_ISO",
171: "KEY_CONFIG",
172: "KEY_HOMEPAGE",
173: "KEY_REFRESH",
174: "KEY_EXIT",
175: "KEY_MOVE",
176: "KEY_EDIT",
177: "KEY_SCROLLUP",
178: "KEY_SCROLLDOWN",
179: "KEY_KPLEFTPAREN",
180: "KEY_KPRIGHTPAREN",
181: "KEY_INTL1",
182: "KEY_INTL2",
183: "KEY_INTL3",
184: "KEY_INTL4",
185: "KEY_INTL5",
186: "KEY_INTL6",
187: "KEY_INTL7",
188: "KEY_INTL8",
189: "KEY_INTL9",
190: "KEY_LANG1",
191: "KEY_LANG2",
192: "KEY_LANG3",
193: "KEY_LANG4",
194: "KEY_LANG5",
195: "KEY_LANG6",
196: "KEY_LANG7",
197: "KEY_LANG8",
198: "KEY_LANG9",
200: "KEY_PLAYCD",
201: "KEY_PAUSECD",
202: "KEY_PROG3",
203: "KEY_PROG4",
205: "KEY_SUSPEND",
206: "KEY_CLOSE",
207: "KEY_PLAY",
208: "KEY_FASTFORWARD",
209: "KEY_BASSBOOST",
210: "KEY_PRINT",
211: "KEY_HP",
212: "KEY_CAMERA",
213: "KEY_SOUND",
214: "KEY_QUESTION",
215: "KEY_EMAIL",
216: "KEY_CHAT",
217: "KEY_SEARCH",
218: "KEY_CONNECT",
219: "KEY_FINANCE",
220: "KEY_SPORT",
221: "KEY_SHOP",
222: "KEY_ALTERASE",
223: "KEY_CANCEL",
224: "KEY_BRIGHTNESSDOWN",
225: "KEY_BRIGHTNESSUP",
226: "KEY_MEDIA",
240: "KEY_UNKNOWN",
0x160: "KEY_OK",
0x161: "KEY_SELECT",
0x162: "KEY_GOTO",
0x163: "KEY_CLEAR",
0x164: "KEY_POWER2",
0x165: "KEY_OPTION",
0x166: "KEY_INFO",
0x167: "KEY_TIME",
0x168: "KEY_VENDOR",
0x169: "KEY_ARCHIVE",
0x16a: "KEY_PROGRAM",
0x16b: "KEY_CHANNEL",
0x16c: "KEY_FAVORITES",
0x16d: "KEY_EPG",
0x16e: "KEY_PVR",
0x16f: "KEY_MHP",
0x170: "KEY_LANGUAGE",
0x171: "KEY_TITLE",
0x172: "KEY_SUBTITLE",
0x173: "KEY_ANGLE",
0x174: "KEY_ZOOM",
0x175: "KEY_MODE",
0x176: "KEY_KEYBOARD",
0x177: "KEY_SCREEN",
0x178: "KEY_PC",
0x179: "KEY_TV",
0x17a: "KEY_TV2",
0x17b: "KEY_VCR",
0x17c: "KEY_VCR2",
0x17d: "KEY_SAT",
0x17e: "KEY_SAT2",
0x17f: "KEY_CD",
0x180: "KEY_TAPE",
0x181: "KEY_RADIO",
0x182: "KEY_TUNER",
0x183: "KEY_PLAYER",
0x184: "KEY_TEXT",
0x185: "KEY_DVD",
0x186: "KEY_AUX",
0x187: "KEY_MP3",
0x188: "KEY_AUDIO",
0x189: "KEY_VIDEO",
0x18a: "KEY_DIRECTORY",
0x18b: "KEY_LIST",
0x18c: "KEY_MEMO",
0x18d: "KEY_CALENDAR",
0x18e: "KEY_RED",
0x18f: "KEY_GREEN",
0x190: "KEY_YELLOW",
0x191: "KEY_BLUE",
0x192: "KEY_CHANNELUP",
0x193: "KEY_CHANNELDOWN",
0x194: "KEY_FIRST",
0x195: "KEY_LAST",
0x196: "KEY_AB",
0x197: "KEY_NEXT",
0x198: "KEY_RESTART",
0x199: "KEY_SLOW",
0x19a: "KEY_SHUFFLE",
0x19b: "KEY_BREAK",
0x19c: "KEY_PREVIOUS",
0x19d: "KEY_DIGITS",
0x19e: "KEY_TEEN",
0x19f: "KEY_TWEN",
0x1c0: "KEY_DEL_EOL",
0x1c1: "KEY_DEL_EOS",
0x1c2: "KEY_INS_LINE",
0x1c3: "KEY_DEL_LINE",
0x1ff: "KEY_MAX"
}
from struct import unpack
eventfile = open(REMOTE_DEVICE)
while 1:
event = unpack("xxxxxxxxHHI", eventfile.read(16))
print types[event[0]] + " " + codes[event[1]] + " " + str(int(event[2]))
### END OF SCRIPT
--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index