For 12MP IMX477 Motorized Focus Camera
Product
Product Image | SKU | Pin/Connect Type | Sensor | Resolution | Features | Lens Type | Field of View(HxV) | Focus Type | IR Sensitivity |
---|---|---|---|---|---|---|---|---|---|
![]() |
B0272 | 22/TOP | IMX477 | 12MP | High Resolution | M12 | 75°(H) x 56.3°(V) | Motorized Focus | 650nm IR-cut filter |
Hardware
Software
Enable the Focus Driver
1.Download the Archive
wget https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/Arducam_pivariety_v4l2_v1.0/imx477_rpi_dtoverlay.tar.gz
2.Unzip File
3.Compile and Install
4.Configure the Camera
sudo nano /boot/config.txt
# Turn off the camera auto-detection
camera_auto_detect=0
# Add following content below [all]
dtoverlay=imx477,vcm
5.Reboot
Install libcamera from Arducam
- Step 1. Download the bash scripts
wget -O install_pivariety_pkgs.sh https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/install_script/install_pivariety_pkgs.sh
- Step 2. Install
libcamera
- Step 3. Install libcamera-apps
Focus Control
- Continuous Autofocus
libcamera-still -t 0 --autofocus-mode continuous --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx477_af.json
- Single Autofocus
libcamera-still -t 0 --autofocus-mode auto --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx477_af.json
- Manual Focus
libcamera-still -t 0 --autofocus-mode manual --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx477_af.json
# Use keyboard to control focus
# "f" trigger one-shot autofocus
# "a" add the lens position, "d" decrease the lens position, the minimum unit of step adjustment is 1
libcamera-still -t 0 --autofocus-mode manual -k --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx477_af.json
- Adjust Lens Position
libcamera-still -t 0 --autofocus-mode manual --lens-position 5 --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx477_af.json
- Autofocus Before Capture images
libcamera-still -t 0 --autofocus-on-capture --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx477_af.json
- Set Focus Range