Per il driver (parliamo di Windows) devi programmare in C a basso livello con il DDK.
La documentazione sul sito MS e' "enorme" ... e anche l'esperienza che ci vuole ...

Per il collegamento elettrico, nulla si puo' dire se non si sa che tipo di dati e a che ritmo dovranno essere letti ... Presumo comunque che una USB potrebbe andare bene ...
Detto cio', sul web esistono tantissimi siti che trattano di USB, ma la sua programmazione e' tutt'altro che semplice.