gphoto / libgphoto2

The libgphoto2 camera access and control library.
GNU Lesser General Public License v2.1
1.02k stars 323 forks source link

Support the SetModeDialDisable opcode for Canon cameras #991

Closed jensanjo closed 1 month ago

jensanjo commented 1 month ago

Several Canon EOS cameras allow software setting of the exposure mode dial. This is supported by libgphoto2 via the autoexposuremodedial config. This works as expected wit for instance the EOS 1200D and the EOS 2000D. In some Canon cameras, for instance the Canon EOS R50, you need to unlock this feature before it can be used.

The SetModeDialDisable opcode (0x9088) has to be sent to the camera with parameter 0 to disable the mode dial and allow software setting of the exposure mode. The disabling is cancelled by sending the SetModeDialDisable command with parameter 1.

This pull request will allow software setting of the exposure mode during a camera session by issuing the SetModeDialDisable as described above, by enabling software setting in camera_init and disabling it in camera_exit.

It also adds a disablemodedial camera action config so that the feature can be enabled / disabled during a camera session.

Being able to control the exposure mode via software is a valuable feature for many applications.

This pull request consists of 3 commits: