ESP8266 Sorunu
-
Değerli Tahribat üyeleri iyi akşamlar öncelikle ,
ESP8266 yı daha önce 3.3 V ile kontrol ederdim sorunsuz bir şekide. Fakat artık saçma sapan bir çıktı üretiyor bana.
Sonsuz döngü de şu şekilde çıktı geliyor karşıma
WIFI CONNECTED WIFI GOT IP ets Jan 8 2013,rst cause:4, boot mode:(3,7) wdt reset load 0x40100000, len 1396, room 16 tail 4 chksum 0x89 load 0x3ffe8000, len 776, room 4 tail 4 chksum 0xe8 load 0x3ffe8308, len 540, room 4 tail 8 chksum 0xc0 csum 0xc0 2nd boot version : 1.4(b1) SPI Speed : 40MHz SPI Mode : DIO SPI Flash Size & Map: 8Mbit(512KB+512KB) jump to run user1 @ 1000 {$�ÃslÌÿ Ai-Thinker Technology Co.,Ltd. ready WIFI CONNECTED WIFI GOT IP
Ben bunu 5 V Taktığımda sorun ortadan kalkıyor.. Fakat şöyle bir sorun var ki. 5V a taktığımda sorunsuz calısıyor ama kendi DATASHEET'inde 3.3 V Bağlantıların tümü...
Bu kartımı yakar mı ? 3.3 V yerine 5 V da devam etsem sorun olur mu ? Yada bu hatanın çözümü nedir ? Bilgisi olan var mıdır acaba ?
-
3,3 Volt üzeri kartı yakar. Kullandığın modül hangisi? http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family ya da bir devboard mı kullanıyorsun. Devboardlar üzerinde genellikle voltaj regülatörü bulunur fakat her koşulda IO voltajı 5V töleranslı değildir. Her koşulda yakarsın yani.
rst cause 4, watchdog timer'ın yol açtığı reset (kaynak: http://www.esp8266.com/viewtopic.php?p=2096#p2112). watchdog timer'ı sonsuz döngüde arada bir resetle ya da sleep, yield falan ekle döngü içinde. Uzun süren işlemlerde kendini resetler: https://github.com/esp8266/Arduino/pull/2533/files
Yazılımsal watchdog'u kapatsan ya da elle resetlesen bile donanımsal olanın devreye girmeden önce 7-8 saniyen var. Yani işlemciyi boş bırakma:)
-
YeniHarman söylemiş zaten, esp8266 3v3 ile besleniyor ve logic portları da 5v toleranslı değil. Bunun önüne geçmek için hazır logic level shifter kullanabilirsin. Yada sadece işlemcinin tx portunu zener ve dirençle 3v3 volta sabitleyebilirsin. Rx portunda herhangi bir işlem yapman çok gerekli değil.
-
Esp değil de belki node mcu ya da türevimbir şey kullanıyorsan 5v ile beslemen gerekiyor olabilir
-
Kullanmış olduğum ESP modülü
http://www.instructables.com/id/Getting-Started-With-the-ESP8266-ESP-01/
Şimdi öncelikle Bu sorun sadece WIFI 'a bağlandığında oluyor. Yani X Wifi ağına bağlantı gerçekleştirildiği anda modül kendini sonsuz döngüde resetliyorsanırım.
Birkaç PY kodu buldum fakat bunu ESP üzerinde nasıl koşturacağımı bilmiyorum. Py ci değilim. Herhangi bir C kodu vs de bulamadım..
Modülün içerisinde herhangi bir Kod göndermedim. Sadece AT Komutları ile modülü kontrol edip modülden gelen veriye göre Arduino'yu hareket ettiriyorum..
Modülü STA modunda yani AT+CWMODE=1 şeklinde kullanıyorum. Bir Http server var üzerinde Web api tarzı kullanıyorum şimdilik..
3.3 V da daha önce muhteşem bir şekilde çalışır iken dün projemize devam ettiğimizde 3.3 V a taktığım anda resetleniyor.
Internette çokça araştırdım ve çoğu kişi bağlantıların yanlış olduğunu söylüyor... Bağlantılarım doğru.. her neyse.
Devremiz budur. 5 v a bunu bağladık ve tekrar aynı sorun ile karşılaştık.. Tekrar kendini resetliyor anlamadığımız bir şekilde..
1-2 saat boyunca 5 V da çalıştırdım bende uyuz oldum projeye devam etmem gerekiyordu (Yanarsa yeni bi tane alırım kafası ile) mecburen devam ettim ve herhangi birşey olmadı karta şuan iyi bir şekilde calışıyor..
Arduino içerisinde kod atarken RX ve TX pinlerine bağlantıları hiç takmadık...
Okuduğum bir makaleye göre
loop(){ while(true) { //Kodlar burada } }
Şeklinde yazar isem düzgün çalışacağını söyledi denedim olmadı.. Sanırım burdaki mantık arduino loop'u yerine kendi sonsuz döngümüzü yazmamız.. Neden böyle bişey yapmayı önermiş onu da anlamadım her neyse..
https://arduino.stackexchange.com/questions/26587/wdt-software-reset-in-esp8266-arduino-ide
Şurada YeniHarman , abimin dediği gibi her döngü de ESP.reset(); Komutunu göndermem gerektiğini söylüyorlar fakat ESP.reset(); komutu ney ? Hangi kütüphane bu ne saçma bir köpek bu . ESP yi resetlemek için neyi bekliyor anlamadım yada bunu resetlemesini tetikleyen nedir ? Belki onun önüne sonsuz döngüde birşeyler yazarım..
-
at firmwareyi tekrar flashlamayı dene. tam bağlantı şemanı gösterirsen daha fazla yardımcı olurum. anlaşma konusunda çok sıkıntımız var☺
-
Bağlantım tam olarak bu şekilde kodu atarken de RX TX pinlerini çıkartıyorum
Edit ; 3.3V da değil 5 V Da benimki :/
MhmdAlmz tarafından 27/Nis/17 23:04 tarihinde düzenlenmiştir -
anlaşamayacağız. seri iletişim ile at komutları yolluyorsan esp üstünde at firmware vardır. sürekli reset atıyorsa flash üzerindeki yazılım bozulmuş olabilir. flash üstündeki veri hem yüksek hem düşük voltaj nedeniyle bozulmuş olabilir çünkü ne fazla gerilim koruması ne de Brownout koruması var esp8266'da.
not: bir tane logic level shifter al ya da transistörle yap.
-
http://maker.robotistan.com/esp8266-ile-iot-dersleri-1-esp8266-modulunu-guncelleme/
şurdaki adımları uyuglayarak tekrar güncelledim logic level shifteri 3.3v ya mı bağlayacağım 5 mi abi ?
EDİT ; Güncelledikten sonra gene aynı sorun olduğundan sordum level shifteri
EDİT 2 ; Yazılımcı olduğumdan ben arkadaşlara söylüyorum dediklerini onların bana söylediklerini ben buraya aktarıyorum :D Bilgisizliktendir abi o anlaşamamazlık O köpeği bile anlamadık öğrenene kadar canımız cıktı :/
MhmdAlmz tarafından 27/Nis/17 23:40 tarihinde düzenlenmiştir -
hocam 3.3v aşma, ne beslemede ne de pinlerde. çünkü datasheet de hiçbir pinin 5v toleransı olmadığını okumuştum bir aralar.
Özellikle programlama esnasında olmak üzere iletişim sırasında ESP çok akım çekiyor. Bu nedenle 3v pil ile arduinodan aldığı enerjiyi destekle derim. Ama daha ilginci 5v ile hala çalışıyor olması. bence o alet ömrünü doldurmuş.
Ek olarak bazı forumlarda ESP nin verimsiz, güvensiz ve stabil olmadığı yorumlarını çok okumuştum.
-
pıhhh. adamlar ticaretini yapıyor oradakiler doğru mu pek umursamıyorlar sanırım.
uno txten 5v yolluyor esp rxten 5v alıyor. sıkıntılı. lls bura için gerekli. elinde reset iini olan usb ttl dönüştürücü kartın var mı? yoksa edin.
flashlama için https://www.allaboutcircuits.com/projects/update-the-firmware-in-your-esp8266-wi-fi-module/ yi takip edebilirsin. yazılım olarak ESP8266Flasher da kullanabilirsin.