07-19-2018 10:22 AM
Why don't you just use the standard HID stack (as the device seems to be speak the standard USB HID protocol) ?
07-20-2018 07:29 AM
Hi Metrux,
Can you explain your suggestion further? While I have my device and application working as described in this thread I'm always happy to gain more understanding or find a better way.
07-20-2018 01:22 PM
@Jolt wrote:
Hi Metrux,
Can you explain your suggestion further? While I have my device and application working as described in this thread I'm always happy to gain more understanding or find a better way.
If the device is really an USB HID device (as it seems - dont have one here to confirm that), it should be automatically detected by the linux input subsystem and appear under /dev/input/ (assuming they didn't forget to compile in the generic usb hid driver).
07-22-2018 10:38 AM
Maybe, and this is admittedly a bit out of my depth, but the only way I could get the device to be available through my LV code was as described above. The OS does recognize it natively as an HID device but without an address in MAX/LV I couldn't figure out how to target it with the USB Raw functions in LV.
07-23-2018 04:56 AM
Maybe, and this is admittedly a bit out of my depth, but the only way I could get the device to be available through my LV code was as described above.
I guess, LV doesn't have an binding for the standard input/event device API, you could just write one.
IIRC you can call C code from a VI, correct ? Well, then just call libevdev:
https://www.freedesktop.org/wiki/Software/libevdev/
(this library supports Linux as well as BSD).
The OS does recognize it natively as an HID device but without an address in MAX/LV I couldn't figure out how to target it with the USB Raw functions in LV.
If the driver is already bound to the device, you won't get direct access via USB subsystem.
You'd have to unbind the driver (or reconfigure udev to completely ignore that device).
OTOH, reimplementing the whole HID stack in userland isn't an entirely trivial job. I don't see much value in going through all of that, doing an completely own implementation, just for one project.
Instead I'd advice just to use the standard API.
07-23-2018 05:36 AM
I just posted a new proposal @ idea exchange: