2323
2424current_display_mode = DISPLAY_MODE_RAINBOW
2525
26+ disable_access_point = False
2627brightness = 2
2728# Color data for different modes
2829single_color = (0 , 0 , 255 )
@@ -374,6 +375,32 @@ async def set_wifi_settings_request(request, response):
374375 asyncio .create_task (connect_to_wifi ())
375376 await response .send_json (json .dumps (response_data ), 200 )
376377
378+ async def disable_access_point_request (request , response ):
379+ global disable_access_point
380+ disable_access_point = True
381+ config ['DISABLE_ACCESS_POINT' ] = True
382+ save_config (config )
383+ response_data = {
384+ 'status' : 'OK' ,
385+ 'success' : True ,
386+ 'message' : 'Access Point disabled' ,
387+ 'settings' : settings_object ()
388+ }
389+ await response .send_json (json .dumps (response_data ), 200 )
390+
391+ async def enable_access_point_request (request , response ):
392+ global disable_access_point
393+ disable_access_point = False
394+ config ['DISABLE_ACCESS_POINT' ] = False
395+ save_config (config )
396+ response_data = {
397+ 'status' : 'OK' ,
398+ 'success' : True ,
399+ 'message' : 'Access Point enabled' ,
400+ 'settings' : settings_object ()
401+ }
402+ await response .send_json (json .dumps (response_data ), 200 )
403+
377404async def set_time_request (request , response ):
378405 print (request .post_data )
379406 time_data = request .post_data ['time' ]
@@ -456,6 +483,7 @@ def settings_object():
456483 'ntp_synced_at' : ntp_synced_at ,
457484 'last_ntp_sync_attempt' : last_ntp_sync_attempt ,
458485 'dns_check_status' : last_dns_check_status ,
486+ 'disable_access_point' : disable_access_point ,
459487 'status' : 'OK'
460488 }
461489
@@ -469,6 +497,8 @@ def setup_routes(server):
469497 server .add_function_route ('/set-wifi-settings' , set_wifi_settings_request )
470498 server .add_function_route ('/set-time' , set_time_request )
471499 server .add_function_route ('/test-pattern' , test_pattern_request )
500+ server .add_function_route ('/disable-access-point' , disable_access_point_request )
501+ server .add_function_route ('/enable-access-point' , enable_access_point_request )
472502
473503async def connect_to_wifi ():
474504 await scroll_message (matrix_fonts .textFont1 , "Wifi" , 0.05 )
@@ -497,10 +527,10 @@ async def connect_to_wifi():
497527
498528
499529async def main ():
500- global ntp_synced_at , last_wifi_connected_time , last_wifi_disconnected_time
530+ global ntp_synced_at , last_wifi_connected_time , last_wifi_disconnected_time , disable_access_point
501531 ap_connnected = False
502532 await connect_to_wifi ()
503- if not server .is_wifi_connected ():
533+ if not server .is_wifi_connected () and not disable_access_point :
504534 ap_connnected = server .start_access_point ('gurgleapps' , 'gurgleapps' )
505535 await scroll_message (matrix_fonts .textFont1 , "No Wi-Fi" , 0.05 )
506536 print ("Access Point active: " + str (ap_connnected ))
@@ -512,7 +542,7 @@ async def main():
512542 if delta > 10 :
513543 server .stop_access_point () # Stop access point after 10 seconds of Wi-Fi connection
514544 print ("Access Point stopped" )
515- if not server .is_wifi_connected ():
545+ if not server .is_wifi_connected () and not disable_access_point :
516546 if not server .is_access_point_active ():
517547 delta = time .ticks_diff (time .ticks_ms (), last_wifi_disconnected_time )
518548 print ("Disconnected from Wi-Fi for " + str (delta // 1000 ) + " seconds" )
@@ -543,6 +573,7 @@ async def main():
543573past_to_color = config .get ('PAST_TO_COLOR' , (0 , 0 , 255 ))
544574current_display_mode = config .get ('DISPLAY_MODE' , DISPLAY_MODE_RAINBOW )
545575time_offset = config .get ('TIME_OFFSET' , 0 )
576+ disable_access_point = config .get ('DISABLE_ACCESS_POINT' , False )
546577
547578
548579if config ['ENABLE_HT16K33' ]:
0 commit comments