UTS IoT — Esp32 Cam simulation

An interactive Esp32 Cam circuit simulation you can run free in your browser on Velxio, by abdullahkevin213.

Sketch code

#include <WiFi.h>
#include <HTTPClient.h>
#include "esp_camera.h"

// ============================================================
// WIFI
// ============================================================
const char* ssid = "Velxio-GUEST";
const char* password = "";

// ============================================================
// FLASK SERVER
// ============================================================
const char* serverUrl =
    "http://192.168.1.24:5000/upload_frame";

// ============================================================
// AI-THINKER ESP32-CAM PIN
// ============================================================
#define PWDN_GPIO_NUM     32
#define RESET_GPIO_NUM    -1
#define XCLK_GPIO_NUM      0
#define SIOD_GPIO_NUM     26
#define SIOC_GPIO_NUM     27

#define Y9_GPIO_NUM       35
#define Y8_GPIO_NUM       34
#define Y7_GPIO_NUM       39
#define Y6_GPIO_NUM       36
#define Y5_GPIO_NUM       21
#define Y4_GPIO_NUM       19
#define Y3_GPIO_NUM       18
#define Y2_GPIO_NUM        5

#define VSYNC_GPIO_NUM    25
#define HREF_GPIO_NUM     23
#define PCLK_GPIO_NUM     22


// ============================================================
// SETUP
// ============================================================
void setup() {

  Serial.begin(115200);
  delay(1000);

  Serial.println();
  Serial.println("==========================================");
  Serial.println(" ESP32-CAM RGB565 -> HTTP -> FLASK");
  Serial.println(" VERSION: RGB565_DIRECT_V2");
  Serial.println("==========================================");


  // ==========================================================
  // 1. WIFI
  // ==========================================================
  Serial.println();
  Serial.println("[1] Connecting WiFi...");

  WiFi.begin(ssid, password);

  int wifiAttempt = 0;

  while (WiFi.status() != WL_CONNECTED) {

    delay(500);
    Serial.print(".");

    wifiAttempt++;

    if (wifiAttempt > 40) {
      Serial.println();
      Serial.println("[ERROR] WiFi connection failed!");
      return;
    }
  }

  Serial.println();
  Serial.println("[OK] WiFi connected");

  Serial.print("[INFO] ESP32 IP: ");
  Serial.println(WiFi.localIP());

  Serial.print("[INFO] Flask server: ");
  Serial.println(serverUrl);


  // ==========================================================
  // 2. CAMERA CONFIGURATION
  // ==========================================================
  Serial.println();
  Serial.println("[2] Initializing camera...");

  camera_config_t config;

  config.ledc_channel = LEDC_CHANNEL_0;
  config.ledc_timer = LEDC_TIMER_0;

  config.pin_d0 = Y2_GPIO_NUM;
  config.pin_d1 = Y3_GPIO_NUM;
  config.pin_d2 = Y4_GPIO_NUM;
  config.pin_d3 = Y5_GPIO_NUM;
  config.pin_d4 = Y6_GPIO_NUM;
  config.pin_d5 = Y7_GPIO_NUM;
  config.pin_d6 = Y8_GPIO_NUM;
  config.pin_d7 = Y9_GPIO_NUM;

  config.pin_xclk = XCLK_GPIO_NUM;
  config.pin_pclk = PCLK_GPIO_NUM;
  config.pin_vsync = VSYNC_GPIO_NUM;
  config.pin_href = HREF_GPIO_NUM;

  config.pin_sccb_sda =

More projects by abdullahkevin213