drvnob
drvnob

Reputation: 31

Beginner looking to write linux device driver (usb, pci). Suggestion on device?

I have been reading on linux kernel development and device drivers for a while. I feel ready to give it a go on a real piece of hardware. I would like to write a driver for a, preferably usb (otherwise pci), device for a desktop computer. But every device I seem to think of is already supported (including everything I own atm). So, would welcome any suggestions.

P.S. Willing to buy it, provided it's under £100 (150$).

Upvotes: 0

Views: 2148

Answers (3)

Massimo
Massimo

Reputation: 1

You could port the Enttec Open DMX USB Interface driver to latest 3.x kernels.

git clone http://git.hbels.com/public/dmx_usb_module

libusb way sounds more appropriate to me too though.

Upvotes: 0

Peter Teoh
Peter Teoh

Reputation: 6733

USB-based devices are generally well supported at the kernel level. What this means is that u rarely have to write a device driver for each and every USB devices at the kernel. THis is because applications can easily use libusb (and several other userspace USB libraries) to talk to the device.

If you look into the USB code in the kernel, you can see that it is among the most complex implementation of all the hardware protocol, but it is also generic across different USB devices. I have done porting work for USB devices before, and trust me, libusb is good enough.

Check it out (for example):

http://libusb.sourceforge.net/doc/examples.html

Upvotes: 0

Bill
Bill

Reputation: 25565

Anything really practical has already been done out of necessity. My vote would be for something like http://www.amazon.com/Cheeky-Computer-Controlled-Missile-Launcher/dp/B004AIZV48/ref=pd_sim_t_1. It's fun, inexpensive, and currently Windows only.

The protocol should be pretty simple, but will give you good experience on debugging the USB channel in order to figure it out. And when you are done, you'll have a cool toy :)

Upvotes: 1

Related Questions