diff --git a/scripts/examples/09-WiFi/ap_mode.py b/scripts/examples/09-WiFi/ap_mode.py index bc74cc6a6..171277124 100644 --- a/scripts/examples/09-WiFi/ap_mode.py +++ b/scripts/examples/09-WiFi/ap_mode.py @@ -15,8 +15,9 @@ PORT = 8080 # Arbitrary non-privileged port # Init wlan module and connect to network wlan = network.WLAN(network.AP_IF) +wlan.config(ssid=SSID, key=KEY, channel=2) wlan.active(True) -wlan.config(essid=SSID, key=KEY, security=wlan.WEP, channel=2) + print("AP mode started. SSID: {} IP: {}".format(SSID, wlan.ifconfig()[0])) diff --git a/scripts/examples/09-WiFi/mjpeg_streamer_ap.py b/scripts/examples/09-WiFi/mjpeg_streamer_ap.py index b8359fcdf..d3c065cac 100644 --- a/scripts/examples/09-WiFi/mjpeg_streamer_ap.py +++ b/scripts/examples/09-WiFi/mjpeg_streamer_ap.py @@ -25,9 +25,9 @@ sensor.set_pixformat(sensor.GRAYSCALE) # Init wlan module in AP mode. wlan = network.WLAN(network.AP_IF) +wlan.config(ssid=SSID, key=KEY, channel=2) wlan.active(True) -# Note some WiFi modules only support WEP in AP mode. -wlan.config(ssid=SSID, key=KEY, channel=2) # security=wlan.WEP + print("AP mode started. SSID: {} IP: {}".format(SSID, wlan.ifconfig()[0])) # You can block waiting for client to connect diff --git a/src/micropython b/src/micropython index 99baee47d..07e3a4c5a 160000 --- a/src/micropython +++ b/src/micropython @@ -1 +1 @@ -Subproject commit 99baee47ded6c52b2ff1881cb278def56fe8dd0d +Subproject commit 07e3a4c5ad8c29d72619439673e5de7c95c84ad1 diff --git a/src/omv/ports/mimxrt/main.c b/src/omv/ports/mimxrt/main.c index 2b6ddc0d1..68c7c005a 100644 --- a/src/omv/ports/mimxrt/main.c +++ b/src/omv/ports/mimxrt/main.c @@ -135,6 +135,7 @@ soft_reset: memcpy(&buf[0], "PYBD", 4); mp_hal_get_mac_ascii(MP_HAL_MAC_WLAN0, 8, 4, (char *) &buf[4]); cyw43_wifi_ap_set_ssid(&cyw43_state, 8, buf); + cyw43_wifi_ap_set_auth(&cyw43_state, CYW43_AUTH_WPA2_AES_PSK); cyw43_wifi_ap_set_password(&cyw43_state, 8, (const uint8_t *) "pybd0123"); } #endif diff --git a/src/omv/ports/stm32/main.c b/src/omv/ports/stm32/main.c index fe785d9cf..94feb3e2e 100644 --- a/src/omv/ports/stm32/main.c +++ b/src/omv/ports/stm32/main.c @@ -348,6 +348,7 @@ soft_reset: memcpy(&buf[0], "PYBD", 4); mp_hal_get_mac_ascii(MP_HAL_MAC_WLAN0, 8, 4, (char *) &buf[4]); cyw43_wifi_ap_set_ssid(&cyw43_state, 8, buf); + cyw43_wifi_ap_set_auth(&cyw43_state, CYW43_AUTH_WPA2_AES_PSK); cyw43_wifi_ap_set_password(&cyw43_state, 8, (const uint8_t *) "pybd0123"); } #endif diff --git a/src/omv/ports/stm32/modules/py_winc.c b/src/omv/ports/stm32/modules/py_winc.c index 2c8695d9e..168ea798b 100644 --- a/src/omv/ports/stm32/modules/py_winc.c +++ b/src/omv/ports/stm32/modules/py_winc.c @@ -160,6 +160,12 @@ static mp_obj_t py_winc_connect(mp_uint_t n_args, const mp_obj_t *pos_args, mp_m mp_raise_msg(&mp_type_OSError, MP_ERROR_TEXT("Key can't be empty!")); } + // Activate the interface if it's inactive. + if (!self->active) { + mp_obj_t args[2] = { pos_args[0], MP_OBJ_NEW_SMALL_INT(1) }; + py_winc_active(2, args); + } + if (self->itf == WINC_MODE_STA) { // Initialize WiFi in STA mode. if (winc_connect(ssid, security, key, M2M_WIFI_CH_ALL) != 0) {