Skip to main content
Associate
Nov 4, 2026 1:36 PM UTC
Question

Device Revision 0x3110 (Fast-Boot device), FWPATCH and VTPATCH

Hello,

I am currently working with the STEVAL-66GYMAI evaluation board and the VD66GY sensor in a host-managed architecture where sensor I²C accesses are initiated from the PC.

While reviewing the documentation and the supplied drivers, I found what appears to be an inconsistency and would like to clarify the expected behavior.

According to UM2602 - How to integrate and configure the VD56G3, VD66GY and VD16GZ devices:

  • Section 10 (Firmware Patch) states that a firmware patch must be loaded during the READY_TO_BOOT state.
  • Section 11 (VT Patch) states that a VT patch must be loaded during the SW_STANDBY state.
  •  

However, in the current ST driver (vd6g.c) from the camera middleware, stm32-mw-camera/sensors/vd6g/vd6g.c at main · STMicroelectronics/stm32-mw-camera · GitHub

the patch-loading functions appear to be bypassed for Fast-Boot devices:

 

case VD6G_TOP_DIE_FAST_BOOT:

  ret = 0;

  break;

 

This behavior exists in both:

VD6G_ApplyPatch()

VD6G_ApplyVtPatch()

 

 

My sensor report:

Model ID       : 0x5603

Device Revision : 0x3110

ROM Revision   : 0x0420

 

the driver interprets the upper byte (0x31) as:

VD6G_TOP_DIE_FAST_BOOT

 

Based on this, the current driver does not execute either the Firmware Patch or VT Patch upload procedure for this sensor revision.

 

I also checked: FWPATCH_REVISION (0x001E) = 0x0000

 

VT revision registers:

0x0020 = 0x11

0x0024 = 0x11

0x0026 = 0x11

I have attached the current vd6g.c file which iam using.

 

My questions are:

  1. For Device Revision 0x3110 (Fast-Boot device), are FWPATCH and VTPATCH uploads intentionally skipped and no longer required?

Is FWPATCH_REVISION = 0x0000 the expected behavior for this device revision?

 

2.Should a host-managed implementation still perform the Firmware Patch and VT Patch upload procedures described in UM2602, or should it follow the current driver behavior and skip them?

 

3. Is there a newer VD66GY driver implementation that changes this behavior?