raspberrypi / rpicam-apps

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[BUG] - incorrect max exposure and others for arducam-pivariety (IMX462)

EricClaeys opened this issue · comments

Describe the bug
Running rpicam-still --list-cameras produces the following. Notice the "ExposureTime" is [14..0] which is incorrect - the maximum time isn't specified and should be.

Available cameras
-----------------
0 : arducam-pivariety [1920x1080 10-bit RGGB] (/base/soc/i2c0mux/i2c@1/arducam_pivariety@c)
    Modes: 'SRGGB10_CSI2P' : 1920x1080 [60.00 fps - (0, 0)/1920x1080 crop]

    Available controls for 1920x1080 SRGGB10_CSI2P mode:
    ----------------------------------------------------
    AeConstraintMode : [0..3]
    AeEnable : [false..true]
    AeExposureMode : [0..3]
    AeMeteringMode : [0..3]
    AnalogueGain : [1.000000..200.000000]
    AwbEnable : [false..true]
    AwbMode : [0..7]
    Brightness : [-1.000000..1.000000]
    ColourGains : [0.000000..32.000000]
    Contrast : [0.000000..32.000000]
    ExposureTime : [14..0]
    ExposureValue : [-8.000000..8.000000]
    FrameDurationLimits : [16666..15534444]
    NoiseReductionMode : [0..4]
    Saturation : [0.000000..32.000000]
    ScalerCrop : [(0, 0)/64x64..(0, 0)/1920x1080]
    Sharpness : [0.000000..16.000000]

Further, running rpicam-still -v --shutter 5000 --metadata SOME_FILE ... produces the following. Note that no default Brightness, Saturation, or Sharpness were given:

{
    "ExposureTime": 5000000,
    "FocusFoM": 1351,
    "AnalogueGain": 1.330000,
    "ColourCorrectionMatrix": [ 1.831948, -0.820011, -0.011936, -0.430259, 1.753510, -0.323250, -0.071906, -0.713727, 1.785643 ],
    "FrameDuration": 5000059,
    "Lux": 0.090005,
    "AeLocked": false,
    "ColourGains": [ 1.000000, 1.000000 ],
    "DigitalGain": 1.891665,
    "ColourTemperature": 4500,
    "SensorBlackLevels": [ 4096, 4096, 4096, 4096 ],
    "ScalerCrop": "(0, 0)/1920x1080",
    "SensorTimestamp": 805369547000
}

IMHO it this output should always contain ALL the values used

commented

Support for Arducam's PiVariety cameras has never been upstreamed by them, therefore they do not run with the Raspberry Pi libcamera or this repo for rpicam-apps.

Arducam's branches are at https://github.com/Arducam/libcamera and https://github.com/ArduCAM/libcamera-apps/, although I note they have disabled issues on those repos.
Support for Arducam products is through their support channels at https://forum.arducam.com/ or https://www.arducam.com/contact-arducam/

I suspect because of the way that PiVariety has been implemented that the max exposure time is not known as the microcontroller on the sensor board may not provide that information.