Commit dafd718
Add WLED_QEMU WiFi workaround to prevent crashes
QEMU doesn't emulate WiFi hardware. When WiFi functions like
WiFi.disconnect(), WiFi.mode(), WiFi.begin() try to access WiFi
registers (address range 0x60033xxx), firmware crashes with
LoadStorePIFAddrError.
Crash example:
- Arduino Event: 0 - WIFI_READY
- Guru Meditation Error: Core 0 panic'ed (LoadStorePIFAddrError)
- EXCVADDR: 0x60033c00
Solution:
- Extended WLED_QEMU flag to also skip WiFi initialization
- Wrapped all WiFi calls in initConnection() with #ifndef WLED_QEMU
- Disabled WiFi AP management code (esp_wifi_ap_get_sta_list, etc.)
- Protected WiFi.disconnect() call when switching to ethernet
- Network connectivity works via ethernet only (QEMU user-mode networking)
Documentation updates:
- docs/QEMU-ISSUES.md: Added WiFi hardware workaround section
- e2e-tests/README.md: Updated troubleshooting with WiFi info
This allows QEMU testing to proceed without WiFi-related crashes.
The WLED_QEMU flag should only be used for QEMU testing builds.
Co-authored-by: softhack007 <[email protected]>1 parent cee5708 commit dafd718
3 files changed
+38
-10
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
39 | 52 | | |
40 | 53 | | |
41 | 54 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
125 | | - | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
126 | 128 | | |
127 | 129 | | |
128 | | - | |
| 130 | + | |
129 | 131 | | |
130 | 132 | | |
131 | 133 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1118 | 1118 | | |
1119 | 1119 | | |
1120 | 1120 | | |
| 1121 | + | |
| 1122 | + | |
| 1123 | + | |
1121 | 1124 | | |
1122 | 1125 | | |
1123 | 1126 | | |
| |||
1173 | 1176 | | |
1174 | 1177 | | |
1175 | 1178 | | |
| 1179 | + | |
| 1180 | + | |
| 1181 | + | |
| 1182 | + | |
| 1183 | + | |
| 1184 | + | |
1176 | 1185 | | |
1177 | 1186 | | |
1178 | 1187 | | |
| |||
1350 | 1359 | | |
1351 | 1360 | | |
1352 | 1361 | | |
| 1362 | + | |
1353 | 1363 | | |
1354 | 1364 | | |
1355 | 1365 | | |
| |||
1371 | 1381 | | |
1372 | 1382 | | |
1373 | 1383 | | |
| 1384 | + | |
1374 | 1385 | | |
1375 | 1386 | | |
1376 | 1387 | | |
| |||
1406 | 1417 | | |
1407 | 1418 | | |
1408 | 1419 | | |
| 1420 | + | |
1409 | 1421 | | |
1410 | 1422 | | |
| 1423 | + | |
1411 | 1424 | | |
1412 | 1425 | | |
1413 | 1426 | | |
| |||
0 commit comments