FX3, Problem to read Brigtness for UVC-device via V4L2 driver

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

During development of a Chrome-application we have got problems, with our camera never seen in Apple OS or Windows.

   

The Linux V4L2 driver returns cached values when trying to read for example brightness from the camera. 

   

From Linux developers we have heard the "brightness adjustment flag must be set to volatile, set in auto" otherwise will the Linux driver return cached values. 

   

I can not figure out at all what they mean here, and how to change the FX3-project to be compatible with V4L2.

0 Likes
2 Replies
Anonymous
Not applicable

Brightness control is implemented in the AN75779 project under processing unit requests"UVCHandleProcessingUnitRqts". These capabilities may or may not be supported by the image sensor, please check. In any case, the firmware implementation on the USB side of the controls for these capabilities remains the same. However, the image sensor implementation would differ. Therefore, only placeholder functions are provided that implement the USB side of these controls.

   

You can check the same by using your UVC host application and sending a brightness change command. You can put a UART debug print in the UVCHandleProcessingUnitRqts to see if this is getting called when you send a brightness command. Please do check with multiple host application on Linux and Windows (this will help to identify if the host application itself if not sending these command properly).

0 Likes
IvPe_4204671
Level 2
Level 2
First solution authored 10 replies posted 10 sign-ins

Same Happens here.

Under Windows, everything works right. I mean, when you read a control, it triggers the callback inside the CX3 firmware and you get the updated value. Under linux however, I get cached previous value. I dont figure out how to declare such a control "volatile". As you wrote this almost 5 years ago, did you solve it? Can you share the solution?

0 Likes