Imagem met le développement d’IHM embarquées à la portée de tous et en apporte la preuve sur Raspberry Pi

Magneto Raspberry Pi

Force est de constater que les interfaces homme-machine (IHM) embarquées s’enrichissent rapidement, tant sur l’aspect visuel qu’au niveau de leurs fonctionnalités. Mais il apparaît toutefois une dichotomie grandissante entre, d’un côté, les designers graphiques qui conçoivent l’esthétique et la dynamique des IHM et, de l’autre, les développeurs logiciels chargés de les programmer et de les coder. ...Les éditeurs de solutions existantes cherchent donc par tous les moyens à réduire ce gap et à associer - autant que faire se peut - le flux de travaux (workflow) des premiers, plutôt considérés comme des « artistes », à celui des seconds, beaucoup plus techniques. C’est notamment la philosophie poursuivie par Qt avec Qt Design Studio qui vise à optimiser la collaboration entre les deux équipes lors de la création et le prototypage d’interfaces utilisateur.

« Tout l’enjeu pour ces sociétés spécialistes des IHM est de réduire les allers-retours chronophages entre phases de design et phases de développement et d’accélérer les cycles récurrents entre l’élaboration des interfaces utilisateur et leur visualisation sur un équipement représentatif, résume Hervé Rostan, cofondateur et dirigeant de la société française Imagem Technology qui s’est taillé pendant quinze ans un savoir-faire pointu dans le domaine du graphisme et des IHM embarquées sur FPGA, notamment pour le secteur automobile. Or, avec l’approche disruptive que nous proposons aujourd’hui, nous ne réduisons pas simplement les délais entre design et visualisation sur la cible embarquée, nous les supprimons totalement ! »

Un environnement tout-en-un

Au terme de deux ans de travaux, Imagem a en effet élaboré sous le nom de Magneto Studio un environnement tout-en-un qui fusionne un outil de conception d’IHM, les outils de développement logiciel et les outils de déploiement sur cible, l’idée étant d’accélérer les phases de prototypage et de conception d’un produit embarqué. Une première, selon la société française.

« Avec Magneto Studio, notre ambition est de cibler tous les profils d’utilisateurs, quels qu’ils soient, sans formation et sans apprentissage pour qu’ils puissent aboutir à un produit autonome sur une carte embarquée avec un temps de mise en œuvre extrêmement rapide, et ce sans qu’ils aient forcément besoin de connaître la carte électronique qui portera leurs créations », détaille Hervé Rostan. Afin de prouver concrètement la véracité de ses dires, la société a mis en ligne une vidéo réalisée sans coupure et sans trucage qui montre de bout en bout la réalisation d’une application interactive et connectée, programmée en mode autonome sur une carte Raspberry Pi 2 modèle B. Le tout prend une dizaine de minutes montre en main. L’utilisateur a ainsi l’impression de construire simultanément son projet sur son poste de développement et sur le matériel embarqué, comme en miroir.

Tout pour l'expérience utilisateur

De manière plus prosaïque, le code – grâce aux technologies mises au point par Imagem – est  en fait généré et exécuté en temps réel sur la cible, et l’IHM s’exécute à l’identique comme elle le fait sur la machine de développement. En d’autres termes, les données et le code produits par Magneto Studio sont mis à jour en temps réel sur la cible, et le code en développement s'exécute en permanence sur la plate-forme connectée.

« Magneto Studio repose sur un écosystème qui mise tout sur l’expérience utilisateur, continue le dirigeant d’Imagem. Nous donnons un nouveau souffle à la notion de Wysiwyg (What You See is What You Get) en proposant le concept de Wyciwir (What You Create Is What Is Running). » A noter que la société française, loin de s’orienter vers des langages spécifiques, a aussi opté pour le C comme syntaxe de référence. Un choix qui s’explique par une volonté de s’adresser aussi à des profils d’utilisateurs qui n’ont pas de connaissance en développement logiciel, mais qui peuvent néanmoins élaborer des applications interactives complexes. Le langage C permet par ailleurs un lien naturel entre les applications d’IHM mises au point dans Magneto Studio et les développements système ou métier réalisés sur du matériel embarqué.

Un moteur d'IHM embarqué de 100 Ko

Quoi qu’il en soit, une grande partie du savoir-faire de la société tient dans le moteur embarqué qui exécute l’IHM sur la cible et qui bénéficie de toute l’expérience acquise par l’entreprise française depuis une quinzaine d’années. A la fois compact (environ 100 Ko), fiable et performant, même sur des systèmes aux ressources limitées (comme un FPGA intégrant un processeur logiciel Nios de 100 Mips), il permet un rendu conforme à la spécification et au maquettage sur machine bureautique, même sur des applications complexes d’IHM, assure Imagem.

« Ce moteur d’IHM qui est un peu "l’héritier" de la technologie Adobe Flash et qui exécute un code natif exploitant la performance optimale des cartes n’a pas besoin d’un système d’exploitation, mais il est compatible avec le OS existants tels que Linux, poursuit Hervé Rostan. C’est aussi lui qui garantit la pérennité des applications même en cas de changement de l’électronique. Il est proposé en premier lieu sur la famille de produits Raspberry Pi, pour lesquels il existe une communauté très active, mais il a vocation à s’étendre à d’autres cartes industrielles en fonction des besoins » Imagem estime en effet que le marché des cartes à finalité industrielle ou embarquée a atteint une maturité suffisante pour permettre d’en vulgariser et démocratiser l’usage à tous types de profils d’utilisateurs, techniques ou non, allant du designer graphique au développeur chevronné, en passant par le hobbyiste passionné.

Pour l’heure disponible sur macOS, un environnement familier aux designers graphiques (et aux jeunes !), l’outil tout intégré Magneto Studio à lui aussi vocation à être déployé sur d’autres types de postes de développement. Une version sur Windows serait ainsi déjà dans les cartons. « En ciblant l’écosystème Raspberry Pi dans sa première version, Magneto Studio permet aux passionnés de maquetter leurs propres systèmes à partir de leurs idées, mais l’outil s’adresse clairement aux TPE et PME par son modèle économique », conclut le dirigeant d’Imagem.