ESP32 S3 CAM, OV5640 5MP, Wi-Fi, Bluetooth 5 LE

250,00 DH

Disponibilité:

292 en stock

UGS : 0034-G Catégories : ,

Description

ESP32-S3-CAM N16R8 avec caméra OV5640 5 MP – Wi-Fi et Bluetooth 5 LE

La carte de développement ESP32-S3-CAM N16R8 avec caméra OV5640 est une solution complète pour les projets IoT, la capture d’images, la vidéosurveillance locale, la reconnaissance visuelle et les applications d’intelligence artificielle embarquée.

Elle associe le puissant microcontrôleur ESP32-S3 double cœur à une caméra CMOS OV5640 de 5 mégapixels, une mémoire Flash de 16 Mo et une mémoire PSRAM de 8 Mo. Cette importante capacité mémoire facilite le stockage temporaire des images, l’utilisation de résolutions élevées, la gestion d’interfaces graphiques et l’exécution de traitements d’image plus complexes.

La carte comporte également deux connecteurs USB Type-C, un emplacement pour carte microSD et des rangées de broches permettant de connecter des capteurs, écrans, relais, moteurs et autres périphériques électroniques.

Principaux avantages

  • Microcontrôleur ESP32-S3 puissant à double cœur.
  • Caméra OV5640 de 5 mégapixels.
  • Résolution maximale du capteur de 2592 × 1944 pixels.
  • Mémoire Flash intégrée de 16 Mo.
  • Mémoire PSRAM intégrée de 8 Mo.
  • Wi-Fi 2,4 GHz intégré.
  • Bluetooth 5 Low Energy intégré.
  • Deux ports USB Type-C : UART et USB OTG.
  • Emplacement pour carte microSD.
  • Connecteur caméra dédié.
  • Format compatible avec les breadboards.
  • Compatible avec Arduino IDE et ESP-IDF.
  • Convient aux projets IoT, AIoT et de vision embarquée.

Microcontrôleur et processeur

La carte est basée sur le module ESP32-S3-WROOM-1-N16R8, équipé d’un microprocesseur Xtensa LX7 double cœur 32 bits pouvant fonctionner jusqu’à 240 MHz.

L’ESP32-S3 intègre également des instructions vectorielles destinées à accélérer certains calculs de traitement du signal et de réseaux neuronaux. Il est ainsi adapté aux projets de reconnaissance vocale, de détection d’objets simple, de classification d’images et d’intelligence artificielle embarquée.

CPU et mémoire interne

  • Processeur Xtensa LX7 double cœur 32 bits.
  • Fréquence maximale : 240 MHz.
  • Mémoire ROM interne : 384 Ko.
  • Mémoire SRAM interne : 512 Ko.
  • Mémoire SRAM RTC : 16 Ko.
  • Unité de calcul en virgule flottante.
  • Accélération matérielle pour le traitement du signal et certains calculs AI.

Mémoire N16R8

La désignation N16R8 indique la configuration mémoire du module :

  • N16 : 16 Mo de mémoire Flash pour stocker le programme, les bibliothèques, les fichiers et les données.
  • R8 : 8 Mo de PSRAM utilisée comme mémoire vive externe.

La PSRAM est particulièrement utile pour :

  • Les buffers d’images de la caméra.
  • La capture d’images en haute résolution.
  • Le streaming vidéo.
  • Les interfaces graphiques avec écrans TFT ou LCD.
  • Le traitement d’images.
  • Les serveurs Web embarqués.
  • Les modèles TinyML.
  • Les projets nécessitant davantage de mémoire vive.

Caméra OV5640

La caméra incluse utilise le capteur CMOS couleur OmniVision OV5640.

Le capteur dispose d’une résolution native de 5 mégapixels, soit jusqu’à 2592 × 1944 pixels. OmniVision présente également l’OV5640 comme une solution compatible avec la photographie 5 MP et les formats vidéo HD 720p et 1080p. La résolution et la fluidité réellement obtenues dépendent toutefois du programme, du format d’image, de la mémoire disponible et de la connexion Wi-Fi.

Caractéristiques de la caméra

  • Capteur : OmniVision OV5640.
  • Technologie : capteur CMOS couleur.
  • Résolution maximale : 2592 × 1944 pixels.
  • Définition : 5 mégapixels.
  • Format optique du capteur : 1/4 pouce.
  • Taille des pixels : 1,4 × 1,4 µm.
  • Interface de configuration SCCB, proche de l’I2C.
  • Interface vidéo numérique parallèle DVP.
  • Obturateur électronique de type Rolling Shutter.
  • Fonctions automatiques de contrôle d’exposition et de balance des blancs.
  • Réglages logiciels de la luminosité, du contraste, de la saturation et de l’orientation de l’image selon le pilote utilisé.

Le pilote officiel esp32-camera d’Espressif prend en charge l’ESP32-S3 et le capteur OV5640. Il permet de capturer des images et de les convertir dans des formats courants comme JPEG, BMP ou RGB selon la configuration du projet.

Remarque concernant l’autofocus

Le capteur OV5640 peut gérer un mécanisme d’autofocus, mais toutes les caméras OV5640 ne comportent pas nécessairement un objectif motorisé. La présence de l’autofocus dépend du module caméra et de son objectif, et non uniquement de la référence du capteur.

Wi-Fi

L’ESP32-S3 intègre une connexion Wi-Fi 2,4 GHz destinée aux réseaux locaux et aux applications IoT.

Caractéristiques Wi-Fi

  • Normes IEEE 802.11 b/g/n.
  • Bande de fréquence de 2,4 GHz.
  • Débit physique théorique 802.11n jusqu’à 150 Mbit/s.
  • Mode Station STA.
  • Mode point d’accès SoftAP.
  • Fonctionnement simultané AP + STA.
  • Sécurité WPA et WPA2.
  • Agrégation A-MPDU et A-MSDU.
  • Antenne PCB intégrée au module.

La connexion Wi-Fi peut être utilisée pour afficher les images dans un navigateur, transmettre les mesures de capteurs, contrôler la carte à distance ou intégrer le système à une plateforme domotique.

Bluetooth

La carte prend en charge le Bluetooth 5 Low Energy, également appelé BLE.

Caractéristiques Bluetooth

  • Bluetooth 5 LE.
  • Communication à faible consommation.
  • Prise en charge du Bluetooth Mesh.
  • Débits BLE de 125 kbit/s, 500 kbit/s, 1 Mbit/s et 2 Mbit/s selon le mode utilisé.
  • Profils et services basés sur GATT.
  • Communication avec smartphones, tablettes, ordinateurs et autres modules BLE.

L’ESP32-S3 ne prend pas en charge le Bluetooth Classic BR/EDR de la même manière que l’ESP32 original. Il ne faut donc pas le présenter comme compatible avec les profils Bluetooth Classic tels que SPP ou A2DP.

Ports USB Type-C

La carte dispose de deux ports USB Type-C ayant des fonctions différentes :

  • Port UART : utilisé pour l’alimentation, la programmation et la communication série via le convertisseur USB-série de la carte.
  • Port USB OTG : directement relié à l’interface USB native de l’ESP32-S3.

L’interface USB OTG intégrée peut être utilisée pour créer différents périphériques USB, notamment un port série USB, un clavier, une souris, un dispositif MIDI ou d’autres appareils USB compatibles avec les bibliothèques utilisées.

Emplacement pour carte microSD

L’emplacement microSD permet d’ajouter un espace de stockage externe pour :

  • Enregistrer des photos.
  • Stocker des fichiers de configuration.
  • Sauvegarder les mesures des capteurs.
  • Créer un enregistreur de données.
  • Héberger des fichiers pour un serveur Web.
  • Enregistrer des événements détectés par la caméra.

La carte microSD n’est pas incluse, sauf indication contraire dans le contenu de l’emballage.

Entrées, sorties et interfaces

L’ESP32-S3 dispose de nombreuses interfaces matérielles permettant de connecter différents modules électroniques.

Interfaces disponibles au niveau de l’ESP32-S3

  • GPIO programmables.
  • Convertisseurs analogique-numérique ADC 12 bits.
  • Sorties PWM.
  • Interfaces UART.
  • Interfaces I2C.
  • Interfaces SPI.
  • Interfaces I2S pour l’audio numérique.
  • Interface caméra DVP parallèle.
  • Interface LCD.
  • Contrôleurs PWM pour moteurs.
  • Interface TWAI compatible avec CAN 2.0.
  • Contrôleur SD/MMC.
  • Interface USB OTG Full-Speed.
  • Interface USB Serial/JTAG.
  • Entrées tactiles capacitives.
  • Capteur de température interne.
  • Temporisateurs matériels et watchdogs.

Certaines broches sont déjà utilisées par la caméra, la carte microSD, l’USB ou d’autres composants intégrés. Il est donc recommandé de consulter le brochage exact de la carte avant de connecter un périphérique externe.

Alimentation et niveaux logiques

  • Niveau logique des GPIO : 3,3 V.
  • Alimentation possible par USB Type-C.
  • Alimentation 5 V possible par la broche d’entrée prévue sur la carte.
  • Régulation vers 3,3 V intégrée à la carte.
  • Les GPIO ne sont pas officiellement compatibles avec une tension logique de 5 V.

Un signal de 5 V ne doit pas être connecté directement à une entrée GPIO. Un convertisseur de niveau logique ou un pont diviseur doit être utilisé lorsque le périphérique externe fonctionne en 5 V.

Fonctions de sécurité

L’ESP32-S3 intègre plusieurs fonctions matérielles de sécurité :

  • Secure Boot.
  • Chiffrement de la mémoire Flash.
  • Accélération cryptographique AES.
  • Accélération SHA.
  • Accélération RSA.
  • HMAC.
  • Générateur matériel de nombres aléatoires.
  • Signature numérique.
  • Protection des clés et des données sensibles.

Ces fonctions permettent de renforcer la sécurité des objets connectés et de limiter l’exécution de programmes non autorisés.

Modes de faible consommation

Plusieurs modes de fonctionnement sont disponibles :

  • Mode actif.
  • Modem Sleep.
  • Light Sleep.
  • Deep Sleep.

Ces modes permettent de réduire la consommation électrique dans les projets alimentés par batterie. La consommation réelle dépend du programme, de la caméra, du Wi-Fi, du Bluetooth, du régulateur et des autres composants présents sur la carte.

Applications

  • Caméra Wi-Fi accessible depuis un navigateur.
  • Système de vidéosurveillance locale.
  • Prise de photos à distance.
  • Sonnette connectée.
  • Détection de présence.
  • Reconnaissance de formes ou d’objets.
  • Classification d’images avec TinyML.
  • Lecture de QR codes.
  • Robot avec vision embarquée.
  • Véhicule télécommandé avec retour vidéo.
  • Contrôle d’accès.
  • Surveillance d’une pièce ou d’une machine.
  • Suivi de fabrication.
  • Observation d’animaux.
  • Time-lapse.
  • Enregistreur d’images sur microSD.
  • Interface homme-machine.
  • Projets domotiques.
  • Serveur Web IoT.
  • Transmission sans fil des données de capteurs.
  • Prototypage AIoT.

Programmation avec Arduino IDE

La carte peut être programmée avec Arduino IDE en installant le paquet officiel esp32 by Espressif Systems.

Installation du support ESP32
  1. Téléchargez et installez Arduino IDE.
  2. Ouvrez Fichier > Préférences.
  3. Ajoutez l’adresse suivante dans le champ URL de gestionnaire de cartes supplémentaires :
https://espressif.github.io/arduino-esp32/package_esp32_index.json
  1. Ouvrez Outils > Type de carte > Gestionnaire de cartes.
  2. Recherchez esp32.
  3. Installez esp32 by Espressif Systems.
  4. Sélectionnez Outils > Type de carte > ESP32S3 Dev Module.
  5. Sélectionnez le port série correspondant à la carte.
Réglages Arduino IDE recommandés

Les options exactes peuvent varier selon la version du paquet ESP32. Pour une carte N16R8, utilisez généralement :

  • Board : ESP32S3 Dev Module.
  • CPU Frequency : 240 MHz.
  • Flash Size : 16 MB.
  • PSRAM : OPI PSRAM ou Octal SPI PSRAM.
  • USB CDC On Boot : Enabled lorsque le port USB natif est utilisé.
  • Upload Speed : 921600 ou une valeur inférieure en cas de problème.
  • Partition Scheme : une partition compatible avec 16 MB de Flash.

Le choix incorrect du type de PSRAM peut empêcher l’initialisation de la caméra ou limiter la résolution disponible.

Exemple de vérification de la mémoire

Ce programme vérifie que l’ESP32-S3 détecte correctement la mémoire Flash et la PSRAM.

#include <Arduino.h>

void setup() {
  Serial.begin(115200);
  delay(1500);

  Serial.println();
  Serial.println("Test ESP32-S3 N16R8");

  Serial.printf(
    "Taille Flash : %u octets\n",
    ESP.getFlashChipSize()
  );

  if (psramFound()) {
    Serial.println("PSRAM détectée");
    Serial.printf(
      "Taille PSRAM : %u octets\n",
      ESP.getPsramSize()
    );
    Serial.printf(
      "PSRAM libre : %u octets\n",
      ESP.getFreePsram()
    );
  } else {
    Serial.println("PSRAM non détectée");
    Serial.println(
      "Vérifiez le réglage OPI/Octal PSRAM dans Arduino IDE."
    );
  }
}

void loop() {
}

Test de la caméra

Le pilote officiel de la caméra est inclus dans le paquet Arduino ESP32. Un projet de caméra peut être créé à partir de l’exemple :

Fichier > Exemples > ESP32 > Camera > CameraWebServer

Avant le téléversement, il faut sélectionner ou définir le brochage correspondant à cette carte ESP32-S3-CAM. Le brochage d’une carte AI-Thinker ESP32-CAM classique ne doit pas être utilisé automatiquement, car les connexions de la caméra sont différentes.

Après avoir renseigné le nom et le mot de passe du réseau Wi-Fi, le programme affiche une adresse IP dans le moniteur série. Cette adresse peut ensuite être ouverte dans un navigateur connecté au même réseau pour accéder à l’interface de la caméra.

Téléversement du programme

  1. Connectez le port USB Type-C UART à l’ordinateur avec un câble de données.
  2. Sélectionnez ESP32S3 Dev Module.
  3. Sélectionnez le port COM correspondant.
  4. Cliquez sur Téléverser.
  5. En cas d’échec, maintenez le bouton BOOT.
  6. Appuyez brièvement sur RESET.
  7. Relâchez le bouton BOOT lorsque le téléversement commence.
  8. Ouvrez le moniteur série à 115200 bauds après le redémarrage.

Contenu

  • 1 × carte de développement ESP32-S3-CAM N16R8.
  • 1 × caméra OV5640 5 MP.
  • 2 × rangées de broches à souder.

Le câble USB Type-C et la carte microSD ne sont pas inclus, sauf indication contraire.

Précautions

  • Manipulez la nappe flexible de la caméra avec précaution.
  • Débranchez l’alimentation avant d’insérer ou de retirer la caméra.
  • Vérifiez le sens des contacts du câble FPC avant de fermer le connecteur.
  • Ne connectez pas une tension de 5 V directement aux GPIO.
  • Utilisez un câble USB de données de bonne qualité.
  • Ne touchez pas la surface de l’objectif.
  • Retirez le film de protection de l’objectif, lorsqu’il est présent, avant les essais.
  • La fluidité du streaming diminue généralement lorsque la résolution et la qualité JPEG augmentent.
  • La caméra n’est pas conçue pour remplacer une caméra de sécurité professionnelle.