L'ESP32-S3 dispose d'un premier bootloader dans la ROM, qui permet d'initialiser a minima le hardware.

Dans de nombreux cas, un second bootloader est lancé depuis la flash pour avoir des fonctionnalités avancées (Gestion des firmware multiples, rollback, secure boot, multiple applications...)

Quelques éléments utiles pour comprendre le déroulement du processus de démarage:

[PWR ON]
    ↓
[Internal Reset + Clock Setup]
    ↓
[ROM Bootloader]
    ↓
- eFuses read
- Flash boot or UART/USB boot (Driven by some GPIO states)
    ↓
[SPI Flash Boot → Load 2nd-stage Bootloader from 0x0000]
    ↓
[2nd-stage Bootloader]
    ↓
- Configure clocks, flash, PSRAM
- Secure Boot/Flash Encryption check
- Read Partition Table
- Find App Partition
    ↓
[Load and Start Application]
    ↓
[Your app_main() running!]

nb:Il est possible d'utiliser d'installer son application a l'addresse 0x0000 en lieu et place du bootloader Stage 2, si l'on cherche a avoir une image plus légère.

Bootloader - ESP32-S3 - — ESP-IDF Programming Guide v5.4.1 documentation
0