Configuración de cámaras IMX519 en una Raspberry Pi 5
Esta guía explica cómo conectar y configurar la cámara Arducam IMX519 en la Raspberry Pi 5 y cómo probar la captura de fotografías con scripts de shell.
Hardware probado
- Raspberry Pi 5 con 8 GB de RAM.
- Dos módulos de cámara Arducam IMX519, SKU B0371.
- Dos cables planos CSI de 22 a 22 pines (recomendamos 15 o 20 cm).
- Fuente de alimentación oficial de Raspberry Pi, de 5 V/3 A o superior (recomendamos la fuente de 27 W).
- Tarjeta microSD de 16 GB con Raspberry Pi OS (Legacy, 64-bit) Lite, basado en Debian 12 “Bookworm”. La opción “Raspberry Pi OS Lite (64-bit)” de Raspberry Pi Imager instala ahora Debian 13 “Trixie”, un sistema con el que todavía no hemos validado Captua.
Consulta los pasos iniciales de instalación de Raspberry Pi OS en la documentación de Raspberry Pi.
1. Conexión del hardware
Para conectar las cámaras seguimos la guía de inicio rápido de Arducam para la configuración del hardware.
Conexión de la cámara
Esta fotografía muestra la conexión de la cámara:
Conexión de la cámara con cable plano
Antes de cerrar la pestaña de sujeción, comprueba que el cable plano quede completamente insertado y alineado en el conector. Ambos puertos de la Pi requieren la misma orientación: los contactos metálicos del cable deben mirar hacia el puerto Ethernet y el refuerzo azul hacia el borde frontal de la placa, del lado de HDMI y USB-C. Consulta la fotografía de las dos cámaras más abajo.
Conexión de dos cámaras a la Raspberry Pi 5
La Raspberry Pi 5 tiene dos conectores CSI, CAM0 y CAM1. Conecta una cámara a cada puerto con cables planos de 22 pines.
En ambos puertos, los contactos metálicos del cable deben mirar hacia el puerto Ethernet.
Conexión de dos cámaras a la Raspberry Pi 5
Montaje final
Después de conectar las cámaras, comprueba que todo esté firme. Instala los disipadores u otros sistemas de refrigeración necesarios e inserta la tarjeta microSD con Raspberry Pi OS instalado. Por último, conecta la fuente de alimentación para encender la Raspberry Pi 5. Conecta el teclado, el ratón y el monitor, o configura SSH para manejarla sin pantalla.
Montaje final de la Raspberry Pi 5 con dos cámaras Arducam IMX519 B0371
2. Configuración del software
Para este paso seguimos la guía de Arducam para configurar el software de IMX519, en concreto las instrucciones para Raspberry Pi Bullseye OS 6.1.21 y versiones posteriores, y Bookworm OS.
Nota sobre las herramientas de cámara: Por lo general, las herramientas oficiales
rpicam-appsde Raspberry Pi son la opción preferida para la Pi 5, pero en nuestras pruebas no detectaron las IMX519. El método que describimos a continuación, con los paquetes de Arducam, funcionó de forma fiable. Otras configuraciones podrían funcionar conrpicam-apps; esta guía documenta el método que probamos.
Paso 1: descargar el script de Bash
wget -O install_pivariety_pkgs.sh https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/install_script/install_pivariety_pkgs.sh
chmod +x install_pivariety_pkgs.sh
Paso 2: instalar libcamera
./install_pivariety_pkgs.sh -p libcamera_dev
Paso 3: instalar libcamera-apps
./install_pivariety_pkgs.sh -p libcamera_apps
Paso 4: modificar la configuración de arranque
sudo nano /boot/firmware/config.txt
Añade o modifica lo siguiente:
# Desactiva la detección automática: no detecta con fiabilidad los sensores de otros fabricantes
camera_auto_detect=0
[all]
dtoverlay=imx519,cam0
dtoverlay=imx519
La primera línea (
imx519,cam0) habilita CAM0 de forma explícita. La segunda (imx519) permite que el kernel detecte CAM1 automáticamente. Necesitas ambas líneas para usar dos cámaras.
Opcional: habilita los registros de depuración:
dtdebug=1
Guarda los cambios y reinicia:
sudo reboot
3. Verificar la detección de cámaras
Después de reiniciar:
rpicam-hello --list-cameras
Resultado esperado con dos cámaras IMX519:
Available cameras
-----------------
0 : imx519 [4656x3496 …] (/base/axi/pcie@…/i2c@88000/imx519@1a)
1 : imx519 [4656x3496 …] (/base/axi/pcie@…/i2c@80000/imx519@1a)
Si quieres comprobar el grafo de dispositivos multimedia:
v4l2-ctl --list-devices
media-ctl -p
4. Probar las cámaras
Vista previa de cada cámara
rpicam-hello --camera 0 -t 5000
rpicam-hello --camera 1 -t 5000
Capturar una fotografía
rpicam-jpeg --camera 0 -o cam0.jpg
rpicam-jpeg --camera 1 -o cam1.jpg
Grabar un video corto
rpicam-vid --camera 0 -t 10000 -o cam0.h264
rpicam-vid --camera 1 -t 10000 -o cam1.h264
5. Solución de problemas
Error -5: failed to read chip id
El sensor no responde por I²C. Vuelve a conectar el cable plano y verifica la orientación. Comprueba que la pestaña esté completamente cerrada. Prueba a intercambiar CAM0 y CAM1.
Solo aparece una cámara
Comprueba que figuren ambas líneas dtoverlay. Intercambia los módulos y los cables para localizar la falla.
No existe /dev/video0
El controlador no estableció la conexión con el sensor. Revisa los registros:
dmesg | grep imx
Comprobar la alimentación
vcgencmd get_throttled
Un valor de 0x0 indica que el comando no registra ninguna de las condiciones que supervisa. Un valor distinto de cero puede indicar voltaje insuficiente, limitación por temperatura o reducción de frecuencia, actuales o anteriores. Consulta los bits del resultado en la documentación de Raspberry Pi para identificar la causa. Si indica voltaje insuficiente, usa la fuente oficial.
Consultar los registros de depuración
Si configuraste dtdebug=1:
dmesg | grep -i imx
sudo vcdbg log msg