User Tools

This is an old revision of the document!


Firmware revision history

FX3

52

  • Support for the “true” 2×2 binning done on the sensor itself (requires FPGA v. 71+)
  • Color Grading writes into FPGA are now processed asynchronously (for example an LvL full load results in 1,345 I²C bus requests!)
  • UVC “powerline frequency” support (50/60Hz)
  • UVC “white balance temperature control” support in range 2000°..6500°K
  • AWB and AE are now auto-disabled when users directly adjust specific sensor's registers (for example AWB goes off if a red gain is changed)
  • UVC handlers' cleanup (based on 1.5 spec quite a few are not necessary as their results can be, and are, inferred from others. Like RES can be inferred from MIN/MAX in many cases)
  • UVC autoexposure was working more or less accidentally - fixed now by properly using spec-defined control values
  • UVC API handling is now done synchronously (Cypress's sample implementation was introducing rare race conditions when host was issuing UVC write requests in a rapid succession)
  • Flexible FPS (SCC v. 2.4.0+) support, including via API VR 0xB0 (using an IEEE-754 float x86 LE 4-byte buffer value)
  • Separate DPC for 4K and 1080p modes (support for this is coming “soon” in SCC)
  • Various sensor configuration tables are now consolidated into a manageable set and sorted out and finally made sense of
  • LED is now used to indicate some internal error codes (more work on that is planned to be done in the next few releases)
  • An internal fatal error now reboots the device after turning LED red and a short delay
  • Massive FX3 code cleanup and refactoring, dead code removal, global singletons' elimination, bit manipulations are mostly replaced with the use of structs and unions, improved const-correctness, and more along those lines
  • code improvement for raw-video support
  • sensor standby mode is now either immediate or at frame boundary, depending on where it is needed to be set in the code
    • for video switching the sensor is now put on vblank standby
  • properly set UVC defaults
  • correct a bunch of UVC controls' “info” responses
  • removed quite a few seemingly non-functional delays sprinkled throughout the code
  • a number of sensor updates are now governed by a “write group” access pattern for atomicity (gain and exposure are a few such examples)
  • improvements in debug logging
  • main UVC handler is re-worked to be an easy-to-follow modular code instead of thousands of lines of copy-paste blocks
  • autoexposure was broken for extremely dark images (when an “average” Y value was at 0)
  • new Color Grading defaults

FPGA

71

  • Support for the “true” 2×2 binning done on the sensor itself (requires FX3 v. 52+)
  • Corrected “timing” issues introduced some time ago by HSL pipeline implementation
  • Saturation is no longer done as Vibrancy - that change affected UVC, HvS, LvS
  • ground work is done for “FPGA test patterns” - similar to “sensor test patterns” but generated at various key points in the FPGA imaging pipeline
  • .gitignore enhancements in an effort to bring the size of the repo significantly down

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also, you acknowledge that you have read and understand our Privacy Policy. If you do not agree, please leave the website.

More information