2017-08-31 3 views
-1

Mon père souhaite passer à Linux, mais il y a certaines choses qui le retiennent. Le seul objet dont il ne peut pas se passer est son Corex CardScan 700c. Il l'utilise sur une base hebdomadaire et a des dizaines de milliers de contacts stockés avec lui. Le 700c n'est pas supporté sous Linux, mais est-il possible de créer un pilote USB pour le scanner? Je ne sais rien sur les pilotes de périphériques pour Linux, mais d'après ce que je comprends, je peux le faire fonctionner à deux endroits différents: l'espace noyau et l'espace utilisateur. Kernelspace nécessite C/Assembly, où comme dans l'espace utilisateur, je pourrais être en mesure d'utiliser Python (à droite?). Est-ce que quelqu'un sait quelque chose sur ce sujet, ou connaît-il de bons guides/livres relatifs à ce sujet? Je me décrirais comme un «passionné de programmation» mais je suis prêt à apprendre. Merci pour votre aide et votre contribution.Création d'un pilote de périphérique USB pour Linux

+0

Ceci est une tâche difficile. Voir une question connexe: https://askubuntu.com/questions/24297/how-do-i-get-a-cardscan-60-ii-working-with-sane – VPfB

+0

Je suis la dernière personne à décourager une personne de assumer une tâche difficile qui a une valeur éducative; mais je me sens obligé de le faire dans ce cas. L'utilisation de quelque chose comme libusb pourrait permettre de faire le travail dans l'espace utilisateur plutôt que dans le noyau, et supprimer une partie de la charge d'apprentissage considérable de la programmation du noyau. Mais le vrai problème ici sera l'ingénierie inverse du protocole USB du scanner, qui sera probablement non documenté. D'après mon expérience, ce genre de chose prend beaucoup de temps et est frustrant, et les résultats en valent vraiment la peine pour que ce soit justifiable. –

Répondre

1

Si vous voulez aller la façon python, vous pouvez regarder libusb1. Certains usage examples sont décrits dans la documentation de ce module python. Vous serez bien sûr exposé à beaucoup d'interactions avec l'appareil, mais si vous êtes "prêt à apprendre", vous pouvez commencer à partir d'ici. Bonne chance avec votre codage/piratage!