Skip to content

Commit c803857

Browse files
author
James Boulton
committed
thread locks seem to work in sim767x.py
1 parent 94e9335 commit c803857

File tree

2 files changed

+8
-9
lines changed

2 files changed

+8
-9
lines changed

Examples/ex05_SIM767X.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
config_dict = dashio.decode_cfg64(cfg64)
2828
device = dashio.Device("aDeviceType", "aDeviceID", "Fred", cfg_dict=config_dict)
2929
# lte_con = lte_767x_connection.Lte767xConnection("iot.gdsp.nz", "username", "password", 'dash.dashio.io', 8883, "/dev/tty.usbserial-143110", 115200, None)
30-
lte_con = lte_767x_connection.Lte767xConnection("iot.gdsp.nz", "craig", "ThingyThing", 'dash.dashio.io', 8883, "/dev/cu.usbmodem0000000000013", 115200, None)
30+
lte_con = lte_767x_connection.Lte767xConnection("iot.gdsp.nz", "", "", 'dash.dashio.io', 8883, "/dev/cu.usbmodem0000000000013", 115200, None)
3131
lte_con.add_device(device)
3232

3333
tcp_con = dashio.TCPConnection()

dashio/sim767x.py

+7-8
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ def __init__(self, serial_port: str, network: str, apn: str, baud_rate: int):
169169
self.start_serial()
170170
self._serial_at.flush()
171171
self._sched = Schedular("LTE Connection Schedular")
172-
self._sched.add_timer(0.01, 0.0, self._run_processing)
172+
self._sched.add_timer(0.001, 0.0, self._run_processing)
173173
self._sched.add_timer(1.0, 0.25, self._run_one_second_module_tasks)
174174
self._sched.add_timer(1.0, 0.5, self._run_one_second_mqtt_tasks)
175175
self._sched.add_timer(1.0, 0.75, self._run_one_second_gnss_tasks)
@@ -328,10 +328,9 @@ def _run_processing(self, cookie: Any):
328328
if self._sub_topic:
329329
self._mqtt_req_subscribe()
330330
if self._messages_dict:
331-
with self._messages_dict_lock:
332-
d_topic = list(self._messages_dict.keys())[0]
333-
self._mqtt_request_publish(d_topic, self._messages_dict[d_topic])
334-
del self._messages_dict[d_topic]
331+
self._messages_dict_lock.acquire()
332+
d_topic = list(self._messages_dict.keys())[0]
333+
self._mqtt_request_publish(d_topic, self._messages_dict[d_topic])
335334
return True
336335

337336
def _process_at_commands(self):
@@ -486,9 +485,9 @@ def _process_at_commands(self):
486485
if len(result_arr) >= 2:
487486
error = int(result_arr[1])
488487
if error == 0:
489-
with self._messages_dict_lock:
490-
if self._pub_topic in self._messages_dict:
491-
del self._messages_dict[self._pub_topic]
488+
if self._pub_topic in self._messages_dict:
489+
del self._messages_dict[self._pub_topic]
490+
self._messages_dict_lock.release()
492491
if self.mqtt_is_finished():
493492
self._pub_topic = ""
494493
self._tx_message = ""

0 commit comments

Comments
 (0)