diff options
Diffstat (limited to 'serial_conn.py')
-rw-r--r-- | serial_conn.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/serial_conn.py b/serial_conn.py index 0775ba0..a781d64 100644 --- a/serial_conn.py +++ b/serial_conn.py @@ -9,6 +9,9 @@ class Client(Module): the json command. """ + def __init__(self): + self.last_name = None + def during_bootup(self, keyboard): try: # Do not set any timeout, we check before reading a string if there @@ -23,13 +26,17 @@ class Client(Module): def before_hid_send(self, keyboard): # Serial.data isn't initialized yet. - if not data: - return - - if not data.connected: - keyboard.keymap[0].name = "Disconnected" + if not data or not data.connected: + current_name = keyboard.keymap[0].name + if current_name != "Disconnected": + self.last_name = current_name + keyboard.keymap[0].name = "Disconnected" time.sleep(1) return + if self.last_name is not None: + keyboard.keymap[0].name = self.last_name + self.last_name = None + # Nothing to parse. if data.in_waiting <= 0: |