Mike
2015-06-10 09:02:29 UTC
Hi all,
Attached is a patch for libwebcam.c that fixes the "slightly buggy
implementation of the V4L2_CTRL_FLAG_NEXT_CTRL flag" problem exhibited
by the Ipevo Ziggi HD document camera. I've also tested it with
Logitech C920 and Pro9000 cameras (which don't exhibit the problem),
doesn't break them.
This allows "manual" control of the Ziggi-HD's focus via uvcdynctrl, but
it's a two-stage process - first turn off auto-focus, then set the
manual focus value:
***@mike-desktop:~$ uvcdynctrl -d video0 -s "Focus, Auto" 0
***@mike-desktop:~$ uvcdynctrl -d video0 -s "Focus (absolute)" 60
Annoyingly, the auto-focus is done completely differently. The Ziggi-HD
is a compound USB device with three components - Video, Audio and HID
(Human Interface Device); the HID component represents the buttons and
slide-switch on the camera head, and is also used to trigger an
auto-focus operation via USB. I was able to get this working on Linux
using HIDAPI (http://www.signal11.us/oss/hidapi) and its test GUI to
send and receive HID reports, and Cheese to monitor the video from the
camera. To trigger an auto-focus operation, send a HID Output report, 5
bytes long, data 0x02 0x4F 0x00 0x00 0x00. You should see a 5-byte HID
Input report being received (01 02 01 00 00) in response, then the
auto-focus happening, then a second 5-byte Input report (01 02 02 00 00)
when it's complete.
Hope this sparks a bit of interest in using the Ziggi-HD from FOS
software - seems a decent bit of kit for the money.
Mike H.
Attached is a patch for libwebcam.c that fixes the "slightly buggy
implementation of the V4L2_CTRL_FLAG_NEXT_CTRL flag" problem exhibited
by the Ipevo Ziggi HD document camera. I've also tested it with
Logitech C920 and Pro9000 cameras (which don't exhibit the problem),
doesn't break them.
This allows "manual" control of the Ziggi-HD's focus via uvcdynctrl, but
it's a two-stage process - first turn off auto-focus, then set the
manual focus value:
***@mike-desktop:~$ uvcdynctrl -d video0 -s "Focus, Auto" 0
***@mike-desktop:~$ uvcdynctrl -d video0 -s "Focus (absolute)" 60
Annoyingly, the auto-focus is done completely differently. The Ziggi-HD
is a compound USB device with three components - Video, Audio and HID
(Human Interface Device); the HID component represents the buttons and
slide-switch on the camera head, and is also used to trigger an
auto-focus operation via USB. I was able to get this working on Linux
using HIDAPI (http://www.signal11.us/oss/hidapi) and its test GUI to
send and receive HID reports, and Cheese to monitor the video from the
camera. To trigger an auto-focus operation, send a HID Output report, 5
bytes long, data 0x02 0x4F 0x00 0x00 0x00. You should see a 5-byte HID
Input report being received (01 02 01 00 00) in response, then the
auto-focus happening, then a second 5-byte Input report (01 02 02 00 00)
when it's complete.
Hope this sparks a bit of interest in using the Ziggi-HD from FOS
software - seems a decent bit of kit for the money.
Mike H.