Projet Yocto : outils et méthodes pour le développement de systèmes embarqués
À l’heure où résonne l’Internet des Objets, avec un boom du marché depuis quelques années, le développement des systèmes dit “embarqués” est en pleine croissance. Aujourd’hui, ces systèmes sont nombreux à s’appuyer sur Linux, qui propose des fonctionnalités avancées et des capacités accrues. Afin de répondre à une forte demande des industriels en terme de qualité et de fiabilité des logiciels, un nouvel outil a vu le jour il y a quelques années : Yocto.
Qu’est-ce qu’un système embarqué ?
Un système embarqué est généralement articulé autour d’un microcontrôleur ou d’un microprocesseur intégrant de nombreuses fonctionnalités. Il est doté d’interfaces réseau et/ou utilisateur, d’une mémoire de stockage limitée et fonctionne avec ou sans système d’exploitation (OS), grâce à un logiciel qui a été développé spécifiquement pour lui. Un système embarqué est souvent très contraint par des problématiques de temps-réel, de disponibilité, de dimension, de consommation ou encore d’autonomie lorsqu’il fonctionne sur batterie.
Nous pourrions citer de nombreux exemples de systèmes embarqués : capteurs connectés (thermostat d’ambiance, détecteur de fumée…), applications industrielles complexes (calculateurs embarqués dans des trains ou des avions), électroménager ou encore téléphones portables.
Le développement sur systèmes embarqués fait appel à des techniques spécifiques, telles que la compilation croisée ou le débogage distant. Ils ont été largement vulgarisés auprès du grand public par des plateformes, comme Arduino ou Raspberry Pi, qui permettent d’apprendre tout en s’amusant autour de nombreux projets ludiques et fonctionnels.
Qu’est-ce que Yocto et en quoi nous aide-t-il dans l’IoT ?
Le projet Yocto est une palette d’outils permettant de générer une distribution Linux à destination d’un système embarqué. Cette distribution peut être construite grâce à un langage simple et une méthodologie facile à prendre en main. Cela inclut le système d’exploitation, les drivers (réseaux, périphériques spéciaux…) et les applicatifs métier.
Grâce à une large adoption par l’industrie et les fondeurs (Texas Instrument, Intel, NXP…), Yocto est disponible pour de nombreuses cibles (ARM, x86, PowerPC…). Ce projet est soutenu par la Linux Foundation et sa communauté très active permet de bénéficier d’un système complet sans cesse actualisé.
Ses avantages
Une approche classique et laborieuse consisterait à compiler chaque composant logiciel manuellement. L’outil Yocto, lui, permet de réaliser la cross-compilation du système et la génération de son image (bootloader, kernel, systèmes de fichier). La gestion de dépendances et la répétitivité apportées par l’outil garantissent un résultat fonctionnel sur la cible.
L’accompagnement d’Agixis auprès de ses clients
Pour répondre à une demande croissante des industriels sur le marché de l’IoT, AGIXIS a construit un module de formation Yocto destiné à ses clients et aux développeurs C/C++ Linux. lI permet de monter en compétences sur cette nouvelle technologie.
Ce module propose une prise en main progressive de Yocto à travers différents exercices pratiques. Ils abordent les aspects de la programmation sur systèmes embarqués tels que la configuration du noyau, l’intégration de drivers ou la génération des SDKs.
Cette offre s’appuie sur un matériel pédagogique professionnel et qualifié pour l’industrie, composé d’un SOM i.MX6 (NXP) d’une carte de développement, et de différents composants (capteurs et afficheurs) utilisés lors des exercices pratiques.
Autres articles
Recap’ de notre dernier CODING GAME COMPETITION – Mai 2022
Le mardi 10 mai 2022

Jeudi dernier, Agixis vous a proposé un CODING GAME COMPETITION de haut niveau !
Ce jeudi 05 mai 2022, nous avons été témoins de très belles performances au Meltdown à Lyon lors de notre dernière Coding Game Competition. Ce sont 11 binômes qui se sont affrontés pendant 3 heures sur le jeu Search Race, travaillant sans cesse pour obtenir le score le plus petit possible.
Merci à tous ceux qui étaient présents pour votre participation et votre bonne humeur. Nous espérons que vous avez passé un aussi bon moment que nous ! Et merci également à John P., notre agicien Tech Lead qui a grandement participé à l’organisation de cet événement. Fun fact : nous l’avons rencontré pendant une compétition de Coding Game !
Et bravo, bien entendu, aux deux équipes gagnantes : Lilian Go Skype (14 046 points) et Lucifor (20 968) qui ont pu repartir avec un casque Razer et des e-cartes cadeaux FNAC.
Voici un récap’ photo de la soirée :
Webinaire gratuit – Les principes de programmation, productivité et amélioration continue – 17 mai 2022
Le lundi 25 avril 2022

Invitation à notre prochain webinaire
Nous vous invitons à un webinaire gratuit sur le thème » Les principes de programmation, productivité et amélioration continue » animé par Loic, notre agicien expert ! À destination des développeurs et des curieux :).
» Vous souhaitez développer vos compétences, produire un maximum de valeur pour le client et obtenir la satisfaction d’un travail bien fait ? Découvrez mon retour d’expérience sur les principes de programmation à appliquer au quotidien et leur complémentarité afin de maximiser son travail ».
Principes de programmation qui seront abordés : TDD, DDD, Egoless Programming et Architecture Hexagonal.
Rendez-vous en ligne le mardi 17 mai à 18h30 sur Teams. Pour vous inscrire et recevoir le lien de connexion, c’est par ICI.
Récap’ de notre dernière soirée portes ouvertes – Conférence Test Unitaire – 14/04/2022
Le vendredi 15 avril 2022

Soirée portes ouvertes et conférence : « Test Unitaire : apprivoisé par la théorie »
Le 14 avril dernier, Agixis a ouvert ses portes pendant quelques heures. Ce fut l’occasion d’échanger avec nos collaborateurs, discuter carrière, mais aussi technique ! En effet, nos deux agiciens experts Matthias et Baptiste ont animé une conférence sur le Test unitaire apprivoisé par la théorie. Voici un aperçu du contenu présenté : (suite…)