data = bd(msg) if data[0] == 'R': ws_r = int(data[1:]) elif data[0] == 'G': ws_g = int(data[1:]) elif data[0] == 'B': ws_b = int(data[1:]) np[0] = (ws_r, ws_g, ws_b) np.write() print("wifi_config >") wifi_config = read_wifi_config() wifi = WiFiConnect(wifi_config["wifi_retries"] if "wifi_retries" in wifi_config else 250) wifi.events_add_connecting(connecting_callback) wifi.events_add_connected(connected_callback) wifi_status = wifi.connect(wifi_config["wifi_ssid"], wifi_config["wifi_pass"]) print("mqtt_config >") mqtt_clientid = mqtt_clientid_prefix + esp_id c = MQTTClient(mqtt_clientid, mqtt_host) c.set_callback(mqtt_sub) c.connect() c.subscribe("/octopus/device/{0}/#".format(esp_id)) print("mqtt log") c.publish("/octopus/device/", esp_id) # topic, message (value) to publish
def setup(): printOctopus() print("Hello, this will help you initialize your ESP") print("ver: " + ver + " (c)octopusLAB") print("Press Ctrl+C to abort") # TODO improve this # prepare directory if 'config' not in uos.listdir(): uos.mkdir('config') run = True while run: sele = setupMenu() if sele == "q": print("all OK, press CTRL+D to soft reboot") run = False if sele == "w": from util.wifi_connect import WiFiConnect w = WiFiConnect() sel_w = wifiMenu() if sel_w == "a": wifi_ssid = input("SSID: ") wifi_pass = input("PASSWORD: "******"r": wifi_ssid = input("SSID: ") w.remove_network(wifi_ssid) if sel_w == "s": print("Saved wifi networks") for k, v in w.config['networks'].items(): print("SSID: {0}".format(k)) if sele == "cw": print("Connect WiFi >") from util.wifi_connect import WiFiConnect w = WiFiConnect() if w.connect(): print("WiFi: OK") else: print("WiFi: Connect error, check configuration") if sele == "cl": print("Connect LAN >") import network lan = network.LAN(mdc=machine.Pin(23), mdio=machine.Pin(18), phy_type=network.PHY_LAN8720, phy_addr=1, clock_mode=network.ETH_CLOCK_GPIO17_OUT) lan.active(1) retry = 0 while not lan.isconnected() or lan.ifconfig()[0] is '0.0.0.0': retry += 1 time.sleep_ms(500) if retry > 20: break if lan.isconnected(): print("LAN: OK") else: print("LAN: Connect error, check cable or DHCP server") if sele == "sd": shutil() deplUrl = "https://octopusengine.org/download/micropython/stable.tar" deploy(deplUrl)
def w_connect(): global wifi time.sleep_ms(1000) wifi_config = read_wifi_config() if Debug: print("config for: " + wifi_config["wifi_ssid"]) wifi = WiFiConnect(wifi_config["wifi_retries"] if "wifi_retries" in wifi_config else wifi_retries) wifi.events_add_connecting(connecting_callback) wifi.events_add_connected(connected_callback) wifi.events_add_timeout(connecting_timeout_callback) wifi.events_add_disconnected(disconnected_callback) wifi_status = wifi.connect(wifi_config["wifi_ssid"], wifi_config["wifi_pass"]) if Debug: print("WiFi: OK" if wifi_status else "WiFi: Error")