ESP32-CAM modülü ile gerçekleştirdiğimiz çeşitli IoT projelerinin ardından, birçok okuyucumuzdan kartı programlama ve çalıştırma aşamalarında karşılaştıkları sorunlara dair geri bildirimler aldık. ESP32-CAM; üzerinde entegre kamera arayüzü ve güçlü bir Wi-Fi/Bluetooth çipi barındıran son derece ekonomik bir modül olsa da, hassas güç gereksinimleri ve karmaşık pin atamaları nedeniyle sıklıkla bazı hatalara yol açabilir. Bu kapsamlı sorun giderme rehberi, ESP32-CAM kullanırken en sık karşılaşılan donanımsal ve yazılımsal hataları ve bunların kesin çözüm yollarını barındırmaktadır.

ESP32-CAM projelerimizden biri olan ESP32-CAM ile Telegram’dan Fotoğraf Gönderme rehberimizi inceleyerek kartın pratik uygulamalarını öğrenebilirsiniz.
Okuyucularımızdan gelen hata bildirimlerini, log kayıtlarını ve çözüm önerilerini bir araya getirerek en yaygın sorunlara yönelik teknik bir rehber oluşturduk. Eğer burada listelenmeyen farklı bir hata alıyorsanız veya alternatif bir çözüm yolunuz varsa, yazımızın altındaki yorumlar bölümünden paylaşabilir ya da DevreYakan Forum üzerinde yeni bir başlık açarak topluluğumuzdan destek alabilirsiniz.
En Yaygın ESP32-CAM Hataları Listesi
- Failed to connect to ESP32: Timed out waiting for packet header
- Camera init failed with error 0x20001 (veya benzeri hex hataları)
- Brownout detector was triggered / Guru Meditation Error
- Sketch too big error – Derleme boyutu yetersizliği (Yanlış bölümleme şeması)
- Board at COMX is not available – COM Port bağlantı hatası
- PSRAM error: GPIO isr service is not installed
- Zayıf Wi-Fi bağlantısı ve kopma sorunları
- Seri Port Ekranında IP adresinin görünmemesi
- Web sunucusunun açılmaması (Can’t open web server)
- Görüntü akışında aşırı gecikme (lag) ve kalite kayıpları
- esp_camera_fb_get(): Failed to get the frame on time!
Hata 1: Failed to connect to ESP32: Timed out waiting for packet header

Bu hata, Arduino IDE’nin yükleme aracı olan esptool’un ESP32-CAM ile seri haberleşme başlatamadığını, yani kartın “Flash (Yükleme) Modunda” olmadığını veya FTDI programlayıcı bağlantılarının hatalı olduğunu belirtir.
Yükleme Adımlarını ve GPIO 0 Bağlantısını Kontrol Edin:
ESP32-CAM üzerinde yerleşik bir USB-Seri dönüştürücü bulunmadığı için kartı yükleme moduna manuel olarak almamız gerekir. Aşağıdaki adımları eksiksiz uyguladığınızdan emin olun:
1. Bir FTDI USB-TTL dönüştürücü modül kullanarak ESP32-CAM kartını bilgisayarınıza bağlayın. Kablo bağlantı şemasını dikkatlice takip edin:

| ESP32-CAM Pin | FTDI Dönüştürücü Pin | Açıklama |
|---|---|---|
| GND | GND | Ortak Şasi |
| 5V | VCC (5V) | Güç Girişi (Mutlaka 5V olmalıdır) |
| U0R (GPIO 3) | TXD | Alıcı Hattı |
| U0T (GPIO 1) | RXD | Verici Hattı |
| GPIO 0 | GND | Flash Modu İçin Kısa Devre (Zorunlu) |
Kritik Kural: Kodu yüklemeden önce GPIO 0 pinini mutlaka GND pinine bağlamalısınız. Ayrıca FTDI programlayıcınızın üzerindeki voltaj seçici jumper’ın 3.3V yerine 5V konumunda olduğunu doğrulayın.
Yükleme prosedürünü sırasıyla takip edin:
- Arduino IDE yazılımında Araçlar > Kart > AI-Thinker ESP32-CAM modelini seçin.
- Araçlar > Port menüsünden FTDI modülünün bağlı olduğu COM portunu seçin.
- Arduino IDE’de “Yükle” butonuna basın. Alt kısımda derleme bitip
Connecting........_____.....yazısı görünmeye başladığı an, ESP32-CAM kartının arkasındaki küçük RST (Reset) butonuna bir kez basın. - Yükleme tamamlandıktan (yüzde %100 olduktan) sonra, GPIO 0 ile GND arasındaki jumper kabloyu mutlaka sökün ve kartı normal çalışma modunda başlatmak için tekrar RST butonuna basın.

CameraWebServer Örneğinde Bağlantı Hatası: Espressif’in hazır kamera web sunucusu örneğini kullanırken bu hatayı alıyorsanız, kod içerisindeki kamera tanımlamalarını kontrol etmelisiniz. Varsayılan olarak açık gelen #define CAMERA_MODEL_WROVER_KIT satırının başına iki adet eğik çizgi ekleyerek yorum satırı yapın (// #define CAMERA_MODEL_WROVER_KIT). Ardından kullandığınız yapay zeka entegreli kart modeli olan //#define CAMERA_MODEL_AI_THINKER satırının başındaki çizgileri kaldırarak aktif hale getirin (#define CAMERA_MODEL_AI_THINKER).
Dönüştürücü Kalitesini Kontrol Edin: Bazı klon CH340G USB-TTL dönüştürücüler yükleme esnasında yeterli kararlılıkta çalışmayabilir ve zaman aşımı (timeout) hatasına yol açabilir. CP2102 entegreli yüksek kaliteli FTDI dönüştürücüleri kullanmak bu bağlantı sorunlarını büyük ölçüde çözecektir.
Besleme Voltajını Doğrulayın: FTDI dönüştürücü kartlarının 5V çıkışları bazen bilgisayarın USB portundaki sınırlamalar nedeniyle 4.5V seviyelerine düşebilir. Bir multimetre yardımıyla yükleme esnasında ESP32-CAM besleme pinlerindeki voltajı ölçerek net 5V aldığınızdan emin olun.

Hata 2: Camera init failed with error 0x20001 or similar

Kamera başlatılamadı hatası (genellikle 0x20001 hex koduyla gelir), ESP32 denetleyicisinin OV2640 kamera sensörünü fiziksel veya yazılımsal olarak algılayamadığı anlamına gelir.
1. Kamera Flex Kablosunun Bağlantısını İnceleyin:
OV2640 kamera sensörünün kart üzerindeki altın uçlu esnek şerit kablosunun (flex cable) konektöre tam oturduğundan ve kilit mandalının kapalı olduğundan emin olun. Şerit kabloyu yerinden çıkarıp alkol ile temizleyerek tekrar takmak temassızlık kaynaklı sorunları giderecektir.
2. Yazılımdaki Pin Atamalarını Doğrulayın:
Kod içerisinde kartınızın fiziksel pin şemasına uygun tanımlamayı aktif ettiğinizden emin olun. Piyasada AI-Thinker dışında M5Stack, Wrover Kit gibi farklı pin dizilimlerine sahip ESP32-CAM modelleri bulunur. AI-Thinker modeli için doğru dosya yapılandırması şu şekilde olmalıdır:
Kullanılan aktif kamera tanım bloğu:
3. Yetersiz Güç Kaynağı:
Bilgisayarın USB portundan gelen akım, kamera sensörü ilk açılışta yüksek akım çektiği için anlık çökmelere sebep olabilir. Harici bir 5V DC güç kaynağı kullanmak veya kaliteli bir USB kablosuyla besleme yapmak bu hatayı önleyecektir.
Hata 3: Brownout detector was triggered / Guru Meditation Error
Arduino IDE Seri Monitöründe sürekli Brownout detector was triggered uyarısıyla birlikte kartın durmadan reset attığını görüyorsanız, bu durum donanımsal bir yetersiz voltaj sorunudur.
Detaylı Teknik Açıklama (Güç Tüketimi): ESP32-CAM modülü, özellikle kamera sensörünü aktif ettiğinde ve Wi-Fi üzerinden veri transferine başladığında anlık olarak 310mA ila 450mA (Flash LED’i açıkken) arasında yüksek akım çeker. Eğer besleme hattı bu akım talebini karşılayamazsa voltaj düşer ve dahili “Brownout” koruma devresi işlemcinin hasar görmesini engellemek için kartı resetler. Bu durum genellikle şu nedenlerden kaynaklanır:
- Düşük kaliteli veya aşırı uzun micro USB kabloları
- FTDI dönüştürücünün yetersiz akım çıkışı sağlaması
- Bilgisayarın USB 2.0 portunun akım sınırlamaları
- Kart üzerindeki soğuk lehimler
Çözüm Yolu: Kısa ve kesiti kalın kaliteli bir USB kablosu kullanın. Beslemeyi FTDI üzerinden değil, doğrudan harici regüleli bir 5V 1A adaptör veya güç modülü ile ESP32-CAM’in 5V ve GND pinlerine bağlayarak gerçekleştirin.
Hata 4: Sketch too big error – Derleme Boyutu Yetersizliği

Arduino IDE üzerinde kodunuzu derlerken hafıza sınırlarının aşıldığına dair şu hatayı alıyorsanız:
Çözüm: ESP32-CAM’in geniş kod dosyalarını (kamera sunucu arayüzü gibi) barındırabilmesi için Arduino IDE üzerindeki hafıza bölümleme şemasını (partition scheme) değiştirmeniz gerekir. Araçlar > Partition Scheme sekmesine gidin ve buradaki seçeneği “Huge APP (3MB No OTA)” olarak ayarlayın. Bu sayede kod alanınız 3 Megabayta genişletilecek ve hata çözülecektir.
Hata 5: Board at COMX is not available – COM Port Bağlantı Hatası

Eğer yükleme ekranında COM portunun kullanılabilir olmadığı uyarısını alıyorsanız:
Bu sorun, Arduino IDE’de doğru seri portun seçilmediğini veya bilgisayarda USB-Seri sürücülerinin (CH340 veya CP210x VCP sürücüleri) eksik olduğunu gösterir. Araçlar > Port menüsünden dönüştürücünüzün bağlı olduğu COM numarasını tekrar seçin. Sürücülerin güncel olduğundan emin olun.
Hata 6: PSRAM Error: GPIO isr service is not installed

Eğer PSRAM (harici dinamik RAM) birimi bulunmayan ucuz veya sahte bir ESP32-CAM klonu kullanıyorsanız, yüksek çözünürlüklü görüntü akışı başlatıldığında aşağıdaki hatayı alabilirsiniz:
Özellikle kod içerisinde kamera yapılandırması şu şekilde yüksek tanımlandıysa:
Çözüm: Kod içerisine PSRAM durumunu sorgulayan dinamik bir kontrol mekanizması ekleyerek çözünürlüğü sınırlamalısınız. Eğer PSRAM algılanmazsa görüntü kalitesi otomatik olarak SVGA/VGA boyutlarına düşürülmeli ve bellek taşması engellenmelidir:
Not: PSRAM bulunmayan kartlarda yüksek bellek ihtiyacı nedeniyle “Yüz Tanıma (Face Recognition)” ve “Yüz Algılama (Face Detection)” özellikleri çalışmayacaktır. Ancak standart fotoğraf çekme ve web yayını işlevlerini sorunsuz kullanabilirsiniz.
Hata 7: Düşük Wi-Fi Sinyali ve Bağlantı Kopmaları
ESP32-CAM AI-Thinker kartları üzerinde hem dahili bir PCB anteni hem de harici anten bağlayabileceğiniz bir I-PEX (U.FL) konnektörü yer alır. Eğer harici bir anten takmadığınız halde Wi-Fi sinyaliniz çok zayıfsa veya sürekli kopuyorsa, anten yönlendirici direnci yanlış konumda olabilir.
Kartın anten bağlantı bölgesinde yer alan üç adet lehim pedini ve üzerindeki mikroskobik 0 Ohm (0R) SMD direnci kontrol edin. Bu direnç, sinyalin hangi antene yönlendirileceğini belirleyen bir fiziksel anahtardır.

Aşağıdaki makro fotoğrafta, 0 Ohm direncinin varsayılan olarak yerleşik PCB anten yönlendirmesine lehimlenmiş halini görebilirsiniz:

Direnç konumlandırma mantığı şu şekildedir:
– Dahili PCB Anteni İçin: Direnç üst pedleri birleştirmelidir (Yön: /)
– Harici Anten (U.FL) İçin: Direnç sökülerek alt pedleri birleştirmelidir (Yön: \)
Eğer havya ile lehimleme konusunda tecrübeliyseniz, harici anten kullanmak için bu direnci söküp alt konuma alabilir veya sadece lehim köprüsü (solder bridge) atarak harici anteninizi aktif hale getirebilirsiniz.
Hata 8: Seri Monitörde IP Adresinin Alınamaması
Eğer Seri Monitör ekranında sürekli olarak yan yana noktalar (.........) basılıyor ve bir türlü IP adresi gelmiyorsa, ESP32-CAM yerel kablosuz ağınıza bağlanamıyor demektir.
Ağ Bilgilerini Kontrol Edin:
SSID ve Wi-Fi şifrenizin büyük/küçük harf duyarlılığına dikkat ederek koda doğru girildiğinden emin olun:
Doğru Baud Hızını Seçin:
Seri Monitörün sağ alt köşesindeki baud hızının kodda tanımlanan değerle (ESP32-CAM projelerinde genellikle 115200 baud) aynı olduğundan emin olun. Hız yanlışsa ekranda sadece anlamsız (çöp) karakterler görünür.
Hata 9: esp_camera_fb_get(): Failed to get the frame on time!
Bu hata, kamera sensöründen verilerin zamanında okunamadığını belirtir ve genellikle klon veya özel tasarımlı Aliexpress Type-C ESP32-CAM modüllerinde görülür. Bu kartlar standart AI-Thinker şemasında tanımlı olmayan pin yapılandırmaları ve eksik PSRAM entegreleri barındırır.
Bu sorunu aşmak için kodunuzun ana sekmesine şu özel tanımlamayı eklemeniz gerekir:
Ve ardından camera_pins.h sekmesi içerisine girerek şu özel pin eşleşmelerini tanımlamalısınız:
Hata 10: microSD Kart Kapasite Limitleri
Resmi ESP32-CAM Datasheet verilerine göre, kart üzerindeki SD kart yuvasının maksimum 4 GB kapasiteli microSD kartları desteklediği belirtilmektedir.
Ancak yaptığımız laboratuvar testlerinde, 16 GB kapasiteli bir microSD kartı FAT32 dosya sisteminde biçimlendirerek kullandığımızda kartın sorunsuz şekilde veri yazıp okuyabildiğini doğruladık. Yüksek kapasiteli kartlar kullanırken uyumluluk sorunlarını önlemek adına kartı mutlaka FAT32 formatında biçimlendirmeyi unutmayın.
Yorum yapma özelliği, forum tarafından gelen istek sebebiyle kapatılmıştır. Lütfen tartışmalar ve sorularınız için topluluk forumumuza katılın.
