-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLpDriver.py
executable file
·48 lines (43 loc) · 1.13 KB
/
LpDriver.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/usr/bin/env python
#pipe = open('/dev/input/js0','r')
import sys
def get_key(pipe):
key = False
action = []
spacing = 0
LEFT=11
RIGHT=12
UP=13
DOWN=14
KEY={"01000100": 1,
"01000101": 2,
"01000102": 3,
"01000103": 4,
"01000104": 5,
"01000105": 6,
"01000106": 7,
"01000107": 8,
"01000108": 9,
"01000109": 10,
"01800200": 11,
"FF7F0200": 12,
"01800201": 13,
"FF7F0201": 14
}
while not key:
for character in pipe.read(1):
action += [character]
if len(action) == 16:
a = []
for byte in action:
a.append('%02X' % ord(byte))
spacing += 1
if spacing == 16:
try:
key = KEY["".join(a[4:8])]
except:
key = "".join(a[4:8])
spacing = 0
sys.stdout.flush()
action = []
return key