Wow, I can't believe it. My first kernel driver for a device and it actually worked! The USB protocol makes it almost fun to write drivers for devices(when you actually have documentation for the device). I don't have my TrackIR yet, but UPS says I'll get it on Friday. The only problem with the driver my tester found so far is that I forgot to make a check to see if the firmware was already loaded, so it would load the firmware over and over until the new device was enumerated. I sent off a fix for that at around 4:45am this morning and now I'm waiting to hear back from him. All I need to add now is the open and read functions and it should be done. I'm going to wait to write those until I have mine.