VS Code ile ESP-IDF e giriş

 ESP-IDF, Espressif tarafından sunulan ESP32 ailesi için C/C++ ve freertos tabanlı bir geliştirme (framewrok) platformudur. ESP- IDF güncel olarak v5.2.2 versiyonuna sahiptir. Espressif in  ESP-IDF ile ilgili dökümanlara buraya tıklayarak ulaşabilirsiniz. 

ESP32 ESP-IDF


Esp32 üzerinde Arduino IDE / Arduino-framework ile kodlama yapmak mümkündür. Bunu mümkün kılan Espressif tarafından ESP-IDF alt yapısı kullanılarak özel olarak hazırlanmış arduino çekirdek yazılımlarıdır.  Örneğin yayınlanmış güncel sürüm v3.0.1 dir ve IDF in v5.1.4 sürümü üzerine inşaa edilmiştir. 

Kaynak : https://github.com/espressif/arduino-esp32/releases/tag/3.0.1



 Espressifin yayınlamış olduğu bu çekirdek sürümleri Arduino IDE / PlatformIO gibi geliştirme ortamları tarafından kullanılarak esp üzerinde arduino kodları kullanılmasına olanak sağlar. Hali hazırda bende PlatformIO ve arduino framework ile kodlama yapmaktayım. O halde platformio nun yayınlamış olduğu sürüme bakalım.

Kaynak : https://github.com/platformio/platform-espressif32/releases



  Arduino framework kullansak da ESP-IDF temelli çalışıyoruz. IDF in güncel sürümü 5.2.2 , yayınlanmış olan Arduino çekirdek yazılımı IDF in 5.1.4 sürümünü kullanıyor, Platformio ile kullanılan Arduino çekirdek sürümü ise IDF in 4.4.7 sürümünü kullanıyor. 

    Toparlayacak olursak; öncelikle IDF sürümleri geliştirilip yayınlanıyor. Bu sürümler ile uyumlu arduino çekirdek yazılımları ise daha düşük öncelikli olarak gecikmeli olarak yayınlanıyor. Platformlarında bu sürümleri alıp kendi bünyelerine entegre etmeleri yine bir süre alıyor. Dolayısı ile hata düzeltmeleri, yenilikler gibi geliştirmeleri birkaç sürüm geriden takip etmiş oluyoruz. Ayrıca yayınlanan arduino sürümleri ile IDF in tüm özelliklerini kullanamıyoruz. İşlemci üzerinde bazı konularda kısıtlı kullanıma sahip oluyoruz. Butona bas röle çeksin gibi basit kodlamalarda fark eden bir durum yok iken ileri düzey kodlamalarda bu kısıtlamalar bazen ayak bağı olabiliyor. Tüm bunları değerlendirdiğimde Arduino framework yerine VS Code üzerinde ESP-IDF kullanmaya karar verdim.

  Şimdi bu noktaya kadar konuyu sindirdiysek olayı tavuk-yumurta boyutuna taşıyalım... IDF kullanmaya başladığımızda arduino framework ten vazgeçmek zorunda değiliz. IDF içerisine de arduino framework entegre edilebiliyor. Madem yine arduino kullanacak isek neden IDF kullanalım derseniz, öncelikle yukarıdaki versiyon gecikmelerini beklemek zorunda değiliz, Arduino framework un yetersiz geldiği noktalarda doğrudan IDF fonksiyonlarını kullanabiliriz, SDK config dosyası üzerinde ilgili değişiklikleri yapabiliriz. IDF ortamına hakim oldukça kademe kademe kendi kütüphanelerimiz ile arduino framework ten vazgeçebiliriz...

 

1. Kurulum için VS code üzerinde eklentiler bölümünden ESP-IDF i bulup yükleyin. 


2. Eklenti yüklenince sol tarafta ESP-IDF ikonu oluşacaktır. Bu ikona tıklayın ve "Configure ESP-IDF Extension" seçeneğine tıklayın. ESP-IDF Setup bölümü açılacaktır. "EXPRESS" seçimi ile devam edin. 


3. Yükleme seçeneklerini belirleyin. (Önemli : ESP-IDF içerisinden arduino framework u kullanacak iseniz arduino core için adapte edilmiş güncel IDF versiyonu olan  v5.1.4 ü yükleyiniz. Birden çok IDF versiyonu kullanılmasını tavsiye etmiyorum. Bu nedenle bu aşamada ihtiyacınıza uygun versiyonu belirleyiniz...)


4. Kurulumu başlatın. Yükleme aşaması bağlantı hızınıza bağlı olarak bir miktar zaman alacaktır. Bende bu aşama birkaç saat gibi oldukça uzun sürdü...



4. Kurulum sonu. 



Sonraki bölümde proje oluşturma ile devam ediyoruz. Buraya tıklayarak ilgili konuya ulaşabilirsiniz. 

Yorum Gönder

Daha yeni Daha eski