ESP32-CAM Beispielsketch

Hallo zusammen

Ich habe den Beispielsketch übertragen

als Board ESP DEV Modul angewählt die Anleitung war bei Draeger.It zu finden.

Nach dem Laden sollte sich im SerMonitor eine IPAdresse zeigen dies passiert aber nicht.


```cpp
#include "esp_camera.h"
#include <WiFi.h>

// ===========================
// Select camera model in board_config.h
// ===========================
#include "board_config.h"

// ===========================
// Enter your WiFi credentials
// ===========================
const char *ssid = "WLAN"; // war *************
const char *password = "+++++######;

void startCameraServer();
void setupLedFlash();

void setup() {
  Serial.begin(115200);
  Serial.setDebugOutput(true);
  Serial.println();

  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 = SIOD_GPIO_NUM;
  config.pin_sccb_scl = SIOC_GPIO_NUM;
  config.pin_pwdn = PWDN_GPIO_NUM;
  config.pin_reset = RESET_GPIO_NUM;
  config.xclk_freq_hz = 20000000;
  config.frame_size = FRAMESIZE_UXGA;
  config.pixel_format = PIXFORMAT_JPEG;  // for streaming
  //config.pixel_format = PIXFORMAT_RGB565; // for face detection/recognition
  config.grab_mode = CAMERA_GRAB_WHEN_EMPTY;
  config.fb_location = CAMERA_FB_IN_PSRAM;
  config.jpeg_quality = 12;
  config.fb_count = 1;

  // if PSRAM IC present, init with UXGA resolution and higher JPEG quality
  //                      for larger pre-allocated frame buffer.
  if (config.pixel_format == PIXFORMAT_JPEG) {
    if (psramFound()) {
      config.jpeg_quality = 10;
      config.fb_count = 2;
      config.grab_mode = CAMERA_GRAB_LATEST;
    } else {
      // Limit the frame size when PSRAM is not available
      config.frame_size = FRAMESIZE_SVGA;
      config.fb_location = CAMERA_FB_IN_DRAM;
    }
  } else {
    // Best option for face detection/recognition
    config.frame_size = FRAMESIZE_240X240;
#if CONFIG_IDF_TARGET_ESP32S3
    config.fb_count = 2;
#endif
  }

#if defined(CAMERA_MODEL_ESP_EYE)
  pinMode(13, INPUT_PULLUP);
  pinMode(14, INPUT_PULLUP);
#endif

  // camera init
  esp_err_t err = esp_camera_init(&config);
  if (err != ESP_OK) {
    Serial.printf("Camera init failed with error 0x%x", err);
    return;
  }

  sensor_t *s = esp_camera_sensor_get();
  // initial sensors are flipped vertically and colors are a bit saturated
  if (s->id.PID == OV3660_PID) {
    s->set_vflip(s, 1);        // flip it back
    s->set_brightness(s, 1);   // up the brightness just a bit
    s->set_saturation(s, -2);  // lower the saturation
  }
  // drop down frame size for higher initial frame rate
  if (config.pixel_format == PIXFORMAT_JPEG) {
    s->set_framesize(s, FRAMESIZE_QVGA);
  }

#if defined(CAMERA_MODEL_M5STACK_WIDE) || defined(CAMERA_MODEL_M5STACK_ESP32CAM)
  s->set_vflip(s, 1);
  s->set_hmirror(s, 1);
#endif

#if defined(CAMERA_MODEL_ESP32S3_EYE)
  s->set_vflip(s, 1);
#endif

// Setup LED FLash if LED pin is defined in camera_pins.h
#if defined(LED_GPIO_NUM)
  setupLedFlash();
#endif

  WiFi.begin(ssid, password);
  WiFi.setSleep(false);

  Serial.print("WiFi connecting");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");

  startCameraServer();

  Serial.print("Camera Ready! Use 'http://");
  Serial.print(WiFi.localIP());
  Serial.println("' to connect");
}

void loop() {
  // Do nothing. Everything is done in another task by the web server
  delay(10000);
}

```

Bevor jemand fragt.

Die Daten fürs Wlan hab ich korrekt eingegeben.

Im SerMonitor

Ich habe in der Board_Config verschiedene Module versucht ohne Erfolg.

Ser Monitor schließen/öffnen

unter Board Info

Wo muss ich ansetzen ??

Gruß

Walter

Welches ESP CAM Modul? Bitte Link bereitstellen.
Üblicherweise wird als Board AI Thinker ESP32-CAM gewählt.

Dein Sketch kann so nicht sein - da fehlt mindestens ein schließendes "

Erstmal die Baudrate des SerialMonitor bei Serial.begin eintragen, damit man auch den Text nach POWERON_RESET lesen kann...

Stimmt die Baudrate im seriellen Monitor mit der im Setup überein?

Schreib in jede 5te Zeile im setup ein Serial.print("*");
Dann kannst durchzählen.
Oder fang oben mit einer Zeile an und wenn dann der Stern im sermon zu sehen ist, dann kannst 5 Zeilen weiter testen, solange bis der nicht mehr erscheint, dann siehst Du wo es klemmt.

Serial Monitor auf 9600

Ist beim kopieren passiert im Sketch

stehen meine WLAN Daten die ich hier nicht öffentlich machen wollte

Und im code 115200!

Hab ich selbstverständlich an beiden Orten geändert 9600

Hab jetzt auch das Board geändert AI Thinker ESP CAM

Muss ich jetzt den Sketch neu kompilieren und laden ?

Hab es getan

Na prima.
Und was sagt jetzt Dein Browser, wenn Du http://192.168.2.110 in die Adreßzeile tippst?

Dann funktioniert es dank Euch war doch nicht ganz so einfach.

Aber hier im Forum gibt es gute und freundliche Unterstützung.

Eine Frage stellt sich mir aber noch

Ich habe in der IDE nochmal die Board Info geschaut

dort steht immer noch unbekanntes Board wie in Post 1.

Danke

Gruß

Walter

Das ist richtig.
Das liegt daran, dass es keinen eigenen Kommunikationscontroller, sondern nur einen USB-Serial-wandler gibt.
Hast Du PID/VID, kannst Du dazu passend den Treiber einsetzen.
Die Unterstützung für die Auswertung, was dahinter dran steckt fehlt den Wandlern.

Hast Du einen Arduino Nac hbau, der sich an das Referenzdesign hält, wird der angezeigt, hast Du einen Nachbau mit CH340 Chip, bekommst Du auch unbekannt...