Uzak bir sunucuya telemetri verisi gönderirken, SSL/TLS sertifikalarını doğrularken veya dosya sistemine (SPIFFS / FATFS) zaman damgalı log kayıtları yazarken mikrodenetleyicinin yıl, ay, gün, saat ve saniye bilgisine milisaniyelik hassasiyetle sahip olması gerekir. ESP32 harici bir RTC pili (DS3231 vb.) olmasa dahi, Wi-Fi ağına bağlandığı anda ESP-IDF SNTP saat senkronizasyonu (Simple Network Time Protocol) protokolüyle […]
Wi-Fi ağı bulunmayan ortamlarda veya cihazın ilk kurulumunda (Provisioning – telefondan cihaza Wi-Fi şifresi tanımlama) en az güç tüketen ve akıllı telefonlarla doğrudan haberleşen teknoloji BLE (Bluetooth Low Energy / Bluetooth 4.2 & 5.0) standardıdır. ESP-IDF üzerinde ESP-IDF BLE GATT sunucusu (Generic Attribute Profile) kurmak; sensör verilerini bildirim (Notification) olarak akıllı telefonlara göndermeyi ve telefondan […]
Sahaya dağıtılmış yüzlerce veya binlerce IoT cihazını USB kablosuyla tek tek bilgisayara bağlayıp güncellemek imkansızdır. Bir cihaz tavana monte edilmiş, bir fabrikada panoya kilitlenmiş veya müşterinin evinde olabilir. Bu noktada ESP-IDF OTA yazılım güncelleme (Over-The-Air) mimarisi; cihazın çalışan firmware’ini internet (HTTPS) üzerinden uzaktan ve kesintisiz olarak güncellemesini sağlar. Bu rehberde; çift bölümlü (Dual-Partition) flash hafıza […]
Gömülü cihazların tarayıcı üzerinden yapılandırılması (Wi-Fi şifresi girme, sensör kalibrasyonu) veya yerel ağdaki mobil uygulamalarla doğrudan haberleşmesi gerektiğinde en pratik çözüm cihazın üzerinde yerel bir HTTP sunucusu çalıştırmaktır. ESP-IDF’in resmi ESP-IDF HTTP web sunucusu bileşeni (esphttpserver), çoklu oturum desteği ve düşük bellek tüketimiyle ESP32’yi tam donanımlı bir REST API sunucusuna dönüştürür. Bu rehberde; esphttpserver mimarisini, […]
Nesnelerin İnterneti (IoT) ekosisteminde sensör verilerini AWS IoT, HiveMQ, EMQX veya yerel bir Mosquitto broker’ına aktarmanın küresel standardı MQTT (Message Queuing Telemetry Transport) protokolüdür. Hafif yayınla/abone ol (Publish/Subscribe) mimarisi ve düşük bant genişliği tüketimi sayesinde ESP-IDF MQTT istemcisi (esp-mqtt), ESP32 tabanlı endüstriyel cihazların güvenilir ve iki yönlü bulut iletişimini sağlar. Bu rehberde; MQTT mimarisini ve […]
Pille veya güneş paneliyle çalışan uzak IoT sensör istasyonlarında, tarımsal takip cihazlarında ve giyilebilir teknolojilerde cihazın aylarca veya yıllarca tek bir pille çalışabilmesi gerekir. ESP32 aktif çalışırken (Wi-Fi açıkken) ~150-240 mA akım tüketir; bu durum standart bir 18650 lityum pili 10-15 saatte bitirir. Bu senaryolarda ESP-IDF deep sleep kullanımı (Derin Uyku) mimarisi; CPU çekirdeklerini, Wi-Fi/Bluetooth […]
I2C protokolü 400 kHz hız sınırıyla sensör okumak için harika olsa da, renkli TFT/OLED ekranlara (ST7789, ILI9341) piksel basarken, SD kartlara yüksek hızda veri kaydederken veya harici NOR/NAND Flash belleklerle çalışırken onlarca megahertz (MHz) hız gerekir. ESP32’de ESP-IDF SPI veri yolu kullanımı (Serial Peripheral Interface); 80 MHz’e kadar çıkan saat hızları ve CPU’yu meşgul etmeyen […]
Gömülü sistemlerde LED parlaklığı ayarlamak (dimming), DC motorların dönüş hızını kontrol etmek veya buzzer üzerinden ses tonları üretmek için Darbe Genişlik Modülasyonu (PWM – Pulse Width Modulation) kullanılır. ESP32 mikrodenetleyicisinde yazılımsal gecikmelerle PWM üretmek yerine, doğrudan bağımsız donanım zamanlayıcılarıyla çalışan ESP-IDF LEDC PWM kullanımı (LED Control Peripheral) mimarisi tercih edilir. LEDC birimi CPU’ya sıfır ek […]
Analog sensörler (potansiyometreler, NTC sıcaklık probları, LDR ışık sensörleri veya pil voltaj bölücüleri) mikrodenetleyicilerde analog-dijital dönüştürücü (ADC) birimleri üzerinden okunur. Ancak ESP32’nin yerleşik SAR ADC birimi, 0V ve 3.3V uçlarında doğal bir lineersizliğe (doğrusal olmama) ve çip üretim farklılıklarından kaynaklanan referans gerilimi sapmalarına sahiptir. Bu nedenle endüstriyel doğrulukta gerilim ölçümü için ESP-IDF ADC kalibrasyon mekanizmasını […]
Gömülü sistem projelerinde ortam sıcaklığı, nem, basınç, ivme ve manyetik alan gibi fiziksel büyüklükleri ölçmek için kullanılan dijital sensörlerin büyük çoğunluğu iki telli I2C (Inter-Integrated Circuit) veri yolunu kullanır. ESP32 mikrodenetleyicisinde ESP-IDF I2C sensör okuma mimarisi; donanımsal I2C kontrolcüsü, kuyruk tabanlı komut bağlama (command link) ve kesme destekli veri transferi sayesinde güvenilir ve endüstriyel kalitede […]