Développement USB

Bon, il est vain de se raccrocher à des chimères, l’USB a gagné et même s’il n’a pas encore enterré le port parallèle cela ne saurait tarder. La bidouille est donc du domaine de l’USB. Heureusement, certains, comme Dick Streefland, nous tirent d’affaire…

Développer de l’électronique USB ne nécessite pas obligatoirement un microcontrôleur spécifique. Les AVR standards (et peu coûteux) comme l’Attiny2313, l’Atmega8 ou encore l’Attiny45 permettent d’implémenter le protocole USB de manière totalement logicielle. C’est ce qu’a fait Dick Streefland qui n’hésite pas une seconde à tout mettre à disposition en GPL sur : http://www.xs4all.nl/~dicks/avr/usbtiny/.

Résultat, un Attiny2313, un quartz de 12Mhz, une poignée de composants (résistances, capa, etc) et en route poulette. La page détaille deux montages assez simples pouvant servir de base : firmware AVR en C/ASM, scripts Python, etc…

Pour peu que l’on ne se mélange pas les crayons avec D+ et D-, le développement d’un nouveau firmware et d’un client C utilisant la LibUSB est l’affaire d’une heure.

En dehors du tinyusb de Dick, on trouve également deux autres projets similaires :

http://www.cesko.host.sk/IgorPlugUSB/IgorPlug-USB%20(AVR)_eng.htm
http://www.obdev.at/products/avrusb/index.html

Ah oui, accessoirement… bonne année 2007.