fix wokwi wifi

This commit is contained in:
2026-09-02 20:31:37 +02:00
parent 240e2b081d
commit 4d9cd05f72
+12 -16
View File
@@ -31,31 +31,27 @@ pub async fn setup_wifi(
#[cfg(feature = "wokwi")]
pub async fn setup_wifi(
wifi: esp_hal::peripherals::WIFI<'static>,
flash: esp_hal::peripherals::FLASH<'static>,
nvs: Arc<Mutex<Nvs>>,
spawner: &Spawner,
) {
log::info!("Wokwi mode active: pre-seeding WiFi Manager with Wokwi credentials");
// Preload connection data so init_wm can connect immediately without AP setup.
let nvs = match esp_hal_wifimanager::Nvs::new(0x9000, 0x6000, flash) {
Ok(nvs) => nvs,
Err(e) => {
log::error!("Failed to initialize NVS for Wokwi: {e:?}");
return;
}
};
use esp_nvs::Key;
const WIFIMANAGER_NAMESPACE: Key = Key::from_str("wifimanager");
const WIFIMANAGER_NVS_KEY: Key = Key::from_str("WIFI_SETUP");
if let Err(e) = nvs
.set(
esp_hal_wifimanager::WIFI_NVS_KEY,
"{\"ssid\":\"Wokwi-GUEST\",\"psk\":\"\",\"data\":{}}",
)
.await
{
if let Err(e) = nvs.lock().await.set(
&WIFIMANAGER_NAMESPACE,
&WIFIMANAGER_NVS_KEY,
"{\"ssid\":\"Wokwi-GUEST\",\"psk\":\"\",\"data\":{}}",
) {
log::error!("Failed to store Wokwi WiFi config in NVS: {e:?}");
return;
}
// Preload connection data so init_wm can connect immediately without AP setup.
let nvs = esp_hal_wifimanager::Nvs::new_from_nvs(nvs, 0, 0);
let mut wm_settings = esp_hal_wifimanager::WmSettings::default();
// Wokwi simulation uses a default open network called "Wokwi-GUEST"