Bij de online NDC labs heeft Stan een beschrijving gemaakt om de ESP32-CAM te programmeren. Deze module heeft geen USB aansluiting, en daarom moet een andere oplossing worden gevonden. De Arduino Nano die ook in de onderdelenset van deze leerlingen zat, gaf de oplossing.

Esp32 CAM programming with Arduino Nano – explained here.

De esp32-cam toevoegen aan Arduino IDE.

Als eerste moet je de ESP32-CAM toevoegen aan de lijst van beschikbare boards, in de Arduino IDE.

  • Je opent de preferences via File > Preferences, of door CTRL + Comma op je toetsen boord te klikken.
  • In het preferences scherm zoek je het kopje “Additional Boards Manager URLs”. Plak hier deze link in “https://dl.espressif.com/dl/package_esp32_index.json”.

Nu moet je het board nog toevoegen.

  • In het Tools menu, Ga naar tools  en hou je muis over “Board:”. Kies dan voor “Board Manager…”.
  • Zoek dan in het zoek balkje “esp32” op en installeer hem dan.

In het Tools menu kies je de juiste instellingen voor de ESP32-CAM, zoals in deze afbeelding:

Het nummer van de COM poort zal zoals gebruikelijk bij jou waarschijnlijk anders zijn.

Aansluiten van de ESP32-CAM en de Arduino Nano

Volgens dit schema sluit je de beide apparaten aan.

Uitleg: Er staat nergens dat je een programma naar de Arduino Nano moet sturen. En toch wordt dit je programmer, hoe kan dat?
Dit werkt prima, maar eigenlijk wel een beetje apart. In dit schema gebruik je alleen de USB-TTL converter chip die aan de onderkant van de Arduino Nano zit. De USB aansluiting van het Arduino Nano bordje loopt naar de deze converter chip, en deze is vervolgens aangesloten op de RX0 en TX1 aansluitingen. Met deze TX en RX kan je de Arduino chip van de Arduino Nano programmeren, maar je kunt het signaal blijkbaar ook aftappen om een programma te sturen naar de ESP32-CAM.

Je eerste programma op een ESP32-CAM

Open het voorbeeldprogramma:

  • File> Examples >ESP32 > Camera > CameraWebServer.

Dit voorbeeld opent in de IDE 4 tabjes met elk een file. Deze files vormen samen de code voor dit voorbeeld.

Je gaat het bestand CameraWebServer aanpassen.

Comment de CAMERA_MODEL_WROVER_KIT door twee “/” er voor te plaatsen. En haal de twee “/” weg voor de CAMERA_MODEL_AI_THINKER:

  // Select camera model
  //#define CAMERA_MODEL_WROVER_KIT
  //#define CAMERA_MODEL_ESP_EYE
  //#define CAMERA_MODEL_M5STACK_PSRAM
  //#define CAMERA_MODEL_M5STACK_WIDE
  #define CAMERA_MODEL_AI_THINKER

Dan pas je deze 2 lines code aan zodat je wifi SSID goed staan en je wifi password zodat de esp verbinding kan maken met het internet.

  const char* ssid = "je wifi naam";
  const char* password = "je wifi wachtwoord";

Na deze aanpassingen sla je de code op, kies een eigen plek op je computer.

Uploaden

Sluit de Arduino nu aan met de usb kabel en kies ‘upload’ of control-u op het bestand naar de Arduino ESP32-CAM module te sturen.

Je ziet nu dat die nu aan het uploaden is. Zodra er in je scherm komt te staan:

“Hard resetting via RTS pin…”

… dan kan je de IO0 en de GND van elkaar loskoppelen.

Open de  Serial monitor in de Arduino idee en klik daarna op het RST knopje op de ESP32. Als je allemaal rare tekens ziet staan, dan moet je in de serial monitor je baudrate op 115200 zetten; klik dan weer op RST op de esp.

Als het uploaden gelukt is, dan heb je nu een webserver met een camera stream. De uitleg in je serial monitor vertelt je precies hoe je daarmee kunt connecten.