Merhaba arkadaşlar. Bu yazıda ESP modülümüz ile Arduino’muzu haberleştirmede kullandığımız AT komutlardan bahsedeceğim.
Bu uygulamada kullanacağımız malzemeler:
Öncelikle AT komutlarını tanımlamak gerekirse, Hayes isimli bir firma tarafından oluşturulan UART haberleşmede kullanılan standart bir komut setidir. İsmini her komutun başında AT harflerinin bulunmasından alır ve özellikle GSM modülleri, fax, modem, Bluetooth gibi haberleşme birimlerinde kullanılır. Örneğin telefonunuz ile bir arama yapacağınızda telefonunuzun işlemcisi, GSM modülüne bir AT komutu yollar ve arama başlar.
Bu AT komutları yardımı ile ESP modülümüz de çeşitli fonksiyonlarını gerçekleştirebiliyor; örneğin ortamdaki kablosuz ağları bulup, bu ağlara bağlanabiliyor veya kendi kablosuz ağını kurabiliyor.
Doğrudan seri port üzerinden AT komutlarını kullanmak için Arduino ve ESP arasında aşağıdaki bağlantının yapılması gerekmektedir.
Bu bağlantıları yaptıktan sonra komutları gönderebilmek için bilgisayarımızda çalışan bir seri port terminaline ihtiyacımız var. Hem kullanım kolaylığı açısından, hem de daha sonraki uygulamalarda da kullanacağımız için ben Arduino IDE içerisinde yer alan seri port ekranı üzerinden devam edeceğim.
Komutları kullanmadan önce Arduino IDE’sinin serial port ekranında çeşitli ayarlar yapmamız gerekmekte. Yapılacak ayarlar aşağıdaki resimdeki gibi olmalıdır. Baud rate ayarını 115200’den farklı bir değerde seçerseniz modül ile haberleşmede sorun çıkacaktır. Modülünüzü güncellemediyseniz buradan güncelleme işlemini de yapabilirsiniz.
Bu ayarlar ile beraber artık komutları kullanmaya başlayabiliriz.
Serial port ekranının komut satırına AT yazdığımızda ESP modülü bize OK mesajı ile geri dönecektir. OK mesajı modül ile iletişimin sağlandığı anlamına gelmektedir.
Modül ile iletişimi sağladığımıza göre diğer komutlara geçebiliriz.
AT+CWMODE? komutu ile modülümüzü hangi modda kullandığımızı öğrenebiliriz. Eğer modül bize 1,2 veya 3 geri dönüşü yapacaktır. 1 ile dönerse modülü STA modunda yani başka ağlara bağlanabilecek şekilde kullanıyoruz anlamına gelmektedir. 2 ile dönerse modülümüz access point (AP) olarak kullanılabilmektedir. Bu mod ile yerel ağ kurulabilip, diğer WiFi cihazları modülümüze bağlayabiliriz. Modül bize 3 ile dönerse hem STA hem de AP olarak çalışmaktadır.
Modülü STA moduna sokmak için AT+CWMODE=1 komutunu vermemiz gerekmektedir. Diğer modlar için de ilgili sayıyı yazmak yeterli olacaktır. Eğer ortamdaki ağlara bağlanmak istiyorsak STA modunda çalıştırmamız gerekiyor.
AT+CWLAP
Bu komutu kullandığımızda ortamdaki tüm ağlar taranıp listelenmiş bir şekilde karşımıza çıkıyor. Şimdi bu ağlardan bir tanesine bağlanmayı deneyelim.
Bir ağa bağlanmak için AT+CWJAP=”wifi-adı”,”wifi-sifresi” şeklinde bir komut kullanıyoruz. Örnek olarak ismi bartu şifresi de robotistan olan bir ağa bağlanmak için AT+CWJAP=”bartu”,”robotistan” yazmamız yeterli olacaktır. Eğer modülümüz WiFi ağına bağlanırsa;
WIFI CONNECTED
WIFI GOT IP
OK
şeklinde geri dönüş yapacaktır.
Bu komutların dışında, AT+CWQAP komutu ile WiFi bağlantısını sonlandırabilir, AT+CIFSR komutu ile IP adresinizi öğrenebilirsiniz. Modül ile ilgili tüm komutlara buradan ulaşabilirsiniz.
Merhaba,
Bağlantıyı aynı şekilde yapmama rağmen serial port üzerinden haberleşme yapamıyorum. Önceki yazınızdaki anlatımınızdaki gibi güncellemeyi de yaptım ama güncellemenin olup olmadığndan da emin değilim.
Merhaba Muhammed Bey,
Güncellemeyi yaparken Rx ve Tx bacaklarını doğru taktığınızdan emin olun. Güncellemeyi yaparken Arduino güçte ise gücü söküp tekrar takın böylece kendini güncelleme moduna sokacaktır. Haberleşmeyi yapamamanızın nedeni de yine rx-tx bacakları veya BaudRate değerinin hatalı ayarlanmış olması olabilir.
ESP8266 bağlantılarını yapıp AT komutları ile haberleşmiştim ama sonrasında internet üzerinden LED yakma projesini yapmaya çalışırken bir türlü haberleşme sağlanamadı. Sonra tekrar AT komutlarını çalıştırmayı deneyince anlamsız karakterler çıkmaya başladı. AT yazınca OK yanıtını vermemeye başladı. Sonra yeniden anlamsız karakterler çıkmaya başlayınca baudrate i yeniden değiştirdim. Bu sefer
“Fatal exception (0):
epc1=0x40100003, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000000, depc=0x00000000” şeklinde bir hata almaya başladım. Bunu nasıl düzeltebilirim?
Cevabınız için teşekkür ederim. Tüm bağlantılar rx-tx hepsi doğru bağlı ve baudrate değeri de doğru olmasına ragmen haberleşme olmuyor. ESP’nin ışığı yanıyor, güncelleme işlemi için de gücü kesip tekrar bağladım tekrar denedim işlem tamamlanmıyor.
at ok komutunu alıyorum fakat internet baglanmıyor
OK geridönüşünü alıyorsanız, haberleşmeyi yapıyorsunuz demektir. “AT+CWLAP?” yazdığınızda bir geri dönüş olmuyor mu? Seri monitörde ESP’nin gördüğü ağların listelenmesi gerekiyor.
İyi günler ben modül ile haberleşme yapabiliyorum ama ağa bağlanmak istediğimde modül resetleniyor şu şekilde bir hata alıyorum;
ets Jan 8 2013,rst cause:4, boot mode:(3,0)
wdt reset
load 0x40100000, len 612, room 16
tail 4
chksum 0x12
load 0x3ffe8000, len 788, room 4
tail 0
chksum 0x50
load 0x3ffe8314, len 264, room 8
tail 0
chksum 0x4a
csum 0x4a
2nd boot version : 1.1
SPI Speed : 40MHz
SPI Mode : QIO
SPI Flash Size : 4Mbit
jump to run user1
sl
ready
bu hatadan sonra modül ile bağlantı kopuyor ve gücü kesip sonra tekrar vermeden bağlantı kurulamıyor. ne yapmam lazım?
farklı bir güç kaynağına bağla aynı sorun bendede vardı düzeldi
toprak ve 3.3v arasına 470 mf kondansatör takınca düzeldi.
OK
AT+CWMODE=?
+CWMODE:(1-3)
OK
AT+CWMODE=1
OK
AT+CWMODE=1
OK
AT+CWMODE=1
OK
AT+CWMODE=1
OK
AT+CWMODE=1
OK
AT+CWLAP
+CWLAP:(3,”TP-LINK_C2CE”,-82,”ec:08:6b:6c:c2:ce”,5)
+CWLAP:(4,”MUCAHIT”,-56,”58:2a:f7:41:b4:fd”,5)
+CWLAP:(3,”NetMASTER Uydunet-0511″,-69,”00:1c:7b:cc:4b:f2″,6)
+CWLAP:(3,”ZyXEL3372cV5″,-68,”c8:6c:87:45:3d:58″,6)
+CWLAP:(3,”Menekse”,-89,”f8:3d:ff:8f:ab:15″,9)
+CWLAP:(4,”HALILU”,-77,”dc:ee:06:3a:bc:dc”,9)
+CWLAP:(3,”DEDEOGLU”,-50,”fc:4a:e9:46:fd:67″,11)
OK
AT+CWJAP=”wifi ismini giriyorum”,”sifreyi giriyorum”
+CWJAP:3
FAIL
sonuç bu oluyor diğer kısımlarda hiçbir sorun yok bplanma kısmı hariç yardımcı olabilirseniz çok memnun olurum
Bu hata, ESP8266 modülünün firmware’inden kaynaklı bir bug olabilir. Kablosuz ağınızın adı 10 karakterden uzun ise bu şekilde bir hata almanız olasıdır. Ağınıza farklı bir isim vererek bağlanmayı deneyebilirsiniz.
Arkadaşın bahsettiği olayın aynısı bende de mevcut malesef. Kablosuz ağım 10 karakterden fazla değil ayrıca. Herhangi bir öneriniz var mı acaba?
Merhabalar. Eğer wifi adında veya şifresinde türkçe karakter varsa, ingilizce olcak şekilde değiştirmenizi öneririm.
Orada şu tırnakları(” ”) bulunan ağlardaki tırnakları kopyalayın oluyor virgülüde aynı şekilde kopyalayıp komut satırındaki ” ” tırnaklar ile değiştirin. sonra OK geri dönüşü alırsınız
Kardeşim sen gerçek bir kralsın. Sen benim gözümde Süpermensin. Eyvallah
iyi günler şimdi arduino uno yu esp 07 modülüme bağladım.
uno esp07
rx rx
tx tx
3.3v vcc
3.3v En
gnd gnd
gnd GPIO15
bu bağlantıdan sonra arduino ide yi açtım.Kart hala uno seçili programcı rastgele ve 115200 baud ta nl ve rn seçili iken serial ekranında
Ai Thinker tec…
ready yazdığını görüyorum.Bunu her vcc yi kesip tekrar verdiğimde görüyorum.
ama AT KOMUTUNA bir cevap alamıyorum.Yardım lütfen esp07 modülüm var
Bağlantı ve herseyi aynısı gibi yaptım at ok ile dönmüyor daha önce bir kaç kez bu uygulmayı yapmıstım sorunsuz calısmıstı.Arduino sürümü 1.8.0 ondan olurmu board kısmında herhangi bir seçim mi yapacagım yoksa bana yardımcı olabilir misiniz?
Fatal exception (2):
epc1=0x3ffe839c, epc2=0x00000000, epc3=0x00000000, excvaddr=0x3ffe839c, depc=0x00000000
yazıyor sürekli seriportta neden olabilir?
Merhaba,
ESP8266’yı güncelliyorum, ve yeşil OK işaretini alıyorum.
Ancak hiçbir şekilde AT komutuna OK dönmüyor.
VCC – 3.3V
CHPD – 3.3V
GND – GND
RX-TX, TX-RX (bunu diğer şekilde de denedim)
NL&CR – 115200
ESP8266 üzerinde sadece kırmızı Led yanıyor
Neye dikkat etmeliyim?
Teşekkürler
ARDUNODA BAŞKA BİR PROGRAM YÜKLÜ BU ETKİLERMİ AT HABERLEŞME İÇİN ARDUNOYA PROGRAM YÜKLEMEK GEREKİRMİ OK ALAMIYORUM
Arduinoya boş program (Examples -> Basics -> BareMinimum) yüklemeniz gereklidir.
adamın dibisin.
Haberleşme olmuyor.Ne yapayım?AT yazıyorum cevap yok.Her şeyi de anlattığınız gibi yaptım.Modül güncel de.
Merhabalar hocam ben güncellemeyi yaptım fakat at komutuna ok diye bir cevap alamadım.Bozuk bir yazı ile karşılaştım.
At +gmr komutunu girince ⸮⸮H⸮⸮⸮⸮1t böyle bir ifade ile karşılaştım. Sebebini biliyor musunuz ?
⸮HΌ⸮⸮⸮⸮
⸮
⸮⸮H
H⸮(⸮⸮⸮⸮1t
⸮H⸮⸮ ⸮⸮⸮H.@ (H5
Baud rate’iniz yanlış ayarlanmış olabilir.
iyi günler ben bunu arduino uno ile denedim esp modülüm çok iyi çalıştı. aynı aşamaları arduino mega ile denedim hiçbir komuta cevap vermiyor ne yapmam gerekiyor?
ARKADAŞLAR unoda 3.3 volt un yanındakı reset pini gndye birleştirin daha sonra yukarıdaki aşamları takip edin
Arkadaşlar esp8266 AT KOMUT .BIN DOSYALARINDA SON VERSİYON KAÇ OLDU?
Arkadaşlar selamlar, ESP8266 Modülünde AT komutları ile baud rate değiştirilebiliyor. Değişim yapabilmek için AT+IPR=19200 yapmanız yeterli.
merhaba. unoda çalışıyor ancak nano’da çalıştıramadım. ne yapılması gerekiyor?
UNO ile Nano birebir aynı işlemciye sahiptir, teorik olarak çalışması gerekir. Aldığınız hatayı yazabilirseniz daha kolay yardımcı olmaya çalışırız.
bağlantıyı birebir aynı şekilde yapmama rağmen at komutlarına herhangi bir yanıt alamıyorum. söküp aynı şekilde uno’ya bağlıyorum onda çalışıyor. bu arada iki farklı nano’da denedim.
Merhaba,arduino ve esp8266 haberleşmesini sağlayamadım.Öncelikle firmware güncellemesi yaptım.En son yeşil tık yandı.sonra com dan AT komutu gönderim ama hiçbir cevap vermiyor.Tüm komutları denedim.Ama hiçbiri yanıt vermiyor.arduinoyu boş kodla çalıştırdım ,resetledim herşeyi denedim ,Ama olmuyor neden olabilir acaba ?
Baud rate’i değiştirmeyi denediniz mi? Ayrıca modülü programlama moduna sokmak için GPIO0 pinini low’a çekmeniz gereklidir. AT modunu bu şekilde bağlantı yapıldığında kullanamazsınız.
Arduino ve esp8266 haberleşmesini sağlayamadım.usb(FT 232 RL FTDI) ile olur mu??
3.3V uyumlu bir FTDI adaptör veya kablo kullanabilirsiniz (örneğin bu ürün).
merhaba, ders 2 de thinspeak e sıcaklık yollama örneğini anlatıldığı yapıyorum değerleri alıyorum yalnız bu bağlantılarla AT konutlarına cevap alamıyorum boş örnek yükledim. com ekranına AT komutunu yazıyorum komut ne görünüyor ne de cevap geliyor. baud rate doğru güncelleme tamam. fakat aynı bağlantı reset ile gnd yi birleştirip rx i rx e tx i de tx e bağlayınca AT komutları çalışıyor yalnız bu şekilde de thingspeak örneği çalışmıyor. bişeyleri yanlışlıkla doğru ya da doğruyu yanlış mı yapıyorum? teşekkür ederim.
Kendi yanlışımı kendim düzelteyim: ders 2 deki bağlantılarla AT komutları çalışmıyor demiştim. ders 2 ile ders 3 teki rx ve tx bağlantıları farklıymış, dikkat etmemişim. düzeltince AT komutlarına cevap alabildim.
Hocam AT+RST yazdıktan sonra sürekli mavi ışık yanmaya bağladı ve hiç bir komut çalışmıyor şuan bunu nasıl düzeltebilirim?
Aynısı bendede oluyr şuanlık kabloları çıkar ta yaparak düzelttim ancak bunun bir çözümü varsa güzel olur
** AT KOMUTUNA CEVAP ALAMAYANLAR 115200 Seçtiğimiz Baud Rate solunda ki “satır sonu” kısmını “NL ve CR ile birlikte” seçip denesinler. Bende AT komutuna cevap alamıyordum bunu denedim oldu. Ne olduğu konusunda bilgisi olan bilgilendirirse güzel olur.. İyi çalışmalar..
Güncelleme başarılı şekilde oldu. Bütün bağlantılar doğru fakat AT komutuna cevap vermiyor..
MERHABA Serial portu açtığımda arduino bana anlamsız karakterler gönderiyor” {⸮⸮og’cc⸮l {d{⸮⸮⸮⸮⸮⸮l⸮cd⸮s#lcd⸮s{l” sebebi ne olabilir?
baud rate’i ayarladım
Arkadaşlar merhaba,
bir türlü AT komutuna OK dönüşünü alamıyorum. esp yi güncelledim ama cevap alamıyorum AT komutuna. lütfen yardımcı olabilir misiniz?
güncellemeyi buradan yaptım esp cevap verdi
http://www.gokhanaltan.com/index.php/2017/03/21/esp8266-firmware-guncellemesi/
SEN NASIL BİR KRALSIN ALLAH NE MURADIN VARSA VERSİN. 2 GÜNDÜR UĞRAŞIYORUM HERŞEYİ DENEDİM ÇÖZEMEDİM HİÇBİR ŞEKİLDE AKLIMIN UCUNA DAHİ GELMEDİ FİRMWARENİN YANLIŞ OLACAĞI ALLAH SENDEN BİN KEZ RAZI OLSUN. HOCAM LİNKİ DENEYİN ÇALIŞIYOR BURADA ANLATTIĞINIZ ÇALIŞMIYOR LÜTFEN YAZINIZI GÜNCELLEYİNİZ ROBOTİSTAN EKİBİ RİCA EDİYORUM
Merhaba, ben Arduino Uno ile hc06 bluetooth modülü kullanarak nabız ölme uygulaması üzerinde çalışmaktayım. Ancak hc06 buetooth modülü üzerindeki kırmızı ışık yanmıyor bu sebeple cihaz eşleşmesi de sağlanamıyor. Fakat bluetooth modülünde herhangi bir sıkıntı yok, farklı devrelerde çalışıyor. Önceleri normal bir şekilde çalışıyordu sonradan böyle bir durum oluştu. Yardımcı olursanız sevinirim, teşekkür ederim.
Merhaba.
Bir önceki yazınızda anlattığınız gibi güncelleme yükledim at komutları çalışmıyor.
Güncelleme yüklemeden önce at komutları çalışıyordu. Yardımcı olabilir misiniz?
ESP8266 hassas ve nazlıdır. öncelikle enerji kısmında çok hassastır.gördüğüm kadarı ile birçok kişi arduino nun 3v kısmından direkt enerji alıyorsunuz. ilk yanlış burdur. ardunio 3v beslemesi dsp için yetersizdir. 5v ise fazladır esp nizi yakarsınız çöp edersiniz.
diğer sorun baud rate olayıdır. baud rate’ yüksek hızlarda ilken esp saçmalıyor.
bir diğeri de güncellemelere dikkat edin.
bir çok sorun düzelecektir.
selamlar bende her 10 sn de böyle bir uyarı alıyorum neden olabilir
DHCP TIMEOUT
WIFI DISCONNECT
WIFI CONNECTED
Bu şekilde bağlantıyı yapınca port bölümünde port gözükmüyor. Arduino nano kullanıyorum. Farklı arduinolar ve esp8266’larda denedim. Yardımcı olabilir misiniz? Ücretli destek dahi olabilir.
Lütfen yardımcı olun Firmware güncellemesini yaptım oldu arduinoya boş kodu yüklemiştim daha sonra baund rate’yi de ayarladım nl ve cr ile birlikteyide yaptım . o değişik yazılar çıktıktan sonra ready mesajını alamıyorum bütün bağlantılar doğru eminim AT komutları çalışmıyor hiç birşey çıkmıyor. lütfen yardımcı olunnnn 🙁
bilgisayar kullanırken çok eğleniyorum ama bir türlü bu kodu çözemedim…
Bir makinenin sıcaklık sensörü pt100 dür. Bu sıcaklık sensörünün bize vermiş olduğu bilgileri oradan alıp esp8266 ve arduino ile web sitesine atmak istiyorum. Mümkün mü bu modül ile yapmak
23:47:10.011 -> ets Jan 8 2013,rst cause:4, boot mode:(3,0)
23:47:10.011 ->
23:47:10.011 -> wdt reset
23:47:10.045 -> load 0x40100000, len 612, room 16
23:47:10.045 -> tail 4
23:47:10.045 -> chksum 0x12
23:47:10.045 -> load 0x3ffe8000, len 788, room 4
23:47:10.045 -> tail 0
23:47:10.045 -> chksum 0x50
23:47:10.045 -> load 0x3ffe8314, len 264, room 8
23:47:10.045 -> tail 0
23:47:10.045 -> chksum 0x4a
23:47:10.045 -> csum 0x4a
23:47:10.045 ->
23:47:10.045 -> 2nd boot version : 1.1
23:47:10.045 -> SPI Speed : 40MHz
23:47:10.045 -> SPI Mode : QIO
23:47:10.045 -> SPI Flash Size : 4Mbit
23:47:10.045 -> jump to run user1
23:47:10.045 ->
23:47:10.113 -> Fatal exception (9):
23:47:10.113 -> epc1=0x4021b8a0, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000043, depc=0x00000000
23:47:10.113 -> Fatal exception (0):
23:47:10.113 -> epc1=0x4025fe07, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000043, depc=0x00000000
23:47:10.113 -> Fatal exception (0):
23:47:10.113 -> epc1=0x4025fe04, epc2=0x00000000, epc3=0x00000000, excvaddr
Tüm bağlantılar doğru, Arduino UNO kullanıyorum, içerisinde Blink kodu dönüyor ancak ESP8266 modülümün üzerinde yer alan mavi ışığı sadece arduinoya giden gücü kesip tekrar bağladığım an anlık olarak yanıyor ancak kırmızı led sürekli açık ve hep bu hatayı veriyor. Yardımcı olursanız sevinirim
Benimkinde 9600 baudrate ve NR ve CL birlikte seçeneklerinde oldu. Eğer sizinki de hata veriyorsa bunları deneyebilirsiniz.
Merhaba
Ben ardinuo ile değil de STM32 kartı ile esp’yi bağladım ve ağ kurmam gerekiyor bilgisi olan yardımcı olabilir mi? 🙂
Çalışmıyor ise Firmware güncellemesini buradan yapın. http://www.gokhanaltan.com/index.php/2017/03/21/esp8266-firmware-guncellemesi/
Ben aldığım hataları yazacağım. Sorunla karşılaşanlar için belki yardımı olur. AT+CWLAP yazdıktan sonra OK mesajı dışında herhangi bir ağ algılanmadı. AT+CWJAP=”ağ adı”, “ağ şifresi” girdikten sonra da bağlantı gerçekleştirilemedi. Attığım linkteki uygulamada default butonu var. Oraya basıp ayarlamaları varsayılan değere getirdikten sonra tekrar yüklemeyi denedim. AT+CWLAP komutu bunu gerçekleştirdikten sonra çalıştı. AT+CWJAP komutu bağlandı gösterip WIFI GOT IP mesajı gelmeden bağlantı geri kesildi.
AT+RESOTRE
AT+GMR
AT+CWMODE=3 (ya da 1)
AT+CWLAP
komutlarını tekrar yazdıktan sonra ağ tekrar bağlanabildim.
https://bbs.espressif.com/viewtopic.php?t=2275