La plupart des plateformes pour l'embarqué disposent d'un contrôleur USB en mesure d'adopter un rôle d'hôte USB pour la connexion de matériels, mais également de périphériques afin d'apparaître pour un hôte comme un appareil USB quelconque. Jusqu'à présent cette fonctionnalité était parfaitement prise en charge par le noyau Linux, mais souffrait d'une certaine rigidité dans la configuration. Avec les versions récentes, l'architecture a été revue, assouplie et modularisée.
Tout comme les tablettes et smartphones capables à la fois d'apparaître comme un périphérique MTP lorsqu'ils sont connectés à un PC/Mac et de se comporter comme un hôte lorsqu'on y connecte une clé USB, la plupart des plateformes pour l'embarqué peuvent faire de même. Le concept d'USB OTG (On-The-Go) est une extension du standard USB 2.0 permettant à des périphériques USB de communiquer indépendamment de l'hôte. Par effet de bord, ces périphériques OTG peuvent donc, en fonction de la connectique utilisée, prendre au choix le rôle d'hôte ou de périphérique.
Cela est supporté de longue date dans le noyau Linux, mais jusqu'à présent ceci passait par le chargement de modules fournissant des fonctionnalités arbitrairement définies. Ainsi, le module g_ether, par exemple, fournissait une « émulation » d'adaptateur USB Ethernet, g_serial un périphérique de classe CDC ACM, etc. D'autres modules offraient la possibilité de créer des gadgets composés,...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première