Arducam B0497 missing backlight compensation control in v4l2-ctl on Raspberry Pi

Hi all, hoping someone can help. I have an Arducam B0497 (USB3 8.3MP) connected to a Raspberry Pi over USB (it shows up as usb-3f980000.usb-1.2). The camera works, but I’m missing the backlight compensation option in v4l2-ctl. I checked the model numbers and they line up, but the control list is much shorter than I’d expect. Starting to wonder if I got a defective unit. Also, can the firmware update be done from a Linux machine, or do I need Windows for it?

Here’s what I’m seeing:

$ v4l2-ctl -d /dev/video0 -l

User Controls

                     brightness 0x00980900 (int)    : min=-64 max=64 step=1 default=-8193 value=0
                       contrast 0x00980901 (int)    : min=0 max=100 step=1 default=57343 value=10
                     saturation 0x00980902 (int)    : min=0 max=100 step=1 default=57343 value=10
        white_balance_automatic 0x0098090c (bool)   : default=1 value=1
                           gain 0x00980913 (int)    : min=100 max=4000 step=1 default=57343 value=100
      white_balance_temperature 0x0098091a (int)    : min=2498 max=8575 step=1 default=57343 value=2498 flags=inactive

Camera Controls

                  auto_exposure 0x009a0901 (menu)   : min=0 max=3 default=0 value=0 (Auto Mode)
         exposure_time_absolute 0x009a0902 (int)    : min=5 max=330 step=1 default=5 value=5 flags=inactive

Thanks for the output. Before assuming it’s a hardware problem, I’d try updating the firmware first - a missing backlight compensation control is often resolved by a firmware update on this model. I’ve sent you the firmware update guide through private message since it contains a download link. Please update to the latest firmware and then re-check the control list with v4l2-ctl.

Quick update - I found a Windows machine and followed the video to install the firmware updates as instructed. Unfortunately the control list is still reduced and there’s no backlight compensation option. Here’s the output after the firmware update:

$ v4l2-ctl -d /dev/video0 -l

User Controls

                     brightness 0x00980900 (int)    : min=-64 max=64 step=1 default=-8193 value=0
                       contrast 0x00980901 (int)    : min=0 max=20 step=1 default=57343 value=10
                     saturation 0x00980902 (int)    : min=0 max=15 step=1 default=57343 value=10
        white_balance_automatic 0x0098090c (bool)   : default=1 value=1
                           gain 0x00980913 (int)    : min=100 max=4000 step=1 default=57343 value=100
      white_balance_temperature 0x0098091a (int)    : min=2300 max=6500 step=1 default=57343 value=4500 flags=inactive

Camera Controls

                  auto_exposure 0x009a0901 (menu)   : min=0 max=3 default=0 value=0 (Auto Mode)
         exposure_time_absolute 0x009a0902 (int)    : min=5 max=10000 step=1 default=5 value=5 flags=inactive

Some of the ranges changed, so the firmware clearly did something, but still no backlight compensation.

That’s helpful, thanks. I tested the same B0497 on a Raspberry Pi 5 here and the backlight compensation control does show up in v4l2-ctl, so the camera should support it. That makes me think this is more of an environment or software difference than a defective unit. Can you install qv4l2 and check whether the backlight compensation control is listed in the v4l2 control list there? That will help us figure out whether the control is actually missing from the device/UVC descriptor or just not surfacing the way we expect.