Arduino hataları’nın bir çok sebebi olabilir. Bu sorunlar genellikle Arduino ile bilgisayar arasındaki haberleşme sorunlarından, klon Arduino’ların sürücülerinin yüklü olmamasından, Arduino’nun veya bilgisayardaki USB portlarının arızalı olmasından kaynaklanabilir. Bunların haricinde derleme ve programlama öncesinde kullanıcının gerekli ayarları yapmaması da bazen hata mesajı gelmesine yol açmaktadır. Örneğin programlamak için bilgisayarınıza Arduino Nano bağladınız fakat Arduino IDE’de Arduino Uno programlayacağınızı belirttiniz. Bunun sonucunda bir hata mesajı almanız kaçınılmazdır.
Arduino IDE’de tüm kurulum ayarlarını doğru yaptınız, Arduino’nuz da bilgisayarınız ile haberleşmede sorun yaşamıyor fakat IDE’de belli bir satır belirtilerek hata mesajı alıyorsunuz… Bu, çözümü en kolay sorun. IDE’de gösterilen satırda bir yazım hatası yapmışsınız demektir. Yanlış yere parantez koyma, satır sonuna ‘;‘ koymama gibi hatalardan dolayı böyle bir geri bildirim alırsınız. Fakat yazım yanlışlarının çözülmesi veya kodlamada herhangi bir yazım yanlışı yapılmaması, programın tamamen sizin istediğiniz gibi çalışacağı anlamına gelmez. Bunun için kurduğunuz algoritmanın doğru olması gerekir.
Arduino Karta Yüklenirken Sorun Oluştu veya Taslak Yüklenirken Bir Hata Oluştu
avrdude: ser_open(): can't open device ".COM1: Access is denied. avrdude stk500_recv() programmer is not responding avrdude stk500_getsync() attempt 1 of 10 not in sync resp=0x01 avrdude stk500_recv() programmer is not responding avrdude stk500_getsync() attempt 2 of 10 not in sync resp=0x01 ...
Bu sorunla karşılaştıysanız, muhtemel sebeplerini ve çözümlerini inceleyebilirsiniz. Böylece port sorununu, driver hatalarını aşmış, kartınızı kontrol etmiş olursunuz. Ayrıca bazen bu çeşit bir hatayı “taslak yüklenirken bir hata oluştu” şeklinde de alabilirsiniz, aynı çözüm yollarını denemenizi tavsiye ederiz.
Yanlış COM Portu veya Yanlış Arduino Kartı Seçilmiş Olabilir
Arduino’nuzu bilgisayarın bir portuna bağlayın. IDE’de Araçlar>Kart kısmından bağlı olan Arduino modelini seçin. Sonrasında Arduino Araçlar>Port kısmına gelip bağlı olan portu işaretleyin (Örnek: COM3). COM portu doğru belirlenmişse Arduino’yu bilgisayarınızın farklı bir portuna takarak tekrar deneyin.
Gerekli Sürücüler Yüklenmemiş Olabilir
Arduino kartları bazen sürücü yüklemesi sebebiyle hata verebilmektedir. Gerekli sürücüler bilgisayarınızda yüklü değil ise bu sayfamızda yer alan, Arduino Uno’yu örnek göstererek anlattığımız yazımızı okuyarak bu sorunu çözebilirsiniz.
DETAY: Arduino’nun 0.pininde (RX) Bir Bağlantı Var mı?
Bu her zaman için geçerli bir kural olmasa da bazen Arduino’nun 0. pininde bir bağlantı olduğunda bu sorunla karşılaşabiliyorsunuz. Programlama esnasında bu pinde herhangi bir bağlantı olmadığından emin olun.
Arduino Derleme Sırasında Bir Hata Oluştu (Exit status 1, Error compiling for board Arduino/Genuino Uno)
Bu hata ile karşılaşıyorsanız Arduino IDE’de yazdığınız program derlenirken, yani henüz daha program karta atılmadan önce hazırlanırken bir sorun olmuş demektir. Genellikle bu sorunun birkaç sebebi vardır.
Gerekli Kütüphanelerin Bulunmaması
Yazdığınız programda kullandığınız elektronik ekipmana göre farklı kütüphanelere ihtiyacınız olabilir. Her kütüphane Arduino IDE’de hazır olarak bulunmaz. Bu yüzden ihtiyacınız olan kütüphaneleri belirleyip indirmeniz gerekir. İndirdiğiniz kütüphaneyi bilgisayarınızda C:ArduinoKuruluOlduguKonumLibrary dosyasına aktardığınızda başarıyla bu kütüphaneyi elde edebiliyorsunuz. Sonrasında ise yazdığınız programın ilk satırına #include <kutuphane.h> yazarak kütüphanenizi programınızda kullanabilirsiniz.
“Syntax” Hatası (Yazım Yanlışı)
Belki de karşılaştığınız sorun çok daha basit bir şey olabilir. Örneğin syntax hatası, yani yanlış sözdizimi… Açılan her parantez, köşeli parantez ve süslü parantezin kapatılması, komut sonlarına ‘;‘ konması, büyük/küçük harf uyumu gibi temel kurallara uyulmadığı takdirde yazılan program derlenmez. Bu sebeple programı yazarken yazım yanlışı yapmamaya dikkat etmek gerekir. Böyle bir durumda Arduino IDE hangi satırda hata yaptığınızı karşınıza çıkartabiliyor, bir diğer yandan da aşağıda çıkan hata raporunda belirtiyor.
“Örnek.h” için birden fazla library bulundu
Aynı kod içersinde örneğin WiFi.h kütüphanesini çağırdığınız fakat, aynı fonksiyona denk gelen farklı kütüphaneler mevcut. Bu durumda kullanamdığınız kütüphaneyi, kütüphane klasörünüzde silmeniz gerekiyor.
“taslak yüklenirken bir hata oluştu”
Öncelikle gerekli sürücüyü tekrar kurun, buradan indirip kurabilirsiniz. Sürücüyü kurduktan sonra program yükleme esnasından doğru PORT’un ve KART’ın seçili olduğundan ve 0., 1. (RX, TX) pinin boş olduğundan emin olun. Büyük ihtimalle sorun çözülecektir, hala bir hata ile karşı karşıyaysanız bize yazmaktan çekinmeyin.
main file missing from sketch
“Kütüphane”, taslağınıza tırnak içine alınmışsa, ör. #include “kutuphane.h”, o zaman onu taslakla aynı klasörde tutmalısınız.
Köşeli parantezlere dahil edilmişse, ör. #include <kutuphane.h> standart kitaplık klasöründe olmalıdır.
Farklı Bir Kart Versiyonu ile Deneyin(Genel Çözüm)
Bazen eski geliştirme kartlarına uygun olarak hazırlanan kart kütüphaneleri, yeni kartların çıkması ile uyumsuz hale gelebiliyor, bu yüzden güncel bir kütüphaneyi kullanmak sorunlar çıkarabilir. Aşağıdaki adımları izleyerek kart versiyonu değiştirebilirsiniz, size en uygun olanı deneme yanılma ile bulabilirsiniz.
Araçlar>Kart>Kart Yöneticisi
Versiyon değişikliği yaptıktan sonra mutlaka Arduino IDE’yi kapatıp tekrar açın.
Önyükleyici yazdırılırken hata oluştu.
Bu hatayı alıyorsanız, önyükleyici yani bootloader problemi ile karşı karşıyasınız demektir, klon kartlarda sıklıkla görülen bir hatadır. Yükleme aşamlarını şu şekilde yaparsanız yüksek ihtimalle sorun çözülecektir:
Taslak > Yükle, kart bu yolla kod yüklerken hala sorun alıyorsanız, Programlayıcı Kullanarak Yükle seçeneği ile deneyebilirsiniz.
avrdude: verification error; content mismatch
Kartınız durduk yere bu hatayı vermeye başladıysa, bootloader problemi yaşıyor olabilirsiniz. Bu adımları izleyerek kartınıza tekrar bootloader yükleyebilirsiniz. Ayrıca sadece bootloader yükleme işlemi için hazırladığımız bu yazıya bakabilirsiniz.
Bağlantıları doğru bir şekilde yapmanız gerekiyor, kartınız farklı ise, farklı yerlere denk gelen pinleri bulup aynı bağlantıları yapabilirsiniz.
Bootloader’i yüklemeden önce, programlayıcı kartımızı “Arduino as ISP” moduna almamız gerekiyor. Bunu Arduino IDE > Araçlar > Programlayıcı > Arduino as ISP olarak seçerek yapabilirsiniz.
Programlayıcı kartımızı ISP moduna aldıktan sonra, Örnekler > ArduinoISP örneğini programlayıcı karta yükleyin.
Bu kodu yükledikten sonra, bozuk bootloader’li kartımızı tekrar kullanılabilir bir hale getirebiliriz, bunun için:
Araçlar kısmına gidip, bağlantıların ve doğru portun seçili olduğuna emin olduktan sonra “Burn bootloader” ya da “Önyükleyici Yazdır” butonuna basabilirsiniz.
Kartınız kullanıma hazır bir hale bu şekilde gelir.
‘Klavye’ bulunamadı. Taslağınızda….
Bu hatanın sebebi, uyumlu olmayan bir geliştirme kartı ile, klavye ya da mouse kontrolü yapmaya çalıştığınızda olur. Arduino geliştirme kartlarının hepsi USB(klavye, mouse) desteklemez, destekleyen modeller:
- Leonardo
- Micro
- Due
ya da bu denetleyici sahip olan kartlar:
- ATmega32U6
- ATmega8U2
- ATmega16U2
- ATmega16U4
- ATmega32U2
- ATmega32U4
Eğer bu kartlar dışında farklı bir karta sahipseniz örneğin Uno, bu hatayı alırsınız. Eğer yukarıdaki kartlardan biriyle işlem yapmaya çalışırken bu hatayı alıyorsanız, Arduino IDE’de kart kısmında, kullandığınız kartı seçmelisiniz, ardından sorun çözülecektir.
Compilation error: Error: 2 UNKNOWN: no FQBN provided
Derlerken veya yüklerken, çıktı panelinde aşağıdaki hata görünür:
Compilation error: Error: 2 UNKNOWN: no FQBN provided
FQBN, ‘Fully Qualified Board Name’ anlamına gelir. Kodu derlerken veya yüklerken, herhangi bir kart seçilmemişse veya kart çekirdeği takılmamışsa bu hata oluşur.
Herhangi bir kod yüklemeseniz bile bir kartın seçilmesi gerektiğini unutmayın.
Bir Kart Seçildi mi?
Bir kart seçilmeden kod derlenemeyeceğinden, tam olarak bunu sağlayarak başlayacağız.
Biraz yukarıdaki gibi görünüyor olmalı. Kartınız adı kart seçme çubuğunda görünmelidir. Bu, kartın herhangi bir bağlantı noktasında bulunmadığını gösterir ancak bu, kodun derlenmesini engellemez.
Hiçbir kart seçilmedi yazıyorsa, bir kartın seçilmesi gerekir. Açılır menüyü açmak için tıklayın:
Takılı bir kartınız varsa ve o kart için kod yazmak istiyorsanız, açılır menüden onu seçebilirsiniz. Aksi takdirde, ‘Diğer Pano ve Bağlantı Noktası Seç’i seçin.
Amaçlanan kartı seçin. Bir bağlantı noktası seçmeniz gerekmez. ‘Tamam’ı tıklayın.
İlişkili kart çekirdeği kurulu değilse, aşağıdaki açılır pencereye bakın.
Bu durumda, gerekli çekirdeğin yüklenmesi için ‘Yes’i seçin.