MicroPython Firmware’i esptool.py ile Flashlama
Bu yazımızda, esptool.py kullanarak ESP32/ESP8266 kartlarında MicroPython yazılımını nasıl flaş edileceğini gösteriyoruz. esptool.py, Windows, Mac OS X ve Linux işletim sistemlerinde sorunsuz bir şekilde çalışır. Resmi belgeler ve daha detaylı bilgi için esptool.py GitHub sayfasını ziyaret edebilirsiniz.
İpucu: ESP32/ESP8266’yı MicroPython ile flaş etmenin daha kolay bir yöntemi için, MicroPython’u uPyCraft IDE ile flaş etmeyi anlattığımız bu kılavuzu okumanızı öneririz. Ancak, yakın zamanda okuyucularımızdan uPyCraft IDE’yi kurma/kullanma konusunda sorun yaşadıklarına dair yorumlar aldık. Bu nedenle, esptool.py yazılımını kullanarak alternatif bir yöntem yayınlıyoruz.
esptool.py’yi Yükleme
esptool.py ile çalışmak için sisteminizde Python 2.7, Python 3.4 veya daha yeni bir Python kurulumuna ihtiyacınız olacak. Python 3.7.X kullanmanızı öneririz.
Python 3 kuruluyken, bir Terminal penceresi açın ve pip ile en son kararlı esptool.py sürümünü yükleyin:
pip install esptool
Not: Bazı Python kurulumlarında bu komut çalışmayabilir ve bir hata alırsınız. Bu durumda, esptool.py’yi aşağıdakilerle yüklemeyi deneyin:
pip3 install esptool
python -m pip install esptool
pip2 install esptool
Setuptools, varsayılan olarak tüm sistemlerde bulunmayan bir gereksinimdir. Aşağıdaki komutla yükleyebilirsiniz:
pip install setuptools
Kurduktan sonra, esptool.py’yi varsayılan Python yürütülebilir dizinine kurmuş olacaksınız ve onu esptool.py komutuyla çalıştırabilmelisiniz. Terminal pencerenizde aşağıdaki komutu çalıştırın:
python -m esptool
Düzgün kurulmuşsa, benzer bir mesaj göstermelidir (işletim sisteminizden bağımsız olarak):
esptool.py bilgisayarınızda yüklü ise, MicroPython yazılımını ESP32 veya ESP8266 kartlarınızı kolayca flash edebilirsiniz. Bu gönderi iki bölüme ayrılmıştır, kartınıza bağlı olarak Bölüm 1 veya Bölüm 2’yi okuyun:
- Bölüm 1 – ESP32
- Bölüm 2 – ESP8266
Not: MicroPython yazılımını ESP32 veya ESP8266’nıza yükledikten sonra geri dönüp Arduino IDE’yi tekrar kullanabilirsiniz. Arduino IDE kullanarak kod yüklemeniz yeterlidir. Ardından, MicroPython’u tekrar kullanmak istiyorsanız, MicroPython yazılımını tekrar flaş etmeniz gerekir.
Bölüm 1 – ESP32 MicroPython Yazılımını İndirme ve Flashlama
ESP32 için MicroPython yazılımının en son sürümünü indirmek için MicroPython İndirmeleri sayfasına gidin ve ESP32 bölümüne kadar aşağı kaydırın.
.bin dosyalarını indirmek için bağlantılar içeren benzer bir web sayfası (aşağıdaki şekle bakın) görmelisiniz. En son sürümü indirin. Bu makaleyi yazarken, en son sürüm v1.17 (2021-02-02).bin’dir. Nightlty yapılarını indirmeyin; bu sürümler kararlı değildir ve yalnızca ileri düzey programcılar için önerilir.
Not: Farklı bir kart kullanıyorsanız (PyBoard, WiPy veya diğer), MicroPython İndirmeleri sayfasına gidin ve kartınız için doğru bellenimi indirin.
Seri Bağlantı Noktası Adını Bulma
Her işletim sisteminde Seri bağlantı noktası adını bulmak biraz farklıdır, bu nedenle basitlik nedenleriyle ESP seri bağlantı noktası adınızı Arduino IDE aracılığıyla bulmanızı öneririz. Bu adımları takip edin:
- Kartınızı bilgisayarınıza bağlayın
- Arduino IDE’yi açın
- Araçlar > Bağlantı Noktası’na gidin
- ESP32 seri bağlantı noktası adınızı kaydedin (bizim durumumuzda COM7’dir)
- Arduino IDE yazılımınızı kapatın
Önemli: ESP32 kartınızı bilgisayarınıza taktığınızda Arduino IDE’nizde bulunan ESP32 Portunu bulamıyorsanız, bu şu iki sorundan biri olabilir: 1. USB sürücüleri eksik veya 2. Veri kabloları olmayan bir USB kablosu kullanıyorsunuz.
- ESP’nizin COM portunu göremiyorsanız, bu genellikle USB sürücülerinin kurulu olmadığı anlamına gelir. Karttaki voltaj regülatörünün yanındaki çipe daha yakından bakın ve adını kontrol edin.
Sürücüleri bulmak ve işletim sisteminize yüklemek için Google’a gidin ve özel çipinizi arayın.
CP2102 sürücülerini Silicon Labs web sitesinden indirebilirsiniz.
Kurulduktan sonra Arduino IDE’yi yeniden başlatın ve Araçlar > Port menüsünde seri portu görmelisiniz.
- Sürücüleri yüklediyseniz ancak aygıtınızı göremiyorsanız, veri kablolu bir USB kablosu kullanıp kullanmadığınızı iki kez kontrol edin.
Güç bankalarından gelen USB kablolarında genellikle veri kabloları bulunmaz. Bu yüzden bilgisayarınız ESP32’niz ile asla seri iletişim kurmayacaktır. Uygun bir USB kablosu kullanmak sorununuzu çözmelidir.
MicroPython .bin Dosyanızı Bulma
ESP32 .bin dosyasını indirdikten sonra İndirilenler klasörünüzde olması gerekir. Bu nedenle, Terminal pencerenizle cd komutunu kullanarak İndirilenler klasörüne gitmeniz gerekir:
cd Downloads
.bin dosyasının bulunduğu yerde olduğundan emin olmak için İndirilenler klasörünüzdeki tüm dosyaları listeleyin. Windows’ta şu kodu kullanırsınız:
dir
Mac OS X veya Linux’ta sonraki komutu çalıştırın:
ls
Önceki ekran görüntüsünde görebileceğiniz gibi, ESP32 .bin dosyası İndirilenler klasöründe bulunur: esp32-20190113-v1.9.4-779-g5064df207.bin.
ESP32 Flash Belleğin Silinmesi
MicroPython bellenimini yüklemeden sönmeden önce, ESP32 flash belleği silmeniz gerekir. Bu nedenle, ESP32’niz bilgisayarınıza bağlıyken, ESP32 kartınızdaki “BOOT/FLASH” düğmesini basılı tutun:
“BOOT/FLASH” düğmesini basılı tutarken, ESP32 flash belleği silmek için aşağıdaki komutu çalıştırın:
python -m esptool –-chip esp32 erase_flash
“Silme” işlemi başladığında, “BOOT/FLASH” düğmesini bırakabilirsiniz. Birkaç saniye sonra ESP32 flash belleği silinecektir.
Not: “Connecting…” mesajından sonra yeni noktaların belirdiğini görüyorsanız, bu ESP32’nizin flash modunda olmadığı anlamına gelir. ESP32’nizin flash moduna geçmesini ve silme işlemini başarıyla tamamlamasını sağlamak için daha önce açıklanan tüm adımları tekrarlamanız ve “BOOT/FLASH” düğmesini tekrar basılı tutmanız gerekir.
esptool.py ile ESP32 MicroPython Firmware Flashlama
ESP32 flash belleğiniz silindiğinde, sonunda MicroPython bellenimini flash edebilirsiniz. Seri bağlantı noktası adınıza (bizim durumumuzda COM7) ve ESP32 .bin dosya konumuna ihtiyacınız var. Sonraki komutu ayrıntılarınızla değiştirin:
python -m esptool --chip esp32 --port SERİ PORTUNUZ write_flash -z 0x1000 ESP32 BİN ADINIZ.bin
Bizim durumumuzda, komut şöyle görünür:
python -m esptool --chip esp32 --port COM7 write_flash -z 0x1000 esp32-20190113-v1.9.4-779-g5064df207.bin
Flaş komutunu çalıştırmadan önce “BOOT/FLASH” düğmesini basılı tutun. Birkaç saniye sonra görmeniz gereken şudur:
ESP32’niz MicroPython bellenimi ile başarıyla güncellendi!
Not: Bellenimi flaş etmeye çalışırken bir hata alırsanız, komutu tekrar çalıştırın ve ESP32 “BOOT/FLASH” düğmesini basılı tuttuğunuzdan emin olun.
Bölüm 2 – ESP 8266 MicroPython Yazılımını İndirme ve Flashlama
ESP8266 için MicroPython yazılımının en son sürümünü indirmek için MicroPython İndirmeleri sayfasına gidin ve ESP8266 bölümüne kadar aşağı kaydırın.
.bin dosyalarını indirmek için bağlantılar içeren benzer bir web sayfası (aşağıdaki şekle bakın) görmelisiniz. En son sürümü indirin. Bu makaleyi yazarken, en son sürüm v1.17 (2021-02-02).bin’dir. Nightlty yapılarını indirmeyin; bu sürümler kararlı değildir ve yalnızca ileri düzey programcılar için önerilir.
Seri Bağlantı Noktası Adını Bulma
Her işletim sisteminde Seri bağlantı noktası adını bulmak biraz farklıdır, bu nedenle basitlik nedenleriyle ESP seri bağlantı noktası adınızı Arduino IDE aracılığıyla bulmanızı öneririz. Bu adımları takip edin:
- Kartınızı bilgisayarınıza bağlayın
- Arduino IDE’yi açın
- Araçlar > Bağlantı Noktası’na gidin
- ESP8266 seri bağlantı noktası adınızı kaydedin (bizim durumumuzda COM4’dir)
- Arduino IDE yazılımınızı kapatın
Önemli: ESP8266 kartınızı bilgisayarınıza taktığınızda Arduino IDE’nizde bulunan ESP8266 Portunu bulamıyorsanız, bu şu iki sorundan biri olabilir: 1. USB sürücüleri eksik veya 2. Veri kabloları olmayan bir USB kablosu kullanıyorsunuz.
- ESP’nizin COM portunu göremiyorsanız, bu genellikle USB sürücülerinin kurulu olmadığı anlamına gelir. Gemideki voltaj regülatörünün yanındaki çipe daha yakından bakın ve adını kontrol edin.
Sürücüleri bulmak ve işletim sisteminize yüklemek için Google’a gidin ve özel çipinizi arayın.
CP2102 sürücülerini Silicon Labs web sitesinden indirebilirsiniz.
Kurulduktan sonra Arduino IDE’yi yeniden başlatın ve Araçlar > Port menüsünde seri portu görmelisiniz.
- Sürücüleri yüklediyseniz ancak aygıtınızı göremiyorsanız, veri kablolu bir USB kablosu kullanıp kullanmadığınızı iki kez kontrol edin.
Güç bankalarından gelen USB kablolarında genellikle veri kabloları bulunmaz. Bu yüzden bilgisayarınız ESP8266’nız ile asla seri iletişim kurmayacaktır. Uygun bir USB kablosu kullanmak sorununuzu çözmelidir.
MicroPython .bin Dosyanızı Bulma
ESP8266 .bin dosyasını indirdikten sonra İndirilenler klasörünüzde olması gerekir. Bu nedenle, Terminal pencerenizle cd komutunu kullanarak İndirilenler klasörüne gitmeniz gerekir:
cd Downloads
.bin dosyasının bulunduğu yerde olduğundan emin olmak için İndirilenler klasörünüzdeki tüm dosyaları listeleyin. Windows’ta şu kodu kullanırsınız:
dir
Mac OS X veya Linux’ta sonraki komutu çalıştırın:
ls
Önceki ekran görüntüsünde görebileceğiniz gibi, ESP8266 .bin dosyası İndirilenler klasöründe bulunur: esp8266-20180511-v1.9.4.bin.
ESP8266 Flash Belleğin Silinmesi
MicroPython bellenimini yüklemeden sönmeden önce, ESP8266 flash belleği silmeniz gerekir. Bu nedenle, ESP8266’nız bilgisayarınıza bağlıyken, ESP8266 kartınızdaki “BOOT/FLASH” düğmesini basılı tutun:
“BOOT/FLASH” düğmesini basılı tutarken, ESP32 flash belleği silmek için aşağıdaki komutu çalıştırın:
python -m esptool –-chip esp8266 erase_flash
“Silme” işlemi başladığında, “BOOT/FLASH” düğmesini bırakabilirsiniz. Birkaç saniye sonra ESP32 flash belleği silinecektir.
Not: “Connecting…” mesajından sonra yeni noktaların belirdiğini görüyorsanız, bu ESP8266’nızın flash modunda olmadığı anlamına gelir. ESP8266’nızın flash moduna geçmesini ve silme işlemini başarıyla tamamlamasını sağlamak için daha önce açıklanan tüm adımları tekrarlamanız ve “BOOT/FLASH” düğmesini tekrar basılı tutmanız gerekir.
esptool.py ile ESP32 MicroPython Firmware Flashlama
ESP8266 flash belleğiniz silindiğinde, sonunda MicroPython bellenimini flash edebilirsiniz. Seri bağlantı noktası adınıza (bizim durumumuzda COM4) ve ESP8266 .bin dosya konumuna ihtiyacınız var. Sonraki komutu ayrıntılarınızla değiştirin:
python -m esptool --chip esp8266 --port SERİ PORTUNUZ write_flash --flash_mode dio --flash_size detect 0x0 ESP8266 BİN DOSYANIZ.biz
Bizim durumumuzda, komut şöyle görünür:
python -m esptool --chip esp8266 --port COM4 write_flash --flash_mode dio --flash_size detect 0x0 esp8266-20180511-v1.9.4.bin
Flaş komutunu çalıştırmadan önce “BOOT/FLASH” düğmesini basılı tutun. Birkaç saniye sonra görmeniz gereken şudur:
ESP8266’nız MicroPython bellenimi ile başarıyla güncellendi!
Not: Bellenimi flaş etmeye çalışırken bir hata alırsanız, komutu tekrar çalıştırın ve ESP8266 “BOOT/FLASH” düğmesini basılı tuttuğunuzdan emin olun.
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.