add camera timeout

This commit is contained in:
Cole Deck 2024-05-14 18:32:09 -05:00
parent c1f783bb2c
commit 7885c0900d

12
run.py
View File

@ -73,6 +73,7 @@ arm_position = (0,0,0,0,0,0)
arm_position_process = None arm_position_process = None
start_animation = False start_animation = False
failcount = 0 failcount = 0
timecount = 0
def arm_start_callback(res): def arm_start_callback(res):
fprint("Arm action complete.") fprint("Arm action complete.")
@ -538,6 +539,7 @@ def mainloop_server(pool, manager):
global arm_position_process global arm_position_process
global start_animation global start_animation
global failcount global failcount
global timecount
if mode != oldmode: if mode != oldmode:
print(" ***** Running mode:", mode, "***** ") print(" ***** Running mode:", mode, "***** ")
@ -834,6 +836,7 @@ def mainloop_server(pool, manager):
start_animation = True start_animation = True
ring_animation = 49 ring_animation = 49
led_set_mode = "Camera" led_set_mode = "Camera"
timecount = 0
pool.apply_async(camera.read_qr, (10,), callback=camera_start_callback, error_callback=handle_error) pool.apply_async(camera.read_qr, (10,), callback=camera_start_callback, error_callback=handle_error)
else: else:
camera_ready = True camera_ready = True
@ -852,13 +855,14 @@ def mainloop_server(pool, manager):
mode = "Idle" mode = "Idle"
fprint("Giving up scanning cable.") fprint("Giving up scanning cable.")
failcount = 0 failcount = 0
timecount = 0
arm_ready = True arm_ready = True
else: else:
fprint("Unable to scan cable. Gonna retry.") fprint("Unable to scan cable. Gonna retry.")
camera_ready = False camera_ready = False
#mode = "Idle" #mode = "Idle"
failcount += 1 failcount += 1
timecount = 0
pool.apply_async(camera.read_qr, (10,), callback=camera_start_callback, error_callback=handle_error) pool.apply_async(camera.read_qr, (10,), callback=camera_start_callback, error_callback=handle_error)
elif scan_value.find("bldn.app/") > -1: elif scan_value.find("bldn.app/") > -1:
@ -897,7 +901,11 @@ def mainloop_server(pool, manager):
break break
if mode == "Scan": if mode == "Scan":
mode = "Idle" mode = "Idle"
else: # camera not ready
timecount += 1
if timecount > 180:
timecount = 0
camera_ready = True
if mode == "Return": if mode == "Return":