Lorsqu'on cherche à développer un support pour un composant interfacé en i2c qui ne dispose pas encore de bibliothèque, que ce soit pour Arduino ou toute autre plateforme pour microcontrôleur (RP2040, ESP32, etc.), la phase de mise au point et de test n'est pas toujours très aisée. Il faut travailler sur un code de firmware, programmer le MCU, tester et itérer, ce qui fait perdre un temps conséquent. Il est bien plus facile de développer sur PC ou Pi pour ensuite porter le code sur MCU. Mais encore faut-il disposer d'un bus i2c facilement accessible...
J'ai évoqué dans l'introduction le fait d'utiliser une carte Raspberry Pi, mais le vrai confort de développement concerne, bien entendu, un environnement sur PC, avec tous les outils à disposition, et ce, sans avoir à passer par une connexion SSH. Le problème cependant est que, contrairement à une Pi ou n'importe quel SBC, un PC moderne ne dispose pas de bus i2c vraiment accessible. Bien sûr, les fonctionnalités sont matériellement là puisque c'est ainsi que les capteurs de température, par exemple, sont utilisés et consultés par le système. Vous pouvez d'ailleurs en avoir un aperçu très facilement avec une machine sous GNU/Linux en utilisant une simple commande :
- 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