Back to Blog
IoT • 13 Jul 2026 • 10 dk

ESP32 ile IoT Prototipi: Fikirden Sahaya Adım Adım

ESP32 ile IoT Prototipi: Fikirden Sahaya Adım Adım

Bir IoT fikrini masada çalışan bir prototipe dönüştürmenin en hızlı yollarından biri ESP32'dir. Üzerinde Wi-Fi ve Bluetooth bulunan, düşük maliyetli ve geniş bir topluluğa sahip bu mikrodenetleyici ailesi; sensör okuma, veri gönderme ve uzaktan kontrol gibi işleri tek bir kartta toplar. Bu yazıda ESP32 ile bir IoT prototipini nasıl planlayacağınızı, hangi araçları kullanabileceğinizi ve prototipten ürüne geçerken nelere dikkat etmeniz gerektiğini adım adım anlatıyoruz.

Kısa cevap: ESP32 ile IoT prototipi yapmak için problemi netleştirip veri akışını çizin, bir geliştirme kartına sensörü bağlayın, Wi-Fi üzerinden veriyi MQTT veya HTTPS ile sunucuya gönderin ve basit bir panelde gösterin. Ürüne geçerken güvenlik, OTA güncelleme, güç tasarımı ve saha dayanıklılığı mutlaka planlanmalıdır.

ESP32 nedir, neden bu kadar yaygın?

ESP32, Espressif Systems tarafından geliştirilen bir sistem-üzerinde-yonga (SoC) ailesidir. Ailenin farklı üyeleri farklı çekirdek mimarileri ve özellikler sunar; ancak ortak noktaları dahili kablosuz bağlantı, bol sayıda GPIO pini ve ADC, I²C, SPI, UART gibi çevre birimleridir.

  • Dahili Wi-Fi ve Bluetooth: Ek bir modüle gerek kalmadan buluta veya telefona bağlanabilirsiniz.
  • Uygun maliyet: Geliştirme kartları kolay bulunur ve ekonomiktir.
  • Güçlü yazılım desteği: Espressif'in resmî ESP-IDF çatısı, Arduino çekirdeği ve MicroPython gibi seçenekler vardır.
  • Düşük güç modları: Derin uyku (deep sleep) gibi modlarla pille çalışan cihazlar tasarlanabilir.

Hangi ESP32 varyantının projenize uygun olduğunu belirlemek için Espressif'in ürün karşılaştırma sayfalarını kontrol edin; bazı varyantlarda Bluetooth Classic yoktur, bazılarında USB veya farklı radyo özellikleri bulunur.

ESP32 mi, STM32 mi?

İki aile de gömülü projelerde sık kullanılır, ancak güçlü oldukları alanlar farklıdır. STM32 ile başlangıç için STM32 başlangıç rehberimize göz atabilirsiniz.

KriterESP32STM32
Kablosuz bağlantıDahili Wi-Fi / BluetoothÇoğu modelde yok; harici modül veya kablosuz özel seri gerekir
Güçlü olduğu alanBağlantılı cihazlar, hızlı prototipGerçek zamanlı kontrol, motor sürme, düşük güç, geniş model yelpazesi
Geliştirme ortamıESP-IDF, Arduino, MicroPythonSTM32CubeIDE, HAL/LL kütüphaneleri
Tipik kullanımAkıllı sensör, uzaktan izleme, ağ geçidiEndüstriyel kontrol kartları, sürücüler, tıbbi/otomotiv alt sistemleri

Bazı projelerde ikisi birlikte kullanılır: STM32 gerçek zamanlı kontrolü yapar, ESP32 ise bağlantıyı üstlenir.

Prototip planlama: kod yazmadan önce

1. Problemi tek cümleyle yazın

"Soğuk hava deposundaki sıcaklığı izleyip eşik aşılırsa sorumluya bildirim göndermek" gibi net bir cümle, hangi sensörü, hangi bağlantıyı ve hangi güç kaynağını seçeceğinizi belirler.

2. Veri akışını çizin

Sensör → ESP32 → (Wi-Fi) → sunucu/bulut → panel veya bildirim. Her ok için şu soruları sorun: Veri ne sıklıkla gönderilecek? Bağlantı koparsa ne olacak? Veri nerede saklanacak?

3. Güç bütçesini kestirin

Cihaz prize mi bağlı, pille mi çalışacak? Pille çalışacaksa Wi-Fi'nin yüksek akım çektiğini, ölçüm aralarında derin uykuya geçmenin pil ömrünü belirleyici ölçüde uzattığını unutmayın.

4. Ortam koşullarını belirleyin

Nem, toz, sıcaklık aralığı ve titreşim; kutu seçimini, konnektörleri ve sensör tipini etkiler.

Adım adım ilk prototip

  1. Geliştirme kartını seçin: USB üzerinden programlanabilen, yaygın bir ESP32 geliştirme kartı ile başlayın.
  2. Geliştirme ortamını kurun: Hızlı deneme için Arduino IDE veya PlatformIO; üretime yakın projeler için ESP-IDF tercih edilebilir.
  3. Sensörü bağlayın: Örneğin I²C üzerinden bir sıcaklık-nem sensörü. Önce sadece seri porttan değer okuyarak bağlantıyı doğrulayın.
  4. Wi-Fi'ye bağlanın: Ağ bilgilerini koda gömmek yerine ilk açılışta yapılandırma (provisioning) yöntemi düşünün; prototipte bile şifreleri depoya yüklemeyin.
  5. Veriyi gönderin: IoT için yaygın protokol MQTT'dir; hafif, yayınla/abone ol modeline dayanır. Basit senaryolarda HTTPS üzerinden bir API'ye istek de yeterlidir.
  6. Görselleştirin: Verileri bir veritabanına yazıp basit bir panelde grafikle gösterin. Eşik aşıldığında e-posta veya mesaj bildirimi ekleyin.
  7. Sahada deneyin: Gerçek ortamda birkaç gün çalıştırın; bağlantı kopmaları, yeniden başlatmalar ve ölçüm sapmalarını kaydedin.

Prototipten ürüne: atlanan konular

Masada çalışan bir prototip ile sahada yıllarca çalışacak bir cihaz arasında büyük fark vardır. Endüstriyel tarafı IoT ve endüstriyel otomasyon yazımızda ele almıştık; burada cihaz tarafındaki kontrol listesini paylaşıyoruz.

Güvenlik

  • Bağlantıyı TLS ile şifreleyin; cihaz başına ayrı kimlik bilgisi kullanın.
  • Espressif'in secure boot ve flash şifreleme özelliklerini değerlendirin.
  • Varsayılan şifre ve açık hata ayıklama portları bırakmayın.

Uzaktan güncelleme (OTA)

Sahadaki cihaza ulaşmadan yazılım güncelleyebilmek hayati önemdedir. OTA altyapısını ilk sürümden planlayın; başarısız güncellemede önceki sürüme dönebilen bir yapı kurun.

Dayanıklılık

  • Watchdog zamanlayıcısı ile kilitlenmelere karşı otomatik yeniden başlatma.
  • Bağlantı yokken verileri yerelde tamponlayıp bağlantı gelince gönderme.
  • Güç kesintisi ve voltaj dalgalanmalarına karşı donanım koruması.

Donanım tasarımı

Geliştirme kartından özel PCB'ye geçerken anten yerleşimi, güç katı, ESD koruması ve test noktaları dikkatle tasarlanmalıdır. Hazır sertifikalı modüller kullanmak, kablosuz uygunluk süreçlerini kolaylaştırabilir; satış yapılacak pazarın gerekliliklerini (örneğin CE) önceden araştırın.

Prototip kontrol listesi

  • Problem ve başarı kriteri yazılı mı?
  • Sensör doğruluğu ve kalibrasyon ihtiyacı belirlendi mi?
  • Veri gönderim sıklığı ve bağlantı kopması senaryosu düşünüldü mü?
  • Güç kaynağı ve tahmini pil ömrü hesaplandı mı?
  • Kimlik bilgileri koddan ayrıldı mı?
  • OTA güncelleme planı var mı?
  • Saha testi sonuçları kaydedildi mi?

Sensör seçimi: doğru veriyi ölçmek

Bir IoT projesinin değeri, topladığı verinin doğruluğuyla sınırlıdır. Sensör seçerken sadece fiyata değil, şu özelliklere bakın:

ÖzellikNeden önemli?
Ölçüm aralığıSoğuk hava deposu ile fırın ortamı çok farklı sensörler gerektirir.
Doğruluk ve çözünürlükKarar vereceğiniz eşik değerin hassasiyetine uygun olmalıdır.
ArayüzI²C, SPI, UART, analog veya dijital; kablo uzunluğunu ve gürültü direncini etkiler.
Güç tüketimiPille çalışan cihazlarda belirleyicidir.
Kalibrasyon ihtiyacıZamanla sapma gösteren sensörler periyodik kalibrasyon ister.
BulunabilirlikSeri üretimde aynı parçayı uzun süre temin edebilmek kritik önemdedir.

Prototip aşamasında hazır sensör modülleri hızlı ilerlemenizi sağlar. Ürün aşamasında ise sensörün kendisi doğrudan PCB'ye yerleştirilir; bu geçişte modül üzerindeki yardımcı devrelerin (voltaj regülatörü, pull-up dirençleri) de tasarıma eklenmesi gerekir.

Bağlantı seçenekleri: Wi-Fi her zaman doğru cevap mı?

ESP32'nin dahili Wi-Fi'si prototip için çok pratiktir, ancak her sahaya uygun değildir.

  • Wi-Fi: Ofis, mağaza, fabrika gibi altyapısı olan yerlerde idealdir. Kapsama ve şifre yönetimi planlanmalıdır.
  • Bluetooth Low Energy (BLE): Telefonla yakın mesafe iletişim, cihaz kurulumu ve düşük güç gerektiren senaryolar için uygundur.
  • ESP-NOW: Espressif'in, router gerektirmeden ESP cihazları arasında doğrudan haberleşme sağlayan protokolüdür; yakın mesafedeki cihaz grupları için kullanışlıdır.
  • Hücresel (LTE-M, NB-IoT): Wi-Fi olmayan sahalarda, harici bir modem modülüyle eklenebilir.
  • LoRa: Uzun mesafe ve çok düşük veri hızı gerektiren tarım, çevre izleme gibi uygulamalarda harici modülle kullanılır.
  • Kablolu (RS-485, Ethernet): Endüstriyel ortamlarda gürültüye dayanıklı ve güvenilir bir alternatiftir.

Bulut ve panel tarafı

Cihaz verisi bir yere ulaşmadıkça değer üretmez. Prototip için hazır IoT platformları hızlı başlangıç sağlar; ürünleşme aşamasında ise şu sorular önem kazanır:

  1. Veri nerede saklanacak? Zaman serisi verisi için uygun bir veritabanı seçilmelidir.
  2. Kim, neyi görecek? Müşteriler sadece kendi cihazlarını görmeli; yetkilendirme baştan tasarlanmalıdır.
  3. Uyarılar nasıl iletilecek? E-posta, SMS, mobil bildirim veya mesajlaşma uygulamaları.
  4. Maliyet ölçeklenmesi: Cihaz sayısı yüzlerden binlere çıktığında platform ücretleri nasıl değişecek?

Cihazları yöneten bir mobil uygulama da planlıyorsanız, kapsam ve bütçe için mobil uygulama maliyeti yazımıza göz atabilirsiniz.

Güç tasarımı üzerine notlar

Pille çalışan bir cihazda pil ömrünü belirleyen şey, cihazın zamanının ne kadarını uykuda geçirdiğidir. Bazı pratik ilkeler:

  • Ölçüm yapın, veriyi biriktirin ve birkaç ölçümü tek seferde gönderin; her ölçümde Wi-Fi'ye bağlanmayın.
  • Uyku sırasında sensörlerin ve yardımcı devrelerin de enerjisini kesin.
  • Düşük sükûnet akımına (quiescent current) sahip voltaj regülatörleri seçin.
  • Gerçek tüketimi bir akım ölçer ile ölçün; veri sayfasındaki değerler ideal koşulları yansıtır.

Seri üretime hazırlık

Prototip onaylandıktan sonra ürünleşme süreci başlar. Bu süreçte sık atlanan adımlar şunlardır:

  • Üretim testi: Her kartın üretim hattında hızlıca test edilebilmesi için test noktaları ve test yazılımı.
  • Cihaz kimliği: Her cihaza benzersiz kimlik ve kimlik bilgisi atanması.
  • Kutu tasarımı: Nem, toz ve darbeye karşı koruma, anten performansını engellemeyen malzeme.
  • Dokümantasyon: Kurulum kılavuzu, devre şemaları ve yazılım sürüm notları.

Elektriksel tasarım ve saha kurulumu tarafında elektrik mühendisliği hizmetimiz de sürecin bir parçası olabilir.

Yazılım mimarisi: sağlam firmware için ilkeler

ESP-IDF, FreeRTOS tabanlı bir gerçek zamanlı işletim sistemi üzerinde çalışır. Bu, sensör okuma, ağ bağlantısı ve kullanıcı arayüzü gibi işlerin ayrı görevler (task) olarak yürütülmesini sağlar. Prototipten ürüne geçerken kodun düzenli olması bakım maliyetini doğrudan etkiler.

  • Görevleri ayırın: Sensör okuma, veri gönderme ve komut işleme ayrı görevlerde çalışsın; aralarındaki iletişim kuyruklarla yapılsın.
  • Durum makinesi kullanın: "Bağlanıyor", "bağlı", "veri gönderiyor", "uyku" gibi durumları açıkça tanımlamak beklenmedik davranışları azaltır.
  • Yapılandırmayı ayırın: Sunucu adresi, ölçüm aralığı, eşik değerleri gibi ayarlar koda gömülmesin; kalıcı hafızada (NVS) tutulsun ve uzaktan değiştirilebilsin.
  • Loglama: Seviyeli log (hata, uyarı, bilgi) kullanın; sahadaki sorunları anlamak için kritik olayları buluta da raporlayın.
  • Zaman senkronizasyonu: Ölçümlere doğru zaman damgası eklemek için cihaz saatini ağ üzerinden senkronize edin.
  • Sürüm bilgisi: Her cihaz, çalıştırdığı firmware sürümünü raporlasın; OTA güncellemelerinin takibi kolaylaşır.

Test stratejisi

  1. Masa testi: Sensör değerleri bilinen bir referansla karşılaştırılır.
  2. Bağlantı testi: Router kapatılıp açılır, internet kesilir, sunucu yanıt vermez hâle getirilir; cihazın nasıl davrandığı izlenir.
  3. Uzun süre testi: Cihaz günlerce çalıştırılır; bellek sızıntısı ve beklenmedik yeniden başlatmalar aranır.
  4. Ortam testi: Sıcaklık, nem ve gerekiyorsa titreşim koşullarında davranış gözlemlenir.
  5. Güncelleme testi: OTA sırasında elektrik kesilmesi gibi senaryolar denenir.

Örnek senaryo: soğuk hava deposu izleme

Yazının başında verdiğimiz örneği adım adım düşünelim. Amaç, bir soğuk hava deposundaki sıcaklığı izlemek ve eşik aşılırsa sorumluya haber vermek.

  • Sensör: Düşük sıcaklık aralığında doğru ölçüm yapabilen, kablolu bir prob tercih edilir; elektronik kutu deponun dışında kalabilir.
  • Bağlantı: Depo binasında Wi-Fi varsa kullanılır; metal yapılar sinyali zayıflatabileceği için kapsama önceden ölçülür.
  • Gönderim sıklığı: Normal durumda birkaç dakikada bir ölçüm yeterlidir; eşik aşımında anında bildirim gönderilir.
  • Bağlantı kopması: Ölçümler cihazda tamponlanır, bağlantı gelince gönderilir; uzun süre veri gelmemesi de ayrı bir alarm olarak tanımlanır.
  • Güç: Prizden beslenir; elektrik kesintisini bildirebilmek için küçük bir yedek pil eklenebilir.
  • Kayıt: Sıcaklık geçmişi, denetimlerde gösterilebilecek şekilde saklanır ve raporlanır.

Bu basit senaryo bile, prototip aşamasında sorulması gereken soruların ne kadar çeşitli olduğunu gösterir. Soruları erken sormak, sahada yaşanacak sürprizleri azaltır.

Terimler sözlüğü

  • SoC (System on Chip): İşlemci, bellek ve çevre birimlerini tek bir yongada birleştiren entegre devre.
  • GPIO: Mikrodenetleyicide giriş veya çıkış olarak yapılandırılabilen genel amaçlı pinler.
  • I²C / SPI / UART: Mikrodenetleyicinin sensör ve modüllerle haberleştiği seri iletişim arayüzleri.
  • MQTT: Yayınla/abone ol modeline dayanan, IoT için yaygın hafif mesajlaşma protokolü.
  • OTA: Cihaz yazılımının kablosuz olarak, uzaktan güncellenmesi.
  • Deep sleep: Cihazın enerjinin büyük kısmını kapatarak çok düşük akımla beklediği uyku modu.
  • Watchdog: Yazılım kilitlendiğinde cihazı otomatik olarak yeniden başlatan zamanlayıcı.
  • Firmware: Cihazın donanımı üzerinde çalışan gömülü yazılım.

Sık Sorulan Sorular

ESP32'yi Arduino ile mi, ESP-IDF ile mi programlamalıyım?

Hızlı deneme ve öğrenme için Arduino çekirdeği pratiktir. Güvenlik özellikleri, ince güç yönetimi ve uzun vadeli bakım gerektiren ürünlerde ESP-IDF daha fazla kontrol sağlar.

MQTT mi, HTTP mi kullanmalıyım?

Çok sayıda cihazın sık veri gönderdiği ve komut alması gereken sistemlerde MQTT daha verimlidir. Seyrek veri gönderen basit cihazlarda HTTPS üzerinden bir API çağrısı yeterli olabilir.

ESP32 endüstriyel ortamda kullanılabilir mi?

Doğru donanım tasarımı, uygun kutu, güç koruması ve sağlam bir yazılım mimarisi ile kullanılabilir. Geliştirme kartını doğrudan sahaya koymak ise önerilmez.

Pil ile ne kadar çalışır?

Ölçüm sıklığına, Wi-Fi'nin ne kadar açık kaldığına ve pil kapasitesine bağlıdır. Derin uyku kullanımı ve veri gönderimlerini gruplamak pil ömrünü belirgin şekilde uzatır.

ESP32 ile hangi bulut platformlarını kullanabilirim?

MQTT veya HTTPS destekleyen hemen her platformla çalışabilir. Seçim; veri hacmine, maliyet modeline ve verinin nerede saklanması gerektiğine göre yapılmalıdır.

Prototip için PCB tasarlamak gerekir mi?

İlk denemelerde gerekmez; geliştirme kartı ve hazır modüller yeterlidir. Sahada uzun süreli test veya küçük seri üretim aşamasında özel PCB'ye geçmek mantıklıdır.

Cihaz sayısı arttığında nelere dikkat etmeliyim?

Cihaz kimlik yönetimi, toplu OTA güncelleme, izleme ve bulut maliyetleri cihaz sayısıyla birlikte önem kazanır; bunları baştan planlamak ileride yeniden yazma ihtiyacını azaltır.

Sonuç

ESP32, bir IoT fikrini hızla test etmenin en erişilebilir yollarından biridir. Ancak asıl iş, prototipi güvenli, güncellenebilir ve sahada dayanıklı bir ürüne dönüştürmektir. Fikrinizi prototipten seri üretime taşımak için IoT çözümlerimizi ve gömülü sistem hizmetimizi inceleyebilir, bizimle iletişime geçebilirsiniz.

Kaynaklar

Need help with this topic?

We offer professional services in this area at Nexova Studio.

Contact Us