Hello everybody, I'm currently trying to write a rudimentary driver for the NaturalPoint Optitrack cameras (they directly output thresholded 1-bit video at 120 FPS, are infrared-only and intended for tracking applications).
I have obtained some traces under WinXP with SnoopyPro and took the usb-skeleton.c as a template. Now, to initialize the device, the Windows driver sends several bulk messages to endpoint 0x02, which I tried to replicate in the Linux driver. However, this leads to the following result: 17:34:20 brick uhci_hcd 0000:00:1d.0: host system error, PCI problems? 17:34:20 brick uhci_hcd 0000:00:1d.0: host controller halted, very bad! The offending piece of code is this: char cmd_init[] = { 0x14, 0x01 }; ... result = usb_bulk_msg( dev->udev, usb_sndbulkpipe( dev->udev, dev->bulk_out_endpointAddr ), &cmd_init, sizeof(cmd_init), &bytes_sent, HZ ); Afterwards, result is -110 (ETIMEOUT). Is this an error on my part? (Presumably yes.) But where's the problem? I would be grateful for some hints.. Thanks, Yours, Florian
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil