ESP CAM problem brak obrazu

Cześć,
mam następujacy moduł: ESP32-CAM - (ESP32-S i kamera OV2640 o rozdzielczości 2 Mpx)

mój plik YAML:

esphome:
  name: cam-1

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "Vt3Jj9STTKZ5eKBoOfw08Ppvs+4RSwVL6yE0Ye5jJwE="

ota:
  password: "af31eb20fdf18dafd0e6e35338f8eb9a"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  fast_connect: True

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Cam-1 Fallback Hotspot"
    password: "xtjTWzgNBCAN"

  # Example configuration entry
esp32_camera:
  external_clock:
    pin: GPIO0
    frequency: 20MHz
  i2c_pins:
    sda: GPIO26
    scl: GPIO27
  data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35]
  vsync_pin: GPIO25
  href_pin: GPIO23
  pixel_clock_pin: GPIO22
  power_down_pin: GPIO32

  name: kamerka
  # ... Frame Settings

# Flashlight
output:
  - platform: gpio
    pin: GPIO4
    id: gpio_4
light:
  - platform: binary
    output: gpio_4
    name: $hostname light 

Plik załadował się poprawnie. Nie było błędów.

LOG:

INFO Starting log output from cam-1.local using esphome API
INFO Successfully connected to cam-1.local
[21:25:59][I][app:102]: ESPHome version 2022.12.8 compiled on Feb 14 2023, 20:57:17
[21:25:59][C][wifi:504]: WiFi:
[21:25:59][C][wifi:362]:   Local MAC: 40:22:D8:F0:CF:1C
[21:25:59][C][wifi:363]:   SSID: [redacted]
[21:25:59][C][wifi:364]:   IP Address: 192.168.0.231
[21:25:59][C][wifi:366]:   BSSID: [redacted]
[21:25:59][C][wifi:367]:   Hostname: 'cam-1'
[21:26:00][C][wifi:369]:   Signal strength: -59 dB ▂▄▆█
[21:26:00][C][wifi:373]:   Channel: 3
[21:26:00][C][wifi:374]:   Subnet: 255.255.255.0
[21:26:00][C][wifi:375]:   Gateway: 192.168.0.1
[21:26:00][C][wifi:376]:   DNS1: 192.168.0.1
[21:26:00][C][wifi:377]:   DNS2: 0.0.0.0
[21:26:00][C][logger:293]: Logger:
[21:26:00][C][logger:294]:   Level: DEBUG
[21:26:00][C][logger:295]:   Log Baud Rate: 115200
[21:26:00][C][logger:296]:   Hardware UART: UART0
[21:26:00][C][gpio.output:010]: GPIO Binary Output:
[21:26:00][C][gpio.output:011]:   Pin: GPIO4
[21:26:00][C][light:104]: Light '$hostname light'
[21:26:00][C][esp32_camera:048]: ESP32 Camera:
[21:26:00][C][esp32_camera:049]:   Name: kamerka
[21:26:00][C][esp32_camera:050]:   Internal: NO
[21:26:00][C][esp32_camera:052]:   Data Pins: D0:5 D1:18 D2:19 D3:21 D4:36 D5:39 D6:34 D7:35
[21:26:00][C][esp32_camera:053]:   VSYNC Pin: 25
[21:26:00][C][esp32_camera:054]:   HREF Pin: 23
[21:26:00][C][esp32_camera:055]:   Pixel Clock Pin: 22
[21:26:00][C][esp32_camera:056]:   External Clock: Pin:0 Frequency:20000000
[21:26:00][C][esp32_camera:060]:   I2C Pins: SDA:26 SCL:27
[21:26:00][C][esp32_camera:062]:   Reset Pin: -1
[21:26:00][C][esp32_camera:080]:   Resolution: 640x480 (VGA)
**[21:26:00][E][esp32_camera:099]:   Setup Failed: ESP_FAIL**
[21:26:00][C][psram:020]: PSRAM:
[21:26:00][C][psram:021]:   Available: NO
[21:26:00][C][mdns:103]: mDNS:
[21:26:00][C][mdns:104]:   Hostname: cam-1
[21:26:00][C][ota:093]: Over-The-Air Updates:
[21:26:00][C][ota:094]:   Address: cam-1.local:3232
[21:26:00][C][ota:097]:   Using Password.
[21:26:00][C][api:138]: API Server: 

w logu jedyna linijka, która pokazała się na czerwono to:
[21:26:00][E][esp32_camera:099]: Setup Failed: ESP_FAIL

Nic mi to nie mówi.
W integracjach płytka jest widoczna. ma 3 encje:
$hostname light - działa - pozwala włączyć i wyłączyć diodę
kamerka - bezczynność
i aktualizacja firmware.

Podpowie mi ktoś co robię nie tak, że kamerka nie pokazuje obrazu?

Co to za moduł? (wrzuć jego zdjęcia może ktoś rozpozna)

  1. spróbuj z rozdzielczością 160x120 bo bez PSRAM to vga raczej nie poleci, potem (jeśli zadziała) możesz próbować zwiększać rozdzielczość o jedno oczko
  2. jesteś pewien, że GPIO się zgadzają ze sprzętem? - konfigurację masz dla Ai-Thinker
  3. zasilacz jest odpowiedni?
  4. dopatrzyłem się błędnej deklaracji płytki- na moje oko powinna być taka (przecież to nie jest ESP32dev board)
esp32:
  board: esp32cam
  framework:
    type: arduino

edit: to jednak raczej nie ma wpływu, ale nie wiem czemu PSRAM masz niewykryty, może płytka jest wadliwa

PS te 3 odwrotne apostrofy mają być w osobnych linijkach, w przeciwnym razie część posta/kodu będzie rozwalona

Dzięki za pomoc i wskazówkę z apostrofami.
tak więc po kolei:
zdjęcia:



Ad1. spróbowałem i nie działa.
Ad2. przeprowadziłem jeszcze całą procedurę flashowania z pierwszym przykładem z oficjalnej strony https://esphome.io/components/esp32_camera.html - nadal bez rezultatu. W logach nic się nie zmieniło w stosunku do poprzedniego, który wysłałem.
Ad3. Zasilacz sprawdzony, nie ma spadków napięcia przy podłączeniu płytki. (to stary transformatorowy zasilacz ze stabilizacją i wygładzaniem, ma obciążalność ok. 5A)
Ad4. Deklaracja chyba nie ma znaczenia. Próbowałem obu wersji.

I jeszcze jedno - encja kamery nie jest “NIEDOSTĘPNY” tylko “BEZCZYNNOŚĆ”

Ad Ad1. tzn. czego zmiany? rozdzielczości? (jeśli pomijasz opcjonalne opcje konfiguracyjne to wszystko idzie na defaultach, czyli np. jest to odpowiednik resolution: 640x480) to w sumie ważne, żebyś nie dorzucał do kodu niczego “od siebie” (w sensie innych integracji), bo obsługa kamerki jest bardzo zasobożerna.

Ad Ad2. zakładamy sobie, że to ścisły klon Ai-Thinker (na to wskazują foty, ale tak być nie musi, a jeśli nie jest to 1:1 z Ai-Thinker, to jest potrzebna dokumentacja producenta - to trochę czarnowidztwo, po zdjęciach wydaje się być to klon prawie idealny, no podzespoły są inne w tym PSRAM, ale mimo wszystko powinno to działać na tym konfigu)

Ad Ad3. Parametry w porządku (o ile to 5V), ale mierzyłeś na PCB napięcie na pinie 5V i na pinie 3.3V?

Ad Ad4. Deklaracja nie ma znaczenia - sprawdziłem to w źródłach (chociaż warto byłoby zaktualizować źródła choćby o pasujące aliasy…)

A teraz nowa numeracja :stuck_out_tongue:

  1. Wygląda łudząco podobnie do Ai-Thinker, ale nim raczej nie jest (brak ich logo pod napisem ESP-32S), to naprawdę twoje zdjęcia “z natury” czy skopiowane ze sklepu? mają być prawdziwe zdjęcia modułu, który masz w ręce, one się różnią czasem drobnymi szczególikami.

  2. Ten scalaczek z oznaczeniami 6404L-3SOR to jest właśnie PSRAM, póki go ESPHome nie wykryje to nie ma żadnych szans na większe rozdzielczości (możesz spróbować rozdzielczość oczko wyżej, ale jestem pewien, że rozdzielczości vga=640x480 taka ilość RAM jaka jest w samym MCU nie jest w stanie uciągnąć - pewnie można gdzieś w sieci wyczytać dane techniczne tej kamery i rozdzielczości w których może pracować i wtedy wybierz najmniejszą która jest we wspólnym podzbiorze tego co obsługuje kamera i ESPHome).
    Brak jego (PSRAM) detekcji sugeruje, że albo jest radykalny problem z zasilaniem, albo że moduł jest uszkodzony,

  3. Zasilanie to oczywiście zmierzone stabilne 5V? i podpinasz je między piny 5V a GND (te 2 w górnym lewym rogu zdjęcia na którym obiektyw “patrzy na nas”)?
    Bo w sumie takie problemy mogą wynikać z próby zasilania płytki napięciem 3,3V

  4. Piszesz o encjach, ale tu jest problem ze sprzętem, encje w ESPHome można wygenerować czasem nie mając nawet sprzętu… więc teraz musisz poeksperymentować.

Po pierwsze sprawdź zasilanie i zmierz napięcia na pinach (zarówno 5V z zasilacza jak i 3.3V - to niższe jest generowane przez stabilizator zamontowany na PCB).
Jeśli oba są OK to sprawdź jeszcze raz podpinając zasilanie (a nie przez włączanie wyłączanie zasilacza z sieci - chcemy wyeliminować stany przejściowe w trakcie jego rozruchu), jeśli to nie pomaga to do następnego kroku.

Po drugie (oczywiście przy odłączonym zasilaniu) odepnij kamerkę ze złącza (mam nadzieję, że umiesz je otworzyć, takie jak na zdjęciu otwiera się przesuwając czarny/ciemny element w płaszczyźnie taśmy odsuwając go od złącza “w kierunku kamerki”).

Uruchom sprzęt bez kamerki i ustal czy to generuje dokładnie te same błędy.
Jeśli tak, to przetrzyj spirytusem/IPA końcówkę taśmy kamery tą z kontaktami, obejrzyj pod lupą czy nie ma zabrudzeń/uszkodzeń i podepnij (bez zasilania) taśmę do złącza starając się zapewnić możliwie najlepszy kontakt - musi być wsunięta możliwie głęboko i dopiero w takim położeniu zabezpieczona ciemną wsuwką (zdjęcie prezentuje raczej prawidłowe podpięcie).

PS przy próbie głębszej analizy zdjęć (widać uszkodzenia na PCB w miejscu, które może być krytyczne dla poprawnego działania, bo oprócz tych uszkodzeń widać sporo innych w miejscach moim zdaniem zupełnie nieistotnych)

ustaliłem przypadkiem, że pochodzą one najprawdopodobniej stamtąd…

więc zrób jednak własne…

Zdjęcia mojego modułu:


Zasilanie jest stabilne: 5,05V i 3,305V sprawdzałem tak jak sugerujesz. Nie ma spadku przy podłączeniu płytki.

Po wypięciu kamery z ESP te same błędy:

[13:38:38][C][esp32_camera:071]:   Resolution: 160x120
[13:38:38][E][esp32_camera:099]:   Setup Failed: ESP_ERR_NOT_FOUND
[13:38:38][C][psram:020]: PSRAM:
[13:38:38][C][psram:021]:   Available: NO

Po wyczyszczeniu złącza izopropanolem i złożeniu ponownie ten sam objaw.

Pewnie będę reklamował płytkę skoro nie wykrywa tego PSRAMu

No cóż jeśli masz taką możliwość zrób to, bez PSRAM moduł można uznać za bezużyteczny do stosowania z kamerą. (pomijam kwestię, że wydaje się być uszkodzony nieco poważniej, bo kamery też nie rozpoznaje)
Na PCB nie widać uszkodzeń, więc prawdopodobnie moduł jest wadliwy fabrycznie.

Przydałby się jakiś feedback, od innych osób używających identycznego klona z twoim. (Wydaje mi się, że IPUS się zawinął z rynku i wszyscy przeszli na kości innych producentów jak np. AP Memory, więc to nie powinien być problem).

U siebie mam Ai-Thinker (z dawnych wypustów), skompilowałem dla pewności w najnowszym ESPHome (aby mieć pewność, że nic nie zostało spaprane w imię rozwoju) edit: jednak już nie najnowszym.

log z kompilacji w ESPHome 2022.12.8 i OTA (konfigurację mam minimalnie inną, ale jeśli chodzi o kamerę to identycznie, rozdzielczość mam nieco podniesioną względem “fabryki”)

HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
 - toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch3
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Dependency Graph
|-- AsyncTCP-esphome @ 1.2.2
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 2.1.0
|   |-- AsyncTCP-esphome @ 1.2.2
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- ArduinoJson @ 6.18.5
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/api_connection.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/api_frame_helper.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/api_pb2.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/api_pb2_service.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/api_server.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/list_entities.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/proto.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/subscribe_state.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/api/user_services.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/esp32/core.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/esp32/gpio.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/esp32/preferences.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/esp32_camera/esp32_camera.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/esp32_camera_web_server/camera_web_server.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/json/json_util.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/logger/logger.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/md5/md5.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/mdns/mdns_component.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/mdns/mdns_esp32_arduino.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/mdns/mdns_esp_idf.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/mdns/mdns_rp2040.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/network/util.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/ota/ota_backend_arduino_rp2040.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/ota/ota_component.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/psram/psram.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/restart/switch/restart_switch.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/sensor/automation.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/sensor/filter.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/sensor/sensor.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/socket/bsd_sockets_impl.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/socket/socket.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/switch/automation.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/switch/switch.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/uptime/uptime_sensor.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/web_server/list_entities.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/web_server/web_server.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/web_server_base/web_server_base.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/wifi/wifi_component.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/wifi/wifi_component_esp32_arduino.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/wifi/wifi_component_esp8266.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/wifi/wifi_component_esp_idf.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/wifi/wifi_component_pico_w.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/components/wifi_signal/wifi_signal_sensor.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/application.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/color.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/component.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/component_iterator.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/controller.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/entity_base.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/helpers.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/log.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/scheduler.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/esphome/core/util.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/src/main.cpp.o
Building /data/esp_cam2/.pioenvs/esp_cam2/bootloader.bin
Creating esp32 image...
Successfully created esp32 image.
Generating partitions /data/esp_cam2/.pioenvs/esp_cam2/partitions.bin
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libe0d/AsyncTCP-esphome/AsyncTCP.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFi.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiAP.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiClient.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiGeneric.cpp.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/libe0d/libAsyncTCP-esphome.a
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiMulti.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiSTA.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiScan.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiServer.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib64d/WiFi/WiFiUdp.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib01c/FS/FS.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib01c/FS/vfs_api.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libbc6/Update/HttpsOTAUpdate.cpp.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/lib64d/libWiFi.a
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libbc6/Update/Updater.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libfd4/ESPAsyncWebServer-esphome/AsyncEventSource.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libfd4/ESPAsyncWebServer-esphome/AsyncWebSocket.cpp.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/lib01c/libFS.a
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libfd4/ESPAsyncWebServer-esphome/WebAuthentication.cpp.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/libbc6/libUpdate.a
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libfd4/ESPAsyncWebServer-esphome/WebHandlers.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libfd4/ESPAsyncWebServer-esphome/WebRequest.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libfd4/ESPAsyncWebServer-esphome/WebResponses.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/libfd4/ESPAsyncWebServer-esphome/WebServer.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib333/DNSServer/DNSServer.cpp.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/lib333/libDNSServer.a
Compiling /data/esp_cam2/.pioenvs/esp_cam2/lib915/ESPmDNS/ESPmDNS.cpp.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/libfd4/libESPAsyncWebServer-esphome.a
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/Esp.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/FirmwareMSC.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/FunctionalInterrupt.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/HWCDC.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/HardwareSerial.cpp.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/lib915/libESPmDNS.a
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/IPAddress.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/IPv6Address.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/MD5Builder.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/Print.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/Stream.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/StreamString.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/Tone.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/USB.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/USBCDC.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/USBMSC.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/WMath.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/WString.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/base64.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/cbuf.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-adc.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-bt.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-cpu.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-dac.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-gpio.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-i2c-slave.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-i2c.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-ledc.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-matrix.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-misc.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-psram.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-rgb-led.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-rmt.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-sigmadelta.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-spi.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-time.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-timer.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-tinyusb.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-touch.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/esp32-hal-uart.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/firmware_msc_fat.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/libb64/cdecode.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/libb64/cencode.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/main.cpp.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/stdlib_noniso.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/wiring_pulse.c.o
Compiling /data/esp_cam2/.pioenvs/esp_cam2/FrameworkArduino/wiring_shift.c.o
Archiving /data/esp_cam2/.pioenvs/esp_cam2/libFrameworkArduino.a
Linking /data/esp_cam2/.pioenvs/esp_cam2/firmware.elf
RAM:   [=         ]  13.8% (used 45316 bytes from 327680 bytes)
Flash: [=====     ]  53.5% (used 982641 bytes from 1835008 bytes)
Building /data/esp_cam2/.pioenvs/esp_cam2/firmware.bin
Creating esp32 image...
Successfully created esp32 image.
esp32_create_combined_bin(["/data/esp_cam2/.pioenvs/esp_cam2/firmware.bin"], ["/data/esp_cam2/.pioenvs/esp_cam2/firmware.elf"])
Wrote 0x101500 bytes to file /data/esp_cam2/.pioenvs/esp_cam2/firmware-factory.bin, ready to flash to offset 0x0
======================== [SUCCESS] Took 104.29 seconds ========================
INFO Successfully compiled program.
INFO Resolving IP address of esp_cam2.local
INFO  -> 192.168.20.37
INFO Uploading /data/esp_cam2/.pioenvs/esp_cam2/firmware.bin (988416 bytes)
Uploading: [============================================================] 100% Done...


INFO Waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from esp_cam2.local using esphome API
INFO Successfully connected to esp_cam2.local

log z pracy po OTA (u siebie mam niezalecane “_”=uderscore=“podłogę” w nazwie, ale w mojej sieci to działa, zalecany jest jednak zwykły minus)

[14:20:13][I][app:102]: ESPHome version 2022.12.8 compiled on Feb 15 2023, 14:18:42
[14:20:13][C][wifi:504]: WiFi:
[14:20:13][C][wifi:362]:   Local MAC: 84:0D:8E:D0:A7:08
[14:20:13][C][wifi:363]:   SSID: [redacted]
[14:20:13][C][wifi:364]:   IP Address: 192.168.20.37
[14:20:13][C][wifi:366]:   BSSID: [redacted]
[14:20:13][C][wifi:367]:   Hostname: 'esp_cam2'
[14:20:13][C][wifi:369]:   Signal strength: -58 dB ▂▄▆█
[14:20:13][C][wifi:373]:   Channel: 1
[14:20:13][C][wifi:374]:   Subnet: 255.255.255.0
[14:20:13][C][wifi:375]:   Gateway: 192.168.20.1
[14:20:13][C][wifi:376]:   DNS1: 192.168.20.1
[14:20:13][C][wifi:377]:   DNS2: 0.0.0.0
[14:20:13][C][logger:293]: Logger:
[14:20:13][C][logger:294]:   Level: DEBUG
[14:20:13][C][logger:295]:   Log Baud Rate: 115200
[14:20:13][C][logger:296]:   Hardware UART: UART0
[14:20:13][C][uptime.sensor:031]: Uptime Sensor 'Uptime ESP-CAM2'
[14:20:13][C][uptime.sensor:031]:   Device Class: 'duration'
[14:20:13][C][uptime.sensor:031]:   State Class: 'total_increasing'
[14:20:13][C][uptime.sensor:031]:   Unit of Measurement: 's'
[14:20:13][C][uptime.sensor:031]:   Accuracy Decimals: 0
[14:20:13][C][uptime.sensor:031]:   Icon: 'mdi:timer-outline'
[14:20:13][C][restart:076]: Restart Switch 'ESP-CAM2 Restart'
[14:20:13][C][restart:078]:   Icon: 'mdi:restart'
[14:20:13][C][restart:099]:   Restore Mode: restore defaults to OFF
[14:20:13][C][esp32_camera:048]: ESP32 Camera:
[14:20:13][C][esp32_camera:049]:   Name: Kamerka 2
[14:20:13][C][esp32_camera:050]:   Internal: NO
[14:20:13][C][esp32_camera:052]:   Data Pins: D0:5 D1:18 D2:19 D3:21 D4:36 D5:39 D6:34 D7:35
[14:20:13][C][esp32_camera:053]:   VSYNC Pin: 25
[14:20:13][C][esp32_camera:054]:   HREF Pin: 23
[14:20:13][C][esp32_camera:055]:   Pixel Clock Pin: 22
[14:20:13][C][esp32_camera:056]:   External Clock: Pin:0 Frequency:20000000
[14:20:13][C][esp32_camera:060]:   I2C Pins: SDA:26 SCL:27
[14:20:13][C][esp32_camera:062]:   Reset Pin: -1
[14:20:13][C][esp32_camera:083]:   Resolution: 800x600 (SVGA)
[14:20:13][C][esp32_camera:105]:   JPEG Quality: 10
[14:20:13][C][esp32_camera:107]:   Contrast: 0
[14:20:13][C][esp32_camera:108]:   Brightness: 0
[14:20:13][C][esp32_camera:109]:   Saturation: 0
[14:20:13][C][esp32_camera:110]:   Vertical Flip: ON
[14:20:13][C][esp32_camera:111]:   Horizontal Mirror: ON
[14:20:13][C][esp32_camera:112]:   Special Effect: 0
[14:20:13][C][esp32_camera:113]:   White Balance Mode: 0
[14:20:13][C][esp32_camera:116]:   Auto Exposure Control: 1
[14:20:13][C][esp32_camera:117]:   Auto Exposure Control 2: 0
[14:20:13][C][esp32_camera:118]:   Auto Exposure Level: 0
[14:20:13][C][esp32_camera:119]:   Auto Exposure Value: 300
[14:20:13][C][esp32_camera:120]:   AGC: 1
[14:20:13][C][esp32_camera:121]:   AGC Gain: 0
[14:20:13][C][esp32_camera:122]:   Gain Ceiling: 0
[14:20:13][C][esp32_camera:128]:   Test Pattern: NO
[14:20:13][C][psram:020]: PSRAM:
[14:20:13][C][psram:021]:   Available: YES
[14:20:13][C][psram:024]:   Size: 3 MB
[14:20:13][C][captive_portal:088]: Captive Portal:
[14:20:13][C][web_server:125]: Web Server:
[14:20:13][C][web_server:126]:   Address: esp_cam2.local:80
[14:20:13][C][mdns:103]: mDNS:
[14:20:13][C][mdns:104]:   Hostname: esp_cam2
[14:20:13][C][ota:093]: Over-The-Air Updates:
[14:20:13][C][ota:094]:   Address: esp_cam2.local:3232
[14:20:13][C][api:138]: API Server:
[14:20:13][C][api:139]:   Address: esp_cam2.local:6053
[14:20:13][C][api:143]:   Using noise encryption: NO
[14:20:13][C][wifi_signal.sensor:009]: WiFi Signal 'WiFi Signal ESP-CAM2'
[14:20:13][C][wifi_signal.sensor:009]:   Device Class: 'signal_strength'
[14:20:13][C][wifi_signal.sensor:009]:   State Class: 'measurement'
[14:20:13][C][wifi_signal.sensor:009]:   Unit of Measurement: 'dBm'
[14:20:13][C][wifi_signal.sensor:009]:   Accuracy Decimals: 0
[14:20:14][C][esp32_camera_web_server:088]: ESP32 Camera Web Server:
[14:20:14][C][esp32_camera_web_server:089]:   Port: 8080
[14:20:14][C][esp32_camera_web_server:091]:   Mode: stream
[14:20:14][C][esp32_camera_web_server:088]: ESP32 Camera Web Server:
[14:20:14][C][esp32_camera_web_server:089]:   Port: 8081
[14:20:14][C][esp32_camera_web_server:093]:   Mode: snapshot
[14:20:22][D][esp32_camera:172]: Got Image: len=24412
[14:20:32][D][esp32_camera:172]: Got Image: len=24233
[14:20:42][D][esp32_camera:172]: Got Image: len=24212
[14:20:46][D][sensor:127]: 'Uptime ESP-CAM2': Sending state 43.36000 s with 0 decimals of accuracy
[14:20:52][D][esp32_camera:172]: Got Image: len=24081
[14:21:02][D][esp32_camera:172]: Got Image: len=23929
[14:21:05][D][sensor:127]: 'WiFi Signal ESP-CAM2': Sending state -58.00000 dBm with 0 decimals of accuracy
[14:21:12][D][esp32_camera:172]: Got Image: len=23873
[14:21:22][D][esp32_camera:172]: Got Image: len=23623
[14:21:32][D][esp32_camera:172]: Got Image: len=23477
[14:21:42][D][esp32_camera:172]: Got Image: len=23284

UWAGA cofnij sobie ESPHome do grudniowej wersji, bo w 2023.2.0 jest coś zwalone!
alarm odwołany - namieszałem w swojej konfiguracji próbując zreplikować problem :stuck_out_tongue:
Jednak faktem jest, że dokumentacja ma jakieś wady i nie odpowiada aktualnym możliwościom softu…

Co się okazało. Skontaktowałem się ze sklepem, gdzie kupiłem ten moduł https://msalamon.pl/ (nazwa podana za zgodą sprzedającego - jeśli przekroczyłem regulamin to proszę usunąć link). Okazuje się, że jedna cała partia jest wadliwa. Właściciel sklepu rozlutował moduł i okazuje się, że w ogóle nie mają pinów PSRAM pod spodem. Dostałem nawet zdjęcie jak to wygląda.


Jutro zostanie mi wysłany moduł z przetestowanej partii.
Spodobało mi się podejście sklepu do tematu.
@szopen Bardzo Ci dziękuję za poświęcony czas i próbę rozwiązania problemu.

1 polubienie

No muszę przyznać, że dość niespotykane w dzisiejszych czasach…

Swoją drogą niepokojący jest fakt istnienia wersji modułu ESP32-S z niewyprowadzonymi istotnymi pinami

źródło obrazka

Podłączyłem kamerkę ESP-32 CAM, wgrałem ESPHome, stworzyłem yaml zgodnie z esphome.io i bardzo żadko pojawia mi się obraz w homeassistant mam cały czas “bezczynność” i brak podglądu, podgląd wskoczy raz na 2-3 minuty dosłownie na kilka sekund.
Poniżej log do diagnozy i mój yaml

INFO Reading configuration /config/esphome/esphome-web-748f74.yaml...
WARNING GPIO0 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
WARNING GPIO4 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Starting log output from esphome-web-748f74.local using esphome API
INFO Successfully connected to esphome-web-748f74.local
[09:36:31][I][app:102]: ESPHome version 2023.3.2 compiled on Apr  4 2023, 09:07:47
[09:36:31][C][wifi:504]: WiFi:
[09:36:31][C][wifi:362]:   Local MAC: E0:5A:1B:74:8F:74
[09:36:31][C][wifi:363]:   SSID: [redacted]
[09:36:31][C][wifi:364]:   IP Address: 192.168.1.150
[09:36:31][C][wifi:366]:   BSSID: [redacted]
[09:36:31][C][wifi:367]:   Hostname: 'esphome-web-748f74'
[09:36:31][C][wifi:369]:   Signal strength: -65 dB ▂▄▆█
[09:36:31][C][wifi:373]:   Channel: 2
[09:36:31][C][wifi:374]:   Subnet: 255.255.255.0
[09:36:31][C][wifi:375]:   Gateway: 192.168.1.1
[09:36:31][C][wifi:376]:   DNS1: 192.168.1.1
[09:36:31][C][wifi:377]:   DNS2: 0.0.0.0
[09:36:31][C][logger:293]: Logger:
[09:36:31][C][logger:294]:   Level: DEBUG
[09:36:31][C][logger:295]:   Log Baud Rate: 115200
[09:36:32][C][logger:296]:   Hardware UART: UART0
[09:36:32][D][api:102]: Accepted 192.168.1.10
[09:36:33][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:36:36][D][esp32_camera:172]: Got Image: len=31366
[09:36:43][D][esp32_camera:172]: Got Image: len=30947
[09:36:52][D][esp32_camera:172]: Got Image: len=33074
[09:36:57][D][esp32_camera:172]: Got Image: len=31208
[09:36:57][D][api:102]: Accepted 192.168.1.10
[09:36:58][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:37:00][D][esp32_camera:172]: Got Image: len=33944
[09:37:06][D][esp32_camera:172]: Got Image: len=32348
[09:37:14][D][esp32_camera:172]: Got Image: len=32350
[09:37:28][D][esp32_camera:172]: Got Image: len=31241
[09:37:39][D][esp32_camera:172]: Got Image: len=31417
[09:37:40][D][api:102]: Accepted 192.168.1.10
[09:37:41][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:37:46][D][esp32_camera:172]: Got Image: len=34892
[09:37:56][D][esp32_camera:172]: Got Image: len=33252
[09:38:06][D][esp32_camera:172]: Got Image: len=37098
[09:38:06][D][api:102]: Accepted 192.168.1.10
[09:38:06][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:38:06][D][esp32_camera:172]: Got Image: len=31350
[09:38:10][D][esp32_camera:172]: Got Image: len=31380
[09:38:18][D][esp32_camera:172]: Got Image: len=31434
[09:38:26][D][esp32_camera:172]: Got Image: len=32840
[09:38:39][D][esp32_camera:172]: Got Image: len=31538
[09:38:49][D][esp32_camera:172]: Got Image: len=31559
[09:38:49][D][esp32_camera:172]: Got Image: len=36397
[09:38:50][D][api:102]: Accepted 192.168.1.10
[09:38:51][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:38:57][D][esp32_camera:172]: Got Image: len=31564
[09:39:17][D][esp32_camera:172]: Got Image: len=28825
[09:39:21][D][esp32_camera:172]: Got Image: len=29025
[09:39:21][D][api:102]: Accepted 192.168.1.10
[09:39:21][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:39:27][D][esp32_camera:172]: Got Image: len=28804
[09:39:36][D][esp32_camera:172]: Got Image: len=28929
[09:39:44][D][esp32_camera:172]: Got Image: len=28863
[09:39:52][D][esp32_camera:172]: Got Image: len=29020
[09:39:52][D][api:102]: Accepted 192.168.1.10
[09:39:52][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:39:57][D][esp32_camera:172]: Got Image: len=29016
[09:40:10][D][esp32_camera:172]: Got Image: len=28933
[09:40:13][D][esp32_camera:172]: Got Image: len=29345
[09:40:17][D][api:102]: Accepted 192.168.1.10
[09:40:18][D][esp32_camera:172]: Got Image: len=30173
[09:40:20][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:40:21][D][esp32_camera:172]: Got Image: len=28924
[09:40:27][D][esp32_camera:172]: Got Image: len=29135
[09:40:32][D][esp32_camera:172]: Got Image: len=29047
[09:40:39][D][esp32_camera:172]: Got Image: len=29066
[09:40:40][D][api:102]: Accepted 192.168.1.10
[09:40:41][D][api.connection:920]: Home Assistant 2023.3.6 (192.168.1.10): Connected successfully
[09:40:42][D][esp32_camera:172]: Got Image: len=31931
[09:40:47][D][esp32_camera:172]: Got Image: len=29313
[09:40:55][D][esp32_camera:172]: Got Image: len=29323


esphome:
  name: esphome-web-748f74
  friendly_name: Test_Karmnik

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "xxxxxxxxxx/xxxx="

ota:


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Esphome-Web-748F74"
    password: "xxxxxxxxxxxx"

captive_portal:
web_server:
  port: 80

# ESP32-CAM
esp32_camera:
  external_clock:
    pin: GPIO0
    frequency: 20MHz
  i2c_pins:
    sda: GPIO26
    scl: GPIO27
  data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35]
  vsync_pin: GPIO25
  href_pin: GPIO23
  pixel_clock_pin: GPIO22
  power_down_pin: GPIO32
  resolution: 1024x768

  name: Test_Karmnik
  # ... Frame Settings

# Flashlight
output:
  - platform: gpio
    pin: GPIO4
    id: gpio_4
light:
  - platform: binary
    output: gpio_4
    name: Test_Karmnik light

Sprawa jest o tyle dziwna że dwie identyczne Kamerki działają dobrze.
Dziekuję za pomoc.

@zbyszekm
Prowizorycznie(?) przeniosłem posta tutaj, bo bardziej pasuje, chociaż opisany problem jest inny.

Masz problemy z połączeniem API z HA, dlaczego - nie wiem, ale usuń z integracji to urządzenie, zrestartuj HA i dodaj ponownie, możesz ewentualnie pozbyć się szyfrowania api i wtedy spróbować (tzn. po kompilacji, usunięciu i ponownym dodaniu do Integracji).

Pozostałe kamerki są identyczne sprzętowo? Jeśli tak to podmień je miejscami instalacji (tylko strzelam, ale zakładam problemy z łącznością mimo znakomitego poziomu sygnału).

Wszystkie skompilowane na tej samej wersji ESPHome?

A na wstępie podmień im zasilacze “na krzyż”.

PS tak spojrzałem na ten “karmnik” - ta kamera pracuje na zewnątrz? od dawna? zawsze miała taki problem, czy się pojawił po jakimś czasie?
Bo tu przychodzi jedno do głowy - wilgoć.

PPS
Możesz dokompilować ten komponent

i przetestować działanie poza HA (tzn. czy stream i snapshoty są stabilne)

Dzień dobry. Podepnę się pod temat bo zamówiłem kilka elementów u Pana Chińczyka a właśnie przyleciały i miedzy innymi jest tam moduł ESP32-CAM z kamerką OV2620. Pierwsze próby podłączenia nie przyniosły rezultatu, pinologii nie mam, na stronie sprzedawcy też brak informacji. W rejestrach encji mam dwie jedna to update firmware a druga to encja kamery która jest niedostępna (czerwony wykrzyknik) a podczas kompilacji pojawia się ostrzeżenie co do pinu GPIO15 w przypadku tej podstawowej konfiguracji ze strony esphome, a gdy próbuję innej konfiguracji Ai-Thinker to GPIO0 zgłasza ten sam problem.
Foto modułów:



Moja konfiguracja

esphome:
  name: kamera
  friendly_name: Kamera

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "dmYQ2AEfy17pw7wIdRoZZYygposNDBBOJ0lOI0MHWg8="

ota:
  password: "9d3b5f7b8b6a50c2713db6b1c5cdb171"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Kamera Fallback Hotspot"
    password: "PXDKdpsqwflz"

captive_portal:
# Example configuration entry
esp32_camera:
  external_clock:
    pin: GPIO0
    frequency: 20MHz
  i2c_pins:
    sda: GPIO26
    scl: GPIO27
  data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35]
  vsync_pin: GPIO25
  href_pin: GPIO23
  pixel_clock_pin: GPIO22
  power_down_pin: GPIO32

  # Image settings
  name: Kamera-esp
  # ...

A logi? Również te zkompilacji.

Na moje oko ta konfiguracja powinna pasować pod ten sprzęt.

Ostrzeżenia nie są niczym nienormalnym są zawsze gdy jest wykorzystywany jakiś bootstrapowy pin, ale ktoś kto projektował płytkę z pewnością wziął pod uwagę to co istotne aby nie powodować konfliktu.

O ile nie trafiles wypustu z oszukanymi modulami ESP32 bez PSRAM. Ustaw najniższa rozdzielczość trefny modul wtedy ruszy, a jesli ruszy to zwiekszaj.

Mozesz się też upewnić czy kamera jest dobrze wpięta w złącze ZIF (ono się otwiera).

Logi, no jest błąd

INFO ESPHome 2023.5.5
INFO Reading configuration /config/esphome/kamera.yaml...
WARNING GPIO15 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Starting log output from 192.168.1.205 using esphome API
INFO Successfully connected to 192.168.1.205
[10:09:29][I][app:102]: ESPHome version 2023.5.5 compiled on Jun  9 2023, 10:07:43
[10:09:29][C][wifi:505]: WiFi:
[10:09:29][C][wifi:363]:   Local MAC: A8:42:E3:4A:12:D8
[10:09:29][C][wifi:364]:   SSID: [redacted]
[10:09:29][C][wifi:365]:   IP Address: 192.168.1.205
[10:09:29][C][wifi:367]:   BSSID: [redacted]
[10:09:29][C][wifi:368]:   Hostname: 'kamera'
[10:09:29][C][wifi:370]:   Signal strength: -62 dB ▂▄▆█
[10:09:29][C][wifi:374]:   Channel: 11
[10:09:29][C][wifi:375]:   Subnet: 255.255.255.0
[10:09:29][C][wifi:376]:   Gateway: 192.168.1.1
[10:09:29][C][wifi:377]:   DNS1: 0.0.0.0
[10:09:29][C][wifi:378]:   DNS2: 0.0.0.0
[10:09:29][C][logger:301]: Logger:
[10:09:29][C][logger:302]:   Level: DEBUG
[10:09:29][C][logger:303]:   Log Baud Rate: 115200
[10:09:29][C][logger:305]:   Hardware UART: UART0
[10:09:29][C][esp32_camera:048]: ESP32 Camera:
[10:09:29][C][esp32_camera:049]:   Name: My Camera
[10:09:29][C][esp32_camera:050]:   Internal: NO
[10:09:29][C][esp32_camera:052]:   Data Pins: D0:17 D1:35 D2:34 D3:5 D4:39 D5:18 D6:36 D7:19
[10:09:29][C][esp32_camera:053]:   VSYNC Pin: 22
[10:09:29][C][esp32_camera:054]:   HREF Pin: 26
[10:09:29][C][esp32_camera:055]:   Pixel Clock Pin: 21
[10:09:29][C][esp32_camera:056]:   External Clock: Pin:27 Frequency:20000000
[10:09:29][C][esp32_camera:060]:   I2C Pins: SDA:25 SCL:23
[10:09:29][C][esp32_camera:062]:   Reset Pin: 15
[10:09:29][C][esp32_camera:065]:   Resolution: 160x120 (QQVGA)
[10:09:29][E][esp32_camera:123]:   Setup Failed: ESP_ERR_NOT_FOUND
[10:09:29][C][psram:020]: PSRAM:
[10:09:29][C][psram:021]:   Available: NO
[10:09:29][C][captive_portal:088]: Captive Portal:
[10:09:29][C][mdns:108]: mDNS:
[10:09:29][C][mdns:109]:   Hostname: kamera
[10:09:29][C][ota:093]: Over-The-Air Updates:
[10:09:29][C][ota:094]:   Address: 192.168.1.205:3232
[10:09:29][C][ota:097]:   Using Password.
[10:09:29][C][api:138]: API Server:
[10:09:29][C][api:139]:   Address: 192.168.1.205:6053
[10:09:29][C][api:141]:   Using noise encryption: YES

setup failed.
kombinowałem na kilka sposobów ale nawet diody nie mogę odpalić która jest na płytce.

Masz trefny moduł - problem jest opisany w tamtym poście

Zrób tak jak mówiłem - ustaw rozdzielczość przy której obraz będzie wielkości “znaczka pocztowego”, bo w przeciwnym razie RAMu brakuje na odpalenie kamery, ale resztę zostaw jak było (teraz przedefiniowałeś piny i nie znajduje kamery, a moim zdaniem - na podstawie zdjęcia podejrzewam, że pinologię samej kamery masz zgodną z Ai-Thinker), lampka LED powinna zadziałać (fragment YAMLa skopiowałem z działającego modułu “noname”, praktycznie identycznego z twoim, poza datą produkcji, dość dobrze zgodnego klona z konstrukcją Ai-Thinker), możesz też zakomentować cały blok YAMLa powiązany z kamerą i sprawdzić działanie tylko pozostałych podzespołów.

Z loga widzę co zrobiłeś (masz inną konfigurację pinów kamery niż wczoraj), wiec użyj tej minimalnej rozdzielczości, ale wirtualnie opinając kamerę we właściwe piny na MCU

W ramach eksperymentów możesz włączyć test_pattern (to powinno zastąpić obraz z kamery “paskami łowickimi”) ale nie wiem czy implementacja jest prawidłowa, podejrzewam, że nie (teoretycznie to powinno zadziałać nawet dla uszkodzonego przetwornika, ale nie mogę sprawdzić organoleptycznie czy zadziała też dla odpiętej kamery, bo nie ma mnie w domu).

esp32_camera:
  external_clock:
    pin: GPIO0
    frequency: 20MHz
  i2c_pins:
    sda: GPIO26
    scl: GPIO27
  data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35]
  vsync_pin: GPIO25
  href_pin: GPIO23
  pixel_clock_pin: GPIO22
  power_down_pin: GPIO32
  name: Kamerka 2
#  reset_pin: GPIO15 # to jest celowo zakomentowane
  resolution: 160x120 # wypróbuj też 176x144  i 240x176 
  jpeg_quality: 6
  test_pattern: false
  vertical_flip: false
  horizontal_mirror: false

sensor:
  - platform: wifi_signal
    name: "WiFi Signal ESP-CAM2"
    update_interval: 60s
  - platform: uptime
    name: Uptime ESP-CAM2

# Flashlight
output:
  - platform: gpio
    pin: GPIO4
    id: gpio_4
light:
  - platform: binary
    output: gpio_4
    name: "ESP-CAM2 light"

Wyjaśnienie problemu - płytka kamery jest zaprojektowana prawidłowo, ba wręcz zawiera niezbędne elementy - pamięć PSRAM - obrysowałewm zieloną ramką, “trefne” moduły ESP32-S (ramka czerwona) mają niewyprowadzoną magistralę SPI (właściwie QSPI) służącą do komunikacji z zewnętrznym flashem i PSRAM - piny obrysowane na fioletowo.

Pomijając tą kwestię reszta powinna działać (sama kamera przy zredukowanej rozdzielczości też…) niestety nie pamiętam jaką minimalną rozdzielczość obsługuje przetwornik OV2640 (a kojarzy mi się, że z integracji a właściwie ze sterownika kamery usuwano niektóre najmniejsze rozdzielczości, bo są nieobsługiwane przez niektóre przetworniki, być może 160x120 jest jeszcze za duża by starczyło RAMu wbudowanego w MCU - tam jest bodajże tylko 384kB, a kostka zewnętrznego RAMu, która z braku aktywnych pinów w module nie jest podłączona do procka ma 4MB…).
Oczywiście biorąc pod uwagę ograniczoną ilość RAM powinieneś zredukować użycie wszelkich zasobożernych komponentów (jeśli masz zdefiniowany np. web_server to go wyłącz!

Opieram się w tej diagnozie na logu, który dostarczyłeś, jeśli masz analizator stanów logicznych możesz podpiąć jego sondy do tych pinów w fioletowej ramce (tam powinna być komunikacja z pamięcią PSRAM, cisza świadczy na 100% o trefnym module), możesz też porównać swoją płytkę ze zdjęciami tej trefnej.
Od biedy możesz sprawdzić obecność jakiegokolwiek napięcia woltomierzem.

Niestety nic z tego kamerka nie wykazuje żadnych chęci współpracy nawet leda nie można zaświecić.

LED nie ma nic wspólnego z kamerą, dla pewności możesz zakomentować lub wywalić cały YAML odpowiedzialny za kamerę, możesz ja wręcz fizycznie zdemontować - otwierasz ZIF i niemal sama odpadnie.
Natomiast można od biedy założyć, że LED jest na innym GPIO wątpię szczerzę ale jednak możesz to sprawdzić - metody są 2

  1. Na palę podmieniasz GPIO sterujące i kompilujesz aż nadzielisz (lub alternatywnie tworzysz tyle konfiguracji w jednym pliku ile uważasz za stosowne), odłącz kamerkę
    lub
  2. Mając sprzęt w rękach możesz prześledzić przebieg ścieżki i na podstawie zdjęć choćby w poście opisującym trefny moduł możesz ustalić najprawdopodobniejsze GPIO nawet jeśli nie do końca widać dobrze (wtedy masz mniej prób do wykonania).

O ile bez PSRAM nie widzę sensu stosowania kamery, to od biedy można użyć tą płytkę do dowolnych innych zastosowań np. Bluetooth proxy.

PS tak mi jeszcze do głowy przyszło stosujesz do tego solidny zasilacz 5V? Myślę że bezpiecznym minimum jest 1A obciążalności, w każdym razie przy braku stabilnego zasilania tego rodzaju płytki kamer nie działają stabilnie.

Schemat płytki Ai-Thinker/seedstudio w wersji 1.6 masz tu, możesz spróbować choćby częściowo weryfikować pinout na jego podstawie

Zasilanie mam 5V 2A dosyć stabilne, leda sprawdzę za jakiś czas, ale mam wrażenie że że tu jest problem z pinami bo płytka kamery nie daje żadnych oznak życia.

Jak to nie daje, przecież wrzuciłeś wyżej loga i widać w nim, że działa przynajmniej jakaś “baza” - działa WIFI i firmware połączyło się z HA (tyle widać z loga, jeśli dołożysz jakieś sensory, celowo jakiś pozostawiłem w YAMLu to zobaczysz czy ESP działa stabilnie).

Moduł przetwornika (kamera) jako taka nie daje “oznak życia” (w taki sposób, aby to było jakoś szczególnie widoczne w ESPHome, może widać coś więcej przy wyższym poziomie logowania, ale w domu będę za parę dni, a nie chcę nic obiecywać, bo wolnego czasu mam wcale nie za dużo), trzeba podpiąć dobrze. Możesz poeksperymentować z jakimiś archaicznymi wersjami komponentu kamery (myślę że cofając się jakieś 2 lata wstecz będzie użyta stara wersja sterownika).

W logach o ile mnie pamięć nie myli nie ma jakichś spektakularnych efektów działania kamery (coś tam będzie, ale wtedy zapewne zobaczysz też obrazek), kluczowy dla problemu jest brak PSRAM, choć jak widać kość jest wlutowana, stąd podejrzenie trefnego modułu ESP32-S, mimo tego, że “dotykałem” kilku różnych wypustów chińskich rączek to akurat trafiłem na wszystkie działające, choć jedne były stabilnie działające, a inne niestabilnie, co ciekawsze każdy klon był zgodny pin w pin z Ai-Thinker).

Moim zdaniem gra świeczki nie warta, sam moduł kamery (przetwornik z obiektywem) jest prawdopodobnie sprawny, ale do sprawdzenia potrzebujesz działającej płytki ESP32CAM (wszystkie kamerki dedykowane dla ESP jakie miałem w ręce miały też wzajemnie zgodne złącze ZIF, uwaga - ono nie pasuje do RPi zero i pochodnych).

W YAMLu który wrzuciłem jest błąd (literówka), powinno być

  jpeg_quality: 63

to ustawienie oszczędza RAM (bo ta rodzina przetworników potrafi wewnętrznie skompresować obraz do JPEGa, a to jest najgorsza jakość = najmniejszy plik (= wykorzystany obszar pamięci).

Jeśli kupowałeś na Ali to dispute sugeruję…

No teraz to nie wiem jak to działa w poprzednich logach PSRAM był nieaktywny, więc odpuściłem temat ale pozostawiłem kamerkę podpiętą, poprostu zapomniałem jej odłączyć. no i stała tak włączona kilka dni, później próbowałem odpalić leda na płytce, w końcu zaświecił ten na pinie 4 i na pinie 33 też, to było wczoraj, dzisiaj ładuje ustawienia AI Thinker i cudem kamera wysyła obraz nawet PSRAM jest aktywny, jak narazie obraz jest dobrej jakości tylko przypomina to bardziej robienie zdjęć co 10 sekund.
oto mój pełny log:

INFO ESPHome 2023.5.5
INFO Reading configuration /config/esphome/kamerka-test.yaml...
WARNING GPIO0 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
WARNING GPIO4 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Generating C++ source...
INFO Compiling app...
Processing kamerka-test (board: esp32dev; framework: arduino; platform: platformio/espressif32@5.3.0)
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
 - toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Dependency Graph
|-- AsyncTCP-esphome @ 1.2.2
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 2.1.0
|   |-- AsyncTCP-esphome @ 1.2.2
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- noise-c @ 0.1.4
|   |-- libsodium @ 1.10018.1
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/api_connection.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/api_frame_helper.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/api_pb2.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/api_pb2_service.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/api_server.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/list_entities.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/proto.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/subscribe_state.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/api/user_services.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/esp32/core.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/esp32/gpio.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/esp32/preferences.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/esp32_camera/esp32_camera.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/gpio/output/gpio_binary_output.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/addressable_light.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/automation.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/esp_color_correction.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/esp_hsv_color.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/esp_range_view.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/light_call.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/light_json_schema.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/light_output.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/light/light_state.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/logger/logger.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/md5/md5.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/mdns/mdns_component.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/mdns/mdns_esp32.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/mdns/mdns_host.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/mdns/mdns_rp2040.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/network/util.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/ota/ota_backend_arduino_rp2040.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/ota/ota_component.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/output/automation.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/output/float_output.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/psram/psram.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/socket/bsd_sockets_impl.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/socket/socket.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/web_server_base/web_server_base.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/wifi/wifi_component.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/wifi/wifi_component_esp32_arduino.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/wifi/wifi_component_esp8266.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/wifi/wifi_component_esp_idf.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/components/wifi/wifi_component_pico_w.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/application.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/color.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/component.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/component_iterator.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/controller.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/entity_base.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/helpers.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/log.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/scheduler.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/string_ref.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/esphome/core/util.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/src/main.cpp.o
Building /data/kamerka-test/.pioenvs/kamerka-test/bootloader.bin
Generating partitions /data/kamerka-test/.pioenvs/kamerka-test/partitions.bin
Creating esp32 image...
Successfully created esp32 image.
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib306/AsyncTCP-esphome/AsyncTCP.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFi.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiAP.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiClient.cpp.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib306/libAsyncTCP-esphome.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiGeneric.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiMulti.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiSTA.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiScan.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiServer.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib64d/WiFi/WiFiUdp.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib01c/FS/FS.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib01c/FS/vfs_api.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/libbc6/Update/HttpsOTAUpdate.cpp.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib64d/libWiFi.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/libbc6/Update/Updater.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/ESPAsyncWebServer-esphome/AsyncEventSource.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/ESPAsyncWebServer-esphome/AsyncWebSocket.cpp.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib01c/libFS.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/ESPAsyncWebServer-esphome/WebAuthentication.cpp.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/libbc6/libUpdate.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/ESPAsyncWebServer-esphome/WebHandlers.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/ESPAsyncWebServer-esphome/WebRequest.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/ESPAsyncWebServer-esphome/WebResponses.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/ESPAsyncWebServer-esphome/WebServer.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib333/DNSServer/DNSServer.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib915/ESPmDNS/ESPmDNS.cpp.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib8d8/libESPAsyncWebServer-esphome.a
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib333/libDNSServer.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_aead/chacha20poly1305/sodium/aead_chacha20poly1305.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_core/ed25519/core_ed25519.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_core/ed25519/core_ristretto255.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_core/ed25519/ref10/ed25519_ref10.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_hash/crypto_hash.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_hash/sha256/cp/hash_sha256_cp.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_hash/sha256/hash_sha256.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_onetimeauth/crypto_onetimeauth.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_scalarmult/crypto_scalarmult.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib915/libESPmDNS.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_stream/chacha20/ref/chacha20_ref.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_stream/chacha20/stream_chacha20.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_stream/crypto_stream.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/crypto_verify/sodium/verify.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/sodium/codecs.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/sodium/core.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/sodium/runtime.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium/sodium/utils.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/openssl/cipher-aesgcm.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/ref/cipher-aesgcm.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/ref/cipher-chachapoly.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/ref/dh-curve25519.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/ref/hash-blake2b.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/ref/hash-blake2s.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/ref/hash-sha256.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/sodium/cipher-aesgcm.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/sodium/cipher-chachapoly.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/sodium/dh-curve25519.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/sodium/hash-blake2b.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/backend/sodium/hash-sha256.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/aes/rijndael-alg-fst.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/blake2/blake2b.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/blake2/blake2s.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/chacha/chacha.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/donna/curve25519-donna-c64.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/donna/curve25519-donna.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/donna/poly1305-donna.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/sha2/sha256.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/sha2/sha512.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/crypto/x25519/x25519.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/cipherstate.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/dhstate.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/errors.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/handshakestate.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/hashstate.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/internal.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/names.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/patterns.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/rand_os.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/rand_sodium.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/randstate.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/signstate.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/symmetricstate.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/lib88d/noise-c/protocol/util.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/Esp.cpp.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib88d/libnoise-c.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/FirmwareMSC.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/FunctionalInterrupt.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/HWCDC.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/HardwareSerial.cpp.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/lib363/libsodium.a
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/IPAddress.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/IPv6Address.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/MD5Builder.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/Print.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/Stream.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/StreamString.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/Tone.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/USB.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/USBCDC.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/USBMSC.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/WMath.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/WString.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/base64.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/cbuf.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-adc.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-bt.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-cpu.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-dac.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-gpio.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-i2c-slave.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-i2c.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-ledc.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-matrix.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-misc.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-psram.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-rgb-led.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-rmt.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-sigmadelta.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-spi.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-time.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-timer.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-tinyusb.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-touch.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/esp32-hal-uart.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/firmware_msc_fat.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/libb64/cdecode.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/libb64/cencode.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/main.cpp.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/stdlib_noniso.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/wiring_pulse.c.o
Compiling /data/kamerka-test/.pioenvs/kamerka-test/FrameworkArduino/wiring_shift.c.o
Archiving /data/kamerka-test/.pioenvs/kamerka-test/libFrameworkArduino.a
Linking /data/kamerka-test/.pioenvs/kamerka-test/firmware.elf
RAM:   [=         ]  13.9% (used 45428 bytes from 327680 bytes)
Flash: [======    ]  55.2% (used 1013809 bytes from 1835008 bytes)
Building /data/kamerka-test/.pioenvs/kamerka-test/firmware.bin
Creating esp32 image...
Successfully created esp32 image.
esp32_create_combined_bin(["/data/kamerka-test/.pioenvs/kamerka-test/firmware.bin"], ["/data/kamerka-test/.pioenvs/kamerka-test/firmware.elf"])
Wrote 0x108ec0 bytes to file /data/kamerka-test/.pioenvs/kamerka-test/firmware-factory.bin, ready to flash to offset 0x0
======================== [SUCCESS] Took 149.94 seconds ========================
INFO Successfully compiled program.
INFO Resolving IP address of kamerka-test.local
INFO  -> 192.168.1.248
INFO Uploading /data/kamerka-test/.pioenvs/kamerka-test/firmware.bin (1019584 bytes)
Uploading: [============================================================] 100% Done...

INFO Waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from kamerka-test.local using esphome API
INFO Successfully connected to kamerka-test.local
[10:34:23][I][app:102]: ESPHome version 2023.5.5 compiled on Jun 13 2023, 10:32:19
[10:34:23][C][wifi:505]: WiFi:
[10:34:23][C][wifi:363]:   Local MAC: A8:42:E3:4A:12:D8
[10:34:23][C][wifi:364]:   SSID: 'UPC246838639'[redacted]
[10:34:23][C][wifi:365]:   IP Address: 192.168.1.248
[10:34:23][C][wifi:367]:   BSSID: FC:6F:B7:87:FF:7A[redacted]
[10:34:23][C][wifi:368]:   Hostname: 'kamerka-test'
[10:34:23][C][wifi:370]:   Signal strength: -66 dB ▂▄▆█
[10:34:23][C][wifi:374]:   Channel: 1
[10:34:23][C][wifi:375]:   Subnet: 255.255.255.0
[10:34:23][C][wifi:376]:   Gateway: 192.168.1.1
[10:34:23][C][wifi:377]:   DNS1: 62.179.1.62
[10:34:23][C][wifi:378]:   DNS2: 62.179.1.63
[10:34:23][C][logger:301]: Logger:
[10:34:23][C][logger:302]:   Level: DEBUG
[10:34:23][C][logger:303]:   Log Baud Rate: 115200
[10:34:23][C][logger:305]:   Hardware UART: UART0
[10:34:23][C][gpio.output:010]: GPIO Binary Output:
[10:34:23][C][gpio.output:011]:   Pin: GPIO4
[10:34:23][C][gpio.output:010]: GPIO Binary Output:
[10:34:23][C][gpio.output:011]:   Pin: GPIO33
[10:34:23][C][light:103]: Light 'Desk Lamp1'
[10:34:23][C][light:103]: Light 'Desk Lamp2'
[10:34:23][C][esp32_camera:048]: ESP32 Camera:
[10:34:23][C][esp32_camera:049]:   Name: Moja kamera
[10:34:23][C][esp32_camera:050]:   Internal: NO
[10:34:23][C][esp32_camera:052]:   Data Pins: D0:5 D1:18 D2:19 D3:21 D4:36 D5:39 D6:34 D7:35
[10:34:23][C][esp32_camera:053]:   VSYNC Pin: 25
[10:34:23][C][esp32_camera:054]:   HREF Pin: 23
[10:34:23][C][esp32_camera:055]:   Pixel Clock Pin: 22
[10:34:23][C][esp32_camera:056]:   External Clock: Pin:0 Frequency:20000000
[10:34:23][C][esp32_camera:060]:   I2C Pins: SDA:26 SCL:27
[10:34:23][C][esp32_camera:062]:   Reset Pin: -1
[10:34:23][C][esp32_camera:080]:   Resolution: 640x480 (VGA)
[10:34:23][C][esp32_camera:129]:   JPEG Quality: 10
[10:34:23][C][esp32_camera:131]:   Contrast: 0
[10:34:23][C][esp32_camera:132]:   Brightness: 0
[10:34:23][C][esp32_camera:133]:   Saturation: 0
[10:34:23][C][esp32_camera:134]:   Vertical Flip: ON
[10:34:23][C][esp32_camera:135]:   Horizontal Mirror: ON
[10:34:23][C][esp32_camera:136]:   Special Effect: 0
[10:34:23][C][esp32_camera:137]:   White Balance Mode: 0
[10:34:23][C][esp32_camera:140]:   Auto Exposure Control: 1
[10:34:23][C][esp32_camera:141]:   Auto Exposure Control 2: 0
[10:34:23][C][esp32_camera:142]:   Auto Exposure Level: 0
[10:34:23][C][esp32_camera:143]:   Auto Exposure Value: 300
[10:34:23][C][esp32_camera:144]:   AGC: 1
[10:34:23][C][esp32_camera:145]:   AGC Gain: 0
[10:34:23][C][esp32_camera:146]:   Gain Ceiling: 0
[10:34:23][C][esp32_camera:152]:   Test Pattern: NO
[10:34:23][C][psram:020]: PSRAM:
[10:34:23][C][psram:021]:   Available: YES
[10:34:23][C][psram:024]:   Size: 4095 KB
[10:34:23][C][captive_portal:088]: Captive Portal:
[10:34:23][C][mdns:108]: mDNS:
[10:34:23][C][mdns:109]:   Hostname: kamerka-test
[10:34:23][C][ota:093]: Over-The-Air Updates:
[10:34:23][C][ota:094]:   Address: kamerka-test.local:3232
[10:34:23][C][ota:097]:   Using Password.
[10:34:23][C][api:138]: API Server:
[10:34:23][C][api:139]:   Address: kamerka-test.local:6053
[10:34:23][C][api:141]:   Using noise encryption: YES
[10:34:23][D][esp32_camera:196]: Got Image: len=16089
[10:34:34][D][esp32_camera:196]: Got Image: len=15843
[10:34:43][D][esp32_camera:196]: Got Image: len=15749
[10:34:53][D][esp32_camera:196]: Got Image: len=15690
[10:35:04][D][esp32_camera:196]: Got Image: len=16067
[10:35:14][D][esp32_camera:196]: Got Image: len=15995
[10:35:24][D][esp32_camera:196]: Got Image: len=15967
[10:35:34][D][esp32_camera:196]: Got Image: len=15936
[10:35:44][D][esp32_camera:196]: Got Image: len=16302
[10:35:54][D][esp32_camera:196]: Got Image: len=16943
[10:36:04][D][esp32_camera:196]: Got Image: len=15322
[10:36:14][D][esp32_camera:196]: Got Image: len=16180
[10:36:24][D][esp32_camera:196]: Got Image: len=16474
[10:36:34][D][esp32_camera:196]: Got Image: len=16441
[10:36:44][D][esp32_camera:196]: Got Image: len=15686
[10:36:54][D][esp32_camera:196]: Got Image: len=15579