Sobre el proyecto

ESP32-CAM_MJPEG2SD es una aplicación Arduino para placas de cámara ESP32 y ESP32-S3 que utilizan sensores OV2640, OV3660, OV5640 o PY260. Almacena fotogramas JPEG como archivos AVI en tarjeta SD para que las grabaciones puedan reproducirse a la velocidad de fotogramas prevista en reproductores multimedia estándar. Un micrófono I2S o PDM instalado puede añadir audio PCM mono de 16 kHz, y se puede grabar telemetría cuando hay sensores compatibles presentes. La grabación puede iniciarse mediante detección de movimiento basada en cámara, PIR, radar, acelerómetro, otro pin de disparo, controles manuales del navegador, modo time-lapse o grabación segmentada continua tipo dashcam. La interfaz web admite visualización MJPEG en vivo, reproducción de AVI, eliminación de carpetas y archivos, descarga desde el navegador, limpieza de almacenamiento y carga mediante FTP, HTTPS o WebDAV. También proporciona transmisión RTSP con video, audio y subtítulos, transmisión a sistemas NVR remotos, notificaciones por Telegram o correo electrónico, estado y control MQTT con integración en Home Assistant, sincronización horaria NTP o desde el navegador, mDNS, autenticación HTTP y HTTPS opcionales, actualizaciones OTA y registros en RAM RTC, a través de websocket o en tarjeta SD. El soporte de periféricos incluye servos de inclinación/panorámica, lámparas y tiras LED, control de puente H y motor paso a paso, joysticks, monitoreo de voltaje de batería, sensores de temperatura, dispositivos I2C como BMP280, BME280, MPU6050, MPU9250, SSD1306 y LCD1602, además de una placa auxiliar accesible por IP o UART para hardware de vehículos, servos y fotogrametría. Las compilaciones ESP32-S3 pueden usar un micrófono y altavoz para una función de intercomunicador, y se admite Ethernet en placas adecuadas o con un controlador W5500 externo. Una función de concentrador de cámara puede acceder a otros dispositivos que ejecuten el mismo firmware. La instalación utiliza el IDE de Arduino, el núcleo arduino-esp32 v3.1.1 o más reciente, PSRAM y configuraciones de partición específicas de la placa. El modelo de cámara y las funciones opcionales se seleccionan en el encabezado, y las funciones opcionales se habilitan con definiciones INCLUDE_*. En la primera configuración Wi-Fi, el dispositivo proporciona un punto de acceso y un asistente web para la configuración de red; los archivos de la interfaz web se pueden descargar a la tarjeta SD y actualizar posteriormente. El README señala que las limitaciones de memoria del ESP32 impiden que todas las funciones se ejecuten juntas y recomienda placas de cámara ESP32-S3 más nuevas para una funcionalidad más completa. Las funciones del navegador se han probado principalmente en Chrome.