Dans le cadre du développement de passerelles résidentielles tripple play:
− Portage d’un firmware s’exécutant sur une carte comportant 128Mo de RAM vers une carte n’en ayant que 64.
− Optimisation du kernel, des modules et des drivers
− Optimisation de Busybox
− Optimisation des fonctionnalités du middleware
− Correction d’un driver NAND
Dans le cadre du développement de Set Top Box :
− Intégration d’un driver wifi 2.4 GHz Broadcom en mode client
− Test en cage et optimisation des performances
− Certification Wifi passée avec succès
Dans le cadre du développement de modems résidentiels :
− Intégrateur logiciel pour un opérateur Canadien
− Développement de fonctionnalités middleware en C/C++
Dans le cadre de la validation de cartes électroniques pour des modem résidentiels :
− Développement du logiciel de test sous Linux pour chip broadcom (bsp, bas niveau)
− Support technique pour les sous-traitants
Dans le cadre de la stabilisation et de l'évolution du PC de maintenance d'un system de divertissement en vol (IFE - In Flight Entertainment) :
− Prise en main de l'environnement de développement et du build system sous Linux (Debian).
− Correction de bugs et stabilisation des logiciels développés en Python
Dans le cadre d'une nouvelle plateforme à base d'Imx51 :
− Développement d'un driver SPI faisant le pont entre le DECT et le chip audio.
− Intégration d'un driver DECT pour la téléphonie
− Adaptation et amélioration d'un driver Audio (ALSA) faisant le multiplexage en fonction des cas d’utilisation entre les hauts parleurs, les écouteurs, le DECT, et le micro.
Dans le cadre du support logiciel de drivers DECT et Audio sur imx31 :
− Détection et Correction de bugs, notamment des glitchs sur le DECT lors du transfert de data
voix sur l'USB.
− Optimisation de code
Dans le cadre de la mise en oeuvre d'un nouveau standard de gestion des systèmes de télémesure (le standard TmNS) :
− Etude du protocole SNMP v2c et v3 (avec cryptage)
− Etude du standard TmNS, définissant la manière d'établir, de configurer et d'exploiter un système de télémesure.
− Etude de l'UMA-x, un équipement de télémesure propriétaire
− Spécification, conception de la fonction SNMP du standard, dont une partie est sur cible (Linux sur μBlaze) et une autre sur PC sous Windows.
− Développement en C d'un proxy SNMP sur PC, permettant notamment, à distance : la configuration de ses adresses IP en statique ou en dynamique (DHCP), le téléchargement par FTP et la compilation d'un fichier MDL, la mise à disposition par FTP d'un fichier résultat, l'envoi de notifications SNMP, la mise à disposition d'informations (adresses MAC, identification du système, ...), le routage vers la l'UMA-x des requêtes SNMP la concernant.
− Conception et réalisation d'un compilateur MDL (Meta Data Language) sous Visual Studio, permettant la configuration d'une carte Ethernet de production de paquets TmNS ou IENA : synchronisation de la date (PTP, IRIG106, free wheel), activation de services (Telnet, FTP), adresses IP...
Dans le cadre du support logiciel d'une carte à base de SoPC PPC440 sur un FPGA Xilinx Virtex V :
− Détection et Correction de bugs
− Optimisation de code
Dans le cadre de l'optimisation d'un équipement aéronautique d'une application temps-réel mutlithreadées et
de ses drivers associés :
− Établissement du diagnostic,
− Instrumentation du code par l'intermédiaire du FPGA afin de suivre l'évolution de l'application sur un analyseur logique,
− Optimisation de l'application et du kernel Linux à cet effet,
− Développement d'une fonction de téléchargement d'une image FPGA dans une flash SPI pour une carte AFDX (VHDL + Perl + SVF/XSVF),
− Test et recette dans son environnement.
Dans le cadre de la mise en oeuvre du protocole de datation 1588 (PTP) :
− Étude du protocole et de l'application PTPd depuis sourceforge,
− Optimisation du mécanisme d'asservissement PID pour une convergence plus rapide de la date.
Dans le cadre de la correction d'un driver Ethernet Gigabit :
− Constitution de la plateforme de test,
− Analyse du problème et détection de sa source
− Correction du driver, qui générait inutilement une latence dans la production de données.
Dans le cadre de la correction d'un driver Ethernet 10-100 M/bits de type Motorola :
− Constitution de la plateforme de test,
− Intégration et modification du driver pour inclure le support du multicast,
− Test et recette dans son environnement.
Dans le cadre d'une formation par la recherche (Thèse CIFRE – non soutenue),
− Étude de processeurs de communications (Ethernet) dans un environnement Linux embarqué. Ce sont des processeurs offrant généralement des fonctions d'accélération hardware (sécurité, TCP offload...)
− Développement d'une méthodologie et des outils associés permettant l'étude et l'estimation de performances de processeurs PowerQUICC et 440xx
− Spécifications et Conception d'une approche innovante basée sur la méthode des plans d'expériences.
− Déploiement de BSPs Linux sur les plates-formes étudiées :
- Chaîne de compilation croisée (ELDK),
- Bootloader Uboot (+JTAG),
- Adaptation de drivers,
- Compilation et utilisation d'un noyau Linux (kernel 2.6) et de son système de fichiers initial.
− Développement d'applications :
- Développement en C d'un driver Linux,
- Développement en C et en Assembleur d'une modélisation paramétrique d'applications,
- Développement de scripts en "R", bash, awk et sed
− Encadrement et suivi de 3 stagiaires.