From a64b22c32963e28b5bcf5d337ec04ee7cabc17a9 Mon Sep 17 00:00:00 2001 From: IrvingGao <1729854488@qq.com> Date: Thu, 13 Jun 2024 13:39:38 +0800 Subject: [PATCH] [wifi] fix bug with disconnect --- wifi_manager.py | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/wifi_manager.py b/wifi_manager.py index 56c896f..607f4e6 100644 --- a/wifi_manager.py +++ b/wifi_manager.py @@ -20,16 +20,27 @@ except ImportError: # blue: APP # red: hotspot -def network_error_light(): +def network_error_light_1(): error_time = datetime.datetime.now() while led_enabled: orangepi.set_led_off('blue') orangepi.set_led_on('red') - time.sleep(0.5) + time.sleep(0.25) orangepi.set_led_on('blue') orangepi.set_led_off('red') - time.sleep(0.5) - if error_time + datetime.timedelta(seconds=5) < datetime.datetime.now(): + time.sleep(0.25) + if error_time + datetime.timedelta(seconds=2) < datetime.datetime.now(): + break + # close_app() + +def network_error_light_2(): + error_time = datetime.datetime.now() + while led_enabled: + orangepi.set_led_on('red') + time.sleep(0.25) + orangepi.set_led_off('red') + time.sleep(0.25) + if error_time + datetime.timedelta(seconds=2) < datetime.datetime.now(): break # close_app() @@ -148,10 +159,11 @@ def check_wifi_connection(): ``` sudo systemctl restart NetworkManager ''' - network_error_light() + network_error_light_1() subprocess.Popen('sudo systemctl restart NetworkManager', shell=True) # subprocess.run(['sudo', 'systemctl', 'restart', 'NetworkManager'], check=True) - time.sleep(2) + time.sleep(1) + return check_wifi_connection() return False, None def scan_wifi(): @@ -161,7 +173,7 @@ def scan_wifi(): result = subprocess.run(cmd, shell=True, capture_output=True, text=True) except subprocess.CalledProcessError as e: print(f"{datetime.datetime.now()}: Error scanning Wi-Fi: {e}") - network_error_light() + network_error_light_2() print(f"{datetime.datetime.now()}: Wi-Fi scan complete...") ssid_list = [] wifi_list = []