Pour le reste je ne sais pas mais concernant ceci :
Sur Arduino ça c'est réglé assez facilement... j'avoue que je ne saurais plus dire comment... il me reste tout de même l'étonnement de plus plus pouvoir faire fonctionner un vieux code blink de test qui contenait "byte LED_BUILTIN = 13;" et ça marchait, j'en suis certain !
Or plus moyen de compiler, maintenant seul #define LED_BUILTIN 13 passe la compilation (
). Pas grave.
Avec quelle erreur ?
Revenons au problème.
À un moment, le symbole LED_BUILTIN a été ajouté (je ne sais plus quand) car les cartes n'avaient pas toutes la LED sur la broche 13 (les ESP32 notamment). Évidemment sur certains board packages, ça a été via un #define et sur d'autres via un const byte.
Si l'ajout a été via un const byte alors mettre une const byte qui définit le même symbole est une erreur. Si l'ajout a été fait par un #define alors définir soi même LED_BUILTIN via un const byte (le préprocesseur remplacera le LED_BUILTIN par sa valeur et on aura qq chose comme const byte 13 = 13; ce qui n'est évidemment pas permis) ou un #define est une erreur.
Dans ton cas, c'est clairement un const byte qui sert à définir LED_BUILTIN dans le board package.
Conclusion, les vieux sketchs doivent être entretenus.