NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

NodeMCU yazılarımızın başlangıç kısımlarında anlattığımız konuların tamamını bu yazıda derledik. Arduino IDE desteği, Flash programlama, Lua betikleri çalıştırma, yazılım güncelleme ve custom yani özel yazılım oluşturmayı burada anlattık.

NodeMCU Sürücüleri

NodeMCU kartınızı kullanmak için, kullandığınız işletim sistemine göre gerekli sürücüleri kurmanız gerekiyor, aksi taktirde kartınız ve bilgisayarınız/aygıtınız iletişim kuramaz. İncelediğimiz bir çok NodeMCU kartı CH340 entegresini kullanmak, bu sürücü bağlatınlarıda bu entegre için oluşturuldu. Farklı bir entegre ile karşılaşırsanız, uygun sürücüyü kurmanız gerekebilir. Merak etmeyin büyük ihtimalle size gerekli olan sürücü burada.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Windows İşletim Sistemi İçin: Buradan indirebilirsiniz.

Linux Tabanlı İşletim Sistemleri İçin: Buradan indirebilirsiniz.

MacOS İşletim Sistemi İçin: Buradan indirebilirsiniz.

Arduino IDE'ye NodeMCU Desteği Eklemek

NodeMCU programlamak için bir çok yol mevcut, fakat kolay kullanımı ve kütüphane desteği nedeniyle Arduino IDE oldukça kullanılan bir platform. Ayrıca bir çok sensörü ve kütüphanesi daha önce Arduino ile kullandığımızı göz önüne alırsak NodeMCU kartı için iyi bir başlangıç olacaktır. Bunun yanında tıpkı Arduino’da kodlama yapar gibi, kodlamalarınızı NodeMCU üzerine yapabilirsiniz. Bu desteğin olmasının yanında doğrudan Lua betiklerini de çalıştırabilirsiniz.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Arduino IDE’sini açıp Dosya > Tercihler kısmına girin. Karşınıza aşağıdaki gibi bir ekran gelecektir.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Eğer sıfır kurulum yaptıysanız muhtemelen sizde “Satır numaralarını göster” kısmı işaretli olmayacaktır. Ayrıca “Ek Devre Kartları Yöneticisi URL’leri” kısmı da boş olacaktır. Satır numaralarının gösterilmesi işinizi bir hayli kolaylaştıracağından tavsiyemiz o kutucuğu işaretlemeniz yönünde. Ek Devre Kartları Yöneticisi URL’leri kısmına da “http://arduino.esp8266.com/stable/package_esp8266com_index.sson” adresini tırnak işaretleri olmadan yazıp Tamam’a basarsanız artık birkaç işlemden sonra NodeMCU kütüphaneleri Arduino IDE’sine kurulmuş olacak. Ayrıca URL yazdığımız kutucuğa birden fazla URL yazmak isterseniz aralarına virgül koyarak istediğiniz kadar ekleyebilirsiniz.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme
Diğer NodeMCU Modelleri

Şimdi ise Araçlar > Kart > Kart Yöneticisi kısmına girip en alta inin. Görselde görülmüş olduğu gibi biz daha öncesinden kurduk. Siz de “Kur” butonuna basarak kurulumu gerçekleştirebilirsiniz. İnternet bağlantınızın hızına bağlı şekilde bu sürecin uzunluğu değişebilir.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

İpucu

Eğer daha öncesinden kurulum yaptıysanız ve henüz kartın güncellemesini yapmadıysanız bir önceki aşamada anlattığımız gibi yine aynı yolu izleyip “Güncelle” butonuna basmanız gerekmektedir. Aksi halde NodeMCU’ya program atamıyorsunuz. Ancak bu güncelleme ile gelen özellikler gerçekten çok kullanışlı. Mesela artık ekstra kod yazmadan ESP’nin içerisindeki flash’ı kısmen ya da bütünüyle temizleyebiliyoruz. Böylece istersek daha öncesinden kayıtlı ağ bilgileri dahil her şeyi silebiliyor ve NodeMCU’muzu ilk günkü haline döndürebiliyoruz. Bir nevi fabrika ayarlarına dönmek gibi.

Şimdi ise kartınızı seçip kodu atmaya hazır hale getirmeli ve gerekli konfigürasyonu yapmalısınız. Bunun için Araçlar > Kart kısmına girip NodeMCU 1.0 kartını seçmelisiniz. Daha sonra ise resmin alt kısmında ve birazdan kodun üst kısmında da göreceğiniz gibi ayarları düzenlemelisiniz. NodeMCU, varsayılan olarak 80 MHz frekansında çalışır. İstendiği takdirde 160 MHz frekansına ayarlıdır. Bu parametreyi değiştirerek daha fazla performans elde edebilirsiniz. Ancak frekansı artırdığınızda daha fazla akım çekeceğinden güç tüketiminde de artışa neden olacaktır. Eğer güç sorununuz yoksa 160 MHz frekansında rahatça çalıştırabilirsiniz. Isınma sorunundan kesinlikle endişe etmeyin. Bu kartla oldukça sık bir şekilde şahit olduğumuz bir olaydır.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

NodeMCU desteğini Arduino IDE’sine kurulumu bu kadar basit. Artık kartınızı dilediğiniz gibi programlayabilir, çeşitli projelerde kullanabilirsiniz. Arduino IDE’si kullanarak oluşturduğumuz WiFi Jammer projesine buradan erişebilirsiniz.

Flash Programlama ile Kod Yüklemek

Arduino IDE’sinde ya da başka bir IDE’de oluşturduğunuz program kodunu .BIN dosya formatına çevirerek, NodeMCU kartınıza kolay bir şekilde yükleyebilirsiniz. Ayrıca bu yöntemi işletim sistemi(firmware) güncelleme gibi işlemlerde de kullanacağımızı belirtelim. Windows, Linux ve MacOS işletim sistemleri için oldukça farklı ve alternatif uygulama ve program mevcut. Bir çoğu python tabanlı olması sebebiyle belirttiğimiz üç işletim sisteminde de sorunsuz çalışabiliyor. Arayüzleri inceleyip, beğendiniz bir programı kullanabilirsiniz.

Windows İşletim Sistemi İçin

Windows kurulu cihazlar için, biz NodeMCU Flasher programını kullandık. İşletim sistemini güncellemeyi ve yüklemeyi alttaki bir başlıkta ayrı olarak antalacağımız için bu kısımda, sadece LED Blink programımı yüklüyoruz. Diğer işletim sistemleri için de bu başlıkta yazdığımız geçerli. Doğru COM Portu seçip, .bin dosyasını ekleyip başına tik ekleyerek Flash işlemini başlatabilirsiniz.

Kartımızı aldığımızda flashlama işlemi ve işletim sistemini güncellemek her açıdan sizlere olumlu olarak dönecektir. Bunun yanında kendi istediğiniz özellikler ile bir işletim sistemi yükleyebilirsiniz. Flashlama işlemini yapmak için bu programı kullanacağız. İndirmek için buradan erişebilirsiniz. Kartınız bağladıktan sonra COM bağlantınız seçip, Flash işlemine başyabilirisiniz. İşlem bittikten sonra program size işlemin tamamlandığına dair geri dönüşte bulunacak, bunun yanında kendi .bin dosyalarınızı Config kısmından da yükleyebilirsiniz yani Arduino IDEde yaptığınız işlemleri buradan doğrudan yükleyebilirsiniz. Unutmadan belirtmeliyim Flash işlemi yaparken kartın bütün pinlerinin boşta olduğuna emin olun, yoksa Flash işlemi yaparken sorunlarla karşılaşabilirsiniz.

MacOS İşletim Sistemi İçin

MacOS işletim sistemi için kullandığımız Py Flasher programını buradan indirebilirsiniz.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Linux İşletim Sistemi İçin

Linux tabanlı işletim sistemleri için, GitHub üzerinden doğrudan programı kopyalayabilirsiniz.

git clone https://github.com/themadinventor/esptool.git

Yazılım Güncelleme/Firmware Update

Modülü aldığınızda kullanmaya başlamadan önce, modül içerisindeki yazılımı güncellemek gerekmektedir. Güncel yazılım sürümlerine buradan ulaşabilirsiniz. Bunun sebebi her gelen yeni sürüm ile modülün daha da stabil bir hale gelmesi ve ekstra özellikler sunmasıdır. Modülün güncellemelerinin yapılması için önce bağlantıları aşağıda belirtilen şekilde yerine getirmemiz gerekmektedir. Dosyaları indirdikten sonra ESP8266Flasher programını açıyoruz ve karşımıza aşağıdaki gibi bir ekran geliyor.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Üstteki panelden soldan ikinci menüye giriyoruz ve düzenlemeleri aşağıdaki gibi yapıyoruz. Bu menüde indirdiğimiz zip dosyası içerisinden çıkarttığımız her biri “.bin” uzantılı dosyayı ilgili sıra ile eklememiz ve resimde görüldüğü gibi her bir dosya için ayrı kodu girmemiz gerekiyor (sağ taraftaki 0x00000 gibi).

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Ayarları doğru bir şekilde yaptıktan sonra, tekrar ilk menüye gelip ortadaki büyük butona tıklıyoruz ve böylece güncelleme işlemi başlamış oluyor. İşlem tamamlandığında ESP8266 modülümüz güncellenmiş olacaktır.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Özel Yazılım Oluşturmak/Custom Firmware

Güncel yazılımı yüklediğimiz zaman, aslında aşağıdaki seçenekleri kurmuş oluyorsunuz. Haliyle geride kalan özellikler aktifleşmemiş oluyor. Farklı projeler ve amaçlar için özel yazılımlar oluşturabiliyoruz. Buradan gerekli yerleri doldurarak mail adresinize yazılımı isteyebilirsiniz. Yaklaşık 10 dakika içinde seçtiğiniz seçenekler doğrultusunda yazılım size ulaşacaktır.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Lua Betiklerini Çalıştırmak

Yukarıda bahsettiğimiz adresten BIN dosyasını hazırlayacağız. Açılan sayfada öncelikle ihtiyaç duyduğumuz kütüphaneleri seçeceğiz. Burada hepsini seçemiyoruz. Mail adresimizi yazıp seçim yaptıktan sonra aşağıda belirtilen gibi ayarlarını yapıp start your build e tıklıyoruz.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme
nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme
nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

5-10 dk içinde derlenmiş BIN dosyası mail adresinize gönderilecektir. Şimdi gelelim bu bin dosyasını NodeMCU ya yüklemeye. Üst başlıklarda belirttiğimiz gibi istediğini programı kullanabilirsiniz. Biz Windows için paylaştığımız programı kullanarak işlemleri gerçekleştireceğiz.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Yükleme işi tamamlandıktan sonra program yazacağımız editörü yükleyelim. Bu bağlatından son versiyon indirip ESPlorer.bat dosyası çalıştıralım. Biz Windows işletim sisteminde kullandığımız için Windows versiyonunu indirdik. ESPlorer programının Linux ve Mac desteği olduğunu belirtip kuruluma devam edelim. Programda ilk önce yükleme ayarlarını yapalım.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Setting sekmesinden yukarıdaki gibi ayarları yaptıktan sonra Scripts sekmesini açıp seri port ayarını yapalım.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Şimdi Program yazmaya geçebiliriz. Program LUA dilinde yazılıyor, LUA ile alakalı internette pek çok kaynak ve görsel eğitim bulabilirsiniz. Bizi daha çok ilgilendiren içerisindeki derlenmiş kütüphane komutlarıdır. Bunun için bu adresten tercih ettiğiniz kütüphanelerin açıklaması ve örneklerine ulaşabilirsiniz.

İlk uygulamamız LED yakıp söndürmek olduğu için GPIO kütüphanesine bakıp nasıl 1 yada 0 yapılır onu inceleyeceğiz.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme

Pin yapısı ve index adresleri üst görselde görülmektedir. Biz ESP nin üzerinde bulunan LED i kontrol edeceğiz. Bu led GPIO 2 (IO index: 4) pinine ters bağlanmıştır, yani 0 verildiğinde yanar ve 1 verildiğinde ise söner.

Lua Program Kodu

LED_PIN = 4

gpio.mode(LED_PIN, gpio.OUTPUT)
value = true

tmr.alarm(0, 500, 1, function ()
    gpio.write(LED_PIN, value and gpio.HIGH or gpio.LOW)
    value = not value
end)

Bu dosyayı init.lua olarak kaydedip Save to ESP ye basılır ve Run dediğimizde programımız çalışacaktır.

nodemcu flash güncelleme, NodeMCU: Arduino IDE Desteği, Flash Program Yükleme, Yazılım Güncelleme