@@ -48,7 +48,7 @@ class MqttError(Exception):
4848def rpc_call (function , * args , ** kwargs ):
4949 response = rpc .call (function , * args , ** kwargs )
5050 if response ["error" ]:
51- if response ["error_type" ]:
51+ if response ["error_type" ] == "mqtt" :
5252 raise MqttError (response ["message" ])
5353 raise RpcError (response ["message" ])
5454 return response ["return_val" ]
@@ -62,7 +62,16 @@ def update_key(key_number):
6262 if switch_state is not None :
6363 macropad .pixels [key_number ] = NEOPIXEL_COLORS [switch_state ]
6464 else :
65- macropad .pixels [key_number ] = None
65+ macropad .pixels [key_number ] = 0
66+
67+ server_is_running = False
68+ print ("Waiting for server..." )
69+ while not server_is_running :
70+ try :
71+ server_is_running = rpc_call ("is_running" )
72+ print ("Connected" )
73+ except RpcError :
74+ pass
6675
6776mqtt_init ()
6877last_macropad_encoder_value = macropad .encoder
@@ -92,6 +101,8 @@ def update_key(key_number):
92101 if "key_number" in output :
93102 time .sleep (UPDATE_DELAY )
94103 update_key (output ["key_number" ])
104+ elif ENCODER_ITEM is not None :
105+ update_key (ENCODER_ITEM )
95106 except MqttError :
96107 mqtt_init ()
97108 except RpcError as err_msg :
0 commit comments