Can you create your own driver for a USB device?

I have recently learned C++ and C#. That is, I have taken courses to understand the basics of them and now want to start using them for professional work. I have said I want to take on projects that push me to learn a lot more about these vast programming languages. I have a hardware device name Griffin PowerMate. It is a USB knob/wheel that can be helpful controlling a computer. For some reason, it does not have great support on Window 7, 10. It does have a driver for Window XP and Vista. I cannot get this device to do what I want in Windows 10. However, on a Mac computer, the driver is up to date and does everything I want. So, to me this proves what I want on the Windows side is possible. Is it likely to think that without an SDK from the company I could use C++ or even C# to create a driver for this device? I realize this is a C++ forum. However, I think the person qualified to answer this would be here. Thanks
Yes, you can develop a driver for it, if you know how to talk to the hardware. For example, in what format does it send its input? Does it need any commands back from the host? That sort of thing. You could try contacting the manufacturer and asking them if they can send you the sources for other drivers. I'd say you have a 50-50 chance that they'll agree to do it.

Now, Windows 10 has a peculiarity. If you don't have a signing certificate that costs around USD 1000 (IIRC), you normally can't load your own driver. You can still load it by enabling driver testing mode, which lets you load self-signed drivers, but I would advice against it as you would be seriously weakening the security of your system. Also, you would need to enable it every time you boot your computer, which is a pain.
Topic archived. No new replies allowed.