forked from LiquidGalaxyLAB/Arduino-Controller
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSerialServer.py
More file actions
86 lines (73 loc) · 2.1 KB
/
SerialServer.py
File metadata and controls
86 lines (73 loc) · 2.1 KB
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#!/usr/bin/python
import serial
import keyboard
import serial.tools.list_ports
from pynput.keyboard import Key, Controller as KeyboardController
keyb = KeyboardController()
esp_ports = [
p.device
for p in serial.tools.list_ports.comports()
if 'CP2102' in p.description
]
if not esp_ports:
raise IOError("No ESP found")
if len(esp_ports) == 1:
comport = serial.Serial('/dev/ttyUSB0', 9600)
#comport = serial.Serial('COM3', 9600)
def Position_Controller(dataRec):
data = dataRec
if "linear" in data:
keyb.press('r')
elif "zOut" in data:
keyb.press(Key.page_down)
elif "zIn" in data:
keyb.press(Key.page_up)
elif "right" in data:
keyb.press(Key.right) # RIGHT
elif "left" in data:
keyb.press(Key.left) # LEFT
elif "up" in data:
keyb.press(Key.up) # UP
elif "down" in data:
keyb.press(Key.down) # DOWN
elif "CamUp" in data:
keyb.press(Key.ctrl)
keyb.press(Key.up)
elif "CamDown" in data:
keyb.press(Key.ctrl)
keyb.press(Key.down)
elif "CamRight" in data:
keyb.press(Key.ctrl)
keyb.press(Key.right)
elif "CamLeft" in data:
keyb.press(Key.ctrl)
keyb.press(Key.left)
elif "rollRight" in data:
keyb.press(Key.shift)
keyb.press(Key.right)
elif "rollLeft" in data:
keyb.press(Key.shift)
keyb.press(Key.left)
elif "tiltUp" in data:
keyb.press(Key.shift)
keyb.press(Key.up) # UP Tilt
elif "tiltDown" in data:
keyb.press(Key.shift)
keyb.press(Key.down) # DOWN Tilt
elif "zero" in data:
keyb.release(Key.shift)
keyb.release(Key.ctrl)
keyb.release(Key.down)
keyb.release(Key.right)
keyb.release(Key.left)
keyb.release(Key.up)
keyb.release(Key.page_up)
keyb.release(Key.page_down)
else:
f = open("/tmp/query.txt", "w")
f.write(data)
f.close()
if __name__ == "__main__":
while True:
valor = comport.readline().decode() #'UTF-8')
Position_Controller(valor)