Compétence technique

Développement de systèmes embarqués et objets connectés (IoT)

Une compétence analysée à partir de réalisations concrètes, avec recul critique et progression.

Ma définition

Concevoir et programmer des objets connectés à base de microcontrôleurs, en écrivant un firmware capable de piloter du matériel (entrées/sorties, capteurs, actionneurs) tout en communiquant sur un réseau. Cela suppose de maîtriser un langage bas niveau comme le C++ et de composer avec les ressources limitées d’une carte embarquée.

Mes éléments de preuve

Sur Abeille, j’ai programmé une carte wt32-eth01 en C++ sous PlatformIO, avec gestion des entrées/sorties, serveur web embarqué et communications réseau. Sur Modlink, j’ai utilisé ESP-IDF avec Arduino, conçu une architecture adaptée à l’embarqué, stocké localement les scénarios en JSON et expérimenté ESP-NOW. Ces réalisations comprennent également des tests unitaires du planificateur, un déploiement automatisé du firmware et un mécanisme de mise à jour à distance.

Mon autocritique

Sur le projet Abeille, j’ai sous-estimé les contraintes matérielles : la carte retenue manquait de mémoire, ce qui a limité le développement du site web embarqué. J’ai aussi découvert la difficulté d’implémenter des protocoles réseau lourds sur une cible aux ressources restreintes, ce qui m’a demandé un vrai travail d’optimisation.

Mon évolution dans cette compétence

Je suis passé d’une carte et d’un environnement imposés (Abeille) à des choix techniques réfléchis et argumentés (Modlink) : sélection du matériel selon la mémoire disponible, optimisation des échanges (JSON compact, compression gzip) et arbitrage entre traitement local et accès distant. Cette compétence est aujourd’hui devenue l’un de mes centres d’intérêt, que je prolonge en dehors du travail sur Arduino et Raspberry Pi.

← Retour à toutes les compétences