forked from zietzm/Helmholtz_Test_Bench
Added user interface elements for magnetometer calibration
This commit is contained in:
+26
-23
@@ -74,29 +74,32 @@ class ClientConnectionThread(Thread):
|
||||
def run(self):
|
||||
msg = ''
|
||||
while True:
|
||||
raw_msg = self.client_socket.recv(2048).decode()
|
||||
# Check for end of stream
|
||||
if raw_msg == "":
|
||||
self.client_socket.close()
|
||||
if self._cage_dev:
|
||||
self._cage_dev.close()
|
||||
g.MAGNETOMETER.connected = False
|
||||
return
|
||||
# Process message
|
||||
for char in raw_msg:
|
||||
if char == '\n':
|
||||
msg = msg.rstrip() # Some systems will try to send \r characters... looking at you windows O_O
|
||||
try:
|
||||
response = self.handle_msg(msg)
|
||||
except Exception as e:
|
||||
ui_print("An error occurred while processing a client message")
|
||||
ui_print("Msg: {}".format(msg))
|
||||
ui_print(e)
|
||||
response = "err"
|
||||
self.client_socket.sendall((response + '\n').encode('utf-8'))
|
||||
msg = ''
|
||||
else:
|
||||
msg += char
|
||||
try:
|
||||
raw_msg = self.client_socket.recv(2048).decode()
|
||||
# Check for end of stream
|
||||
if raw_msg == "":
|
||||
self.client_socket.close()
|
||||
if self._cage_dev:
|
||||
self._cage_dev.close()
|
||||
g.MAGNETOMETER.connected = False
|
||||
return
|
||||
# Process message
|
||||
for char in raw_msg:
|
||||
if char == '\n':
|
||||
msg = msg.rstrip() # Some systems will try to send \r characters... looking at you windows O_O
|
||||
try:
|
||||
response = self.handle_msg(msg)
|
||||
except Exception as e:
|
||||
ui_print("An error occurred while processing a client message")
|
||||
ui_print("Msg: {}".format(msg))
|
||||
ui_print(e)
|
||||
response = "err"
|
||||
self.client_socket.sendall((response + '\n').encode('utf-8'))
|
||||
msg = ''
|
||||
else:
|
||||
msg += char
|
||||
except ConnectionResetError:
|
||||
ui_print("A connection was closed by the client.")
|
||||
|
||||
def handle_msg(self, message):
|
||||
""" Executes command logic and returns string response (for client). """
|
||||
|
||||
Reference in New Issue
Block a user