Здесь USB побеждали, далеко ходить не надо. Тот исходник что я выложил надо причесать, в основном с приведением типов и он для HID. В последствии я его укоротил и привел в порядок (как мне кажется), сделать это будет не трудно если USB раскурить.
isx вроде как раз CDC делал, про это тоже гутарили.