diff --git a/dowsingrod/main.py b/dowsingrod/main.py index be93e91..2305417 100644 --- a/dowsingrod/main.py +++ b/dowsingrod/main.py @@ -10,6 +10,7 @@ from tilda import Buttons from time import sleep status_height = 20 +ssid = 'emfcamp-legacy18' ugfx.init() ugfx.clear() @@ -19,17 +20,28 @@ ugfx.Label(5, 180, 240, 15, "Press A to scan, MENU to exit") # while (not Buttons.is_pressed(Buttons.BTN_A)) and (not Buttons.is_pressed(Buttons.BTN_B)) and (not Buttons.is_pressed(Buttons.BTN_Menu)): while not Buttons.is_pressed(Buttons.BTN_Menu): - if not Buttons.is_pressed(Buttons.BTN_A): - sleep(0.1) + if not Buttons.is_pressed(Buttons.BTN_A) and not Buttons.is_pressed(Buttons.BTN_B): + ugfx.poll() continue + if Buttons.is_pressed(Buttons.BTN_B): + ugfx.clear() + ugfx.Label(0, 0, 240, 25, "SSID:") + ssid_box = ugfx.Textbox(0, 25, 240, 25, text=ssid) + ugfx.Keyboard(0, ugfx.height()//2, ugfx.width(), ugfx.height()//2) + ssid_box.set_focus() + while not Buttons.is_pressed(Buttons.BTN_A): + ugfx.poll() + continue + ssid = ssid_box.text() + ugfx.clear() wifi.nic().active(False) wifi.nic().active(True) # networks = [{ "ssid": ap[0], "mac": ap[1], "channel": ap[2], "signal": ap[3] } for ap in wifi.nic().scan()] - networks = sorted([net for net in wifi.nic().scan() if net[0] == "emfcamp-legacy18"], key=lambda n: n[3], reverse=True) + networks = sorted([net for net in wifi.nic().scan() if net[0] == ssid], key=lambda n: n[3], reverse=True) aps = [] for ap in [(net[1], net[3]) for net in networks]: @@ -42,7 +54,7 @@ while not Buttons.is_pressed(Buttons.BTN_Menu): y += status_height if len(aps) == 0: - ugfx.Label(0, y, 240, 25, "No emfcamp-legacy18 APs found") + ugfx.Label(0, y, 240, 25, "No %s APs found" % ssid) ugfx.clear() app.restart_to_default()