You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The `safeboot.py` script can be downloaded from teh release page: [https://github.com/mathieucarbou/MycilaSafeBoot/releases](https://github.com/mathieucarbou/MycilaSafeBoot/releases).
323
+
324
+
-`upload_protocol = espota` tells PlatformIO to use Arduono OTA to upload the firmware
325
+
-`upload_port` is the IP address of the ESP32
326
+
-`custom_safeboot_restart_path` is the path to call to restart the app in SafeBoot mode
327
+
328
+
Once done, just run a `pio run -t upload` or `pio run -t uploadfs` for example and you will see the app automatically restarting in SafeBoot mode, then upload will be achieved, then the ESP will be restarted with your new app.
4. Now, you can flash the new firmware, either with `ArduinoOTA` or from the web page by going to `http://192.168.4.1`
381
-
382
-
5. After the flash is successful, the ESP will reboot in the new firmware.
383
-
384
-
SafeBoot partition also supports [MycilaESPConnect](https://github.com/mathieucarbou/MycilaESPConnect), which means if your application saves some network settings (WiFi SSID, Ethernet or WiFi static IP, etc), they will be reused.
385
-
386
-
## How to integrate the SafeBoot in your project
387
-
388
-
In the PIO file, some settings are added to specify the partition table and the SafeBoot location and the script to generate the factory image.
It is also possible to point to a folder if you download the SafeBoot project locally:
398
-
399
-
```ini
400
-
custom_safeboot_dir = ../../tools/SafeBoot
401
-
```
402
-
403
-
It is also possible to point to a pre-downloaded safeoot image:
404
-
405
-
```ini
406
-
custom_safeboot_file = safeboot.bin
407
-
```
408
-
409
-
You can find in the [Project Releases](https://github.com/mathieucarbou/MycilaSafeBoot/releases) the list of available SafeBoot images, with the Python script to add to your build.
410
-
411
-
## How to build the SafeBoot firmware image
412
-
413
-
Go inside `tools/SafeBoot` and run:
414
-
415
-
```bash
416
-
> pio run -e esp32dev
417
-
```
418
-
419
-
If your board does not exist, you can specify it like this:
420
-
421
-
```bash
422
-
> SAFEBOOT_BOARD=my-board pio run -e safeboot
423
-
```
424
-
425
-
`SAFEBOOT_BOARD` is the environment variable to specify the board to build the SafeBoot firmware for.
Wrote 0x1451a0 bytes to file /Users/mat/Data/Workspace/me/MycilaSafeBoot/examples/App/.pio/build/esp32dev/firmware.factory.bin, ready to flash to offset 0x0
The `safeboot.py` script can be downloaded from teh release page: [https://github.com/mathieucarbou/MycilaSafeBoot/releases](https://github.com/mathieucarbou/MycilaSafeBoot/releases).
323
+
324
+
-`upload_protocol = espota` tells PlatformIO to use Arduono OTA to upload the firmware
325
+
-`upload_port` is the IP address of the ESP32
326
+
-`custom_safeboot_restart_path` is the path to call to restart the app in SafeBoot mode
587
327
588
-
| Board | mDNS | Logging |
589
-
| :------------------- | :--: | :-----: |
590
-
| denky_d4 | ✅ | ❌ |
591
-
| esp32-c3-devkitc-02 | ✅ | ✅ |
592
-
| esp32-c6-devkitc-1 | ❌ | ❌ |
593
-
| esp32-gateway | ✅ | ❌ |
594
-
| esp32-poe | ❌ | ❌ |
595
-
| esp32-poe-iso | ❌ | ❌ |
596
-
| esp32-s2-saola-1 | ✅ | ✅ |
597
-
| esp32-s3-devkitc-1 | ✅ | ✅ |
598
-
| esp32-solo1 | ✅ | ✅ |
599
-
| esp32dev | ✅ | ✅ |
600
-
| esp32s3box | ✅ | ✅ |
601
-
| lilygo-t-eth-lite-s3 | ✅ | ✅ |
602
-
| lolin_s2_mini | ✅ | ✅ |
603
-
| tinypico | ✅ | ❌ |
604
-
| wemos_d1_uno32 | ✅ | ✅ |
605
-
| wipy3 | ✅ | ❌ |
606
-
| wt32-eth01 | ❌ | ❌ |
328
+
Once done, just run a `pio run -t upload` or `pio run -t uploadfs` for example and you will see the app automatically restarting in SafeBoot mode, then upload will be achieved, then the ESP will be restarted with your new app.
0 commit comments