Plz, dont pun me for misunderstanding, but I am totally new to USB and to driver programming.
Could u please answer a few questions:
1)What kind of software does Automator represent? Does it include a kernel-driver or it barely uses standard HID-driver?
2)Is there a relatively simple way to adapt this driver for Atmel 89C5131A controller I am currently using?
I just need to create a programmable radio-controlled car, which is controlled via PC through USB connection and that also uses a written kernel-mode driver. I thought this work could help me a bit, right???
Help w/understanding USB using Atmel controllers
=) Another question
Ah, figured it out.
Ok, another question.
I am currently using the standard Atmel HID device firmware. Since their DLL called AtUsbHid.DLL hasn't got any sources available, I'd like to ask you:
Is it actually possible to use LIBUSB sources to write a mini-driver in kernel mode similar to Atmel's DLL one? That would be a perfect solution since the kernel-mode restriction is essential in my work. (I need the sources of a driver of kernel mode, and it is the main restriction)
Thanks in advance, cheers.
Thanks to OBDEV!
Ok, another question.
I am currently using the standard Atmel HID device firmware. Since their DLL called AtUsbHid.DLL hasn't got any sources available, I'd like to ask you:
Is it actually possible to use LIBUSB sources to write a mini-driver in kernel mode similar to Atmel's DLL one? That would be a perfect solution since the kernel-mode restriction is essential in my work. (I need the sources of a driver of kernel mode, and it is the main restriction)
Thanks in advance, cheers.
Thanks to OBDEV!
I don't know Atmel's HID example and therefore don't know what the DLL is supposed to do. However, I do know that a kernel DLL is not required to communicated with an HID. The DLL might just be a user space library which builds an abstraction around the operating system's USB calls, similar to the library which ships with our "Automator" project.
LibUSB is built for "custom class" devices, not for HIDs. You CAN use it with HIDs on Unix, though. Why is it essential for your work that you have a kernel module? Most people are happy if they get away without working in the kernel...
LibUSB is built for "custom class" devices, not for HIDs. You CAN use it with HIDs on Unix, though. Why is it essential for your work that you have a kernel module? Most people are happy if they get away without working in the kernel...
That's a point
Libusb-win32 is a generic, ready-made kernel level driver. It's built to attach to any device and send/receive messages to/from it.
The problem with an HID is that the operating system's driver already matches the device. You can probably override that matching if libusb-win32 matches on a device-ID level instead of the class level. But there would still be no need to modify libusb-win32.
Libusb-win32 is a generic, ready-made kernel level driver. It's built to attach to any device and send/receive messages to/from it.
The problem with an HID is that the operating system's driver already matches the device. You can probably override that matching if libusb-win32 matches on a device-ID level instead of the class level. But there would still be no need to modify libusb-win32.