Je n’ai pas de C3 mais il me aemblait que la condition while(!Serial); attend la connexion CDC USB, ce qui ne se produit que lorsque le microcontrôleur a été énuméré par l’ordinateur et que le port série virtuel est ouvert.
Si “USB CDC On Boot” n’est pas activé, le port n’apparaît pas, donc l’opérateur surchargé de Serial reste faux et la ligne bloque indéfiniment.
(Sur les ESP32 classiques utilisant le port série via un convertisseur USB-UART, Serial est toujours “true” dès que le MCU démarre. - comme sur le UNO ou MEGA)