54 shaares
1 private link
1 private link
1 result
tagged
esp32-cam-ch340
Build a web server with the ESP32-CAM board to take a photo and visualize the latest captured photo in your browser saved in SPIFFS. You can also rotate the image if necessary.
On récapitule:
- cfr #IFv-GA pour install API Arduino
- Download https://github.com/me-no-dev/ESPAsyncWebServer/archive/master.zip
- Install: Menu Sketch → Include Library → Add .ZIP Library…
- idem pour https://github.com/me-no-dev/AsyncTCP/archive/master.zip
- /!\ Board ESP32 by Espressif v3.1.0 incompatible → v3.0.7 (Menu Tools → Board → Boards Manager → Search Esp32, remove v3.1.0 and install v3.0.7)
- Code: https://github.com/RuiSantosdotme/ESP32-CAM-Arduino-IDE/blob/master/ESP32-CAM-Take-Photo-and-Display-Web-Server/ESP32-CAM-Take-Photo-and-Display-Web-Server.ino
- Contrairement à ce que le code dit, il faut sélectionner le board ESP32 Wrover Module
- Press FLASH, press RST, let RST, let FLASH
- Menu Sketch → Upload
- Press RST
- L'IP sera indiqué dans la fenêtre Sérial
Pour ajouter un flash
Ajouter les lignes suivantes:
ligne 34:
boolean flashlight = false;
ligne 57:
#define LED_BUILTIN 4
ligne 76:
<button onclick="captureWithFlashlight()">CAPTURE WITH FLASHLIGHT</button>
ligne 89:
function captureWithFlashlight() {
var xhr = new XMLHttpRequest();
xhr.open('GET', "/capturewithflashlight", true);
xhr.send();
}
ligne 108:
pinMode (LED_BUILTIN, OUTPUT);
ligne 182:
server.on("/capturewithflashlight", HTTP_GET, [](http://AsyncWebServerRequest * request) {
takeNewPhoto = true;
flashlight = true;
request->send(200, "text/plain", "Taking Photo");
});
function loop devient:
if (takeNewPhoto) {
if (flashlight) digitalWrite(LED_BUILTIN, HIGH);
capturePhotoSaveSpiffs();
takeNewPhoto = false;
if (flashlight) {
digitalWrite(LED_BUILTIN, LOW);
flashlight = false;
}
}