ESP8266 Problemi işin içinden çıkamıyorum

Merhaba, Elimde Ardunio Uno ve ESP8266-01 mevcut.. Bağlantıları gerçekleştirdim.. Çalıştırdığımda seri port ekranına 4 kere internet baglantiniz gerceklesti yazıyor.. Sonrasında hiçbir hareket yok.. Modem arayüzümden bağlı cihaz varmı diye bakıyorum.. unkown şeklinde baglanmış ve bir IP adresi almış.. Fakat o IP adresine tarayıcıdan girdiğimde Bu siteye ulaşılamıyor 192.168.1.39 bağlanmayı reddetti. Aşağıdakileri deneyin: Bağlantınızı kontrol etme Proxy’yi ve güvenlik duvarını kontrol etme ERR_CONNECTION_REFUSED Hatası geliyor. Yaklaşık 3 haftadır ugrasıyorum araştırmadığım şey kalmadı.. Bu konuda yardımlarınızı beklemekteyim KULLANDIĞIM KODLAR; include < SoftwareSerial.h> SoftwareSerial wifiBaglantisi(1, 0); const String wifiAdi = “WİFİ_ADI”; const String wifiSifresi = “şifresi”; define DEBUG true const int LED1 = 13, LED2 = 12; // LED pinleri void setup() { Serial.begin(115200); // Seri haberleşme bağlantısı kuruldu wifiBaglantisi.begin(115200); // ESP bağlantısı kuruldu delay(500); pinMode(LED1, OUTPUT); // LED pinleri çıkış olarak tanımlandı pinMode(LED2, OUTPUT); if (!interneteBaglan()) { // internet bağlantısı kuruluyor Serial.println(“internete baglanilamadi”); while (1); } else { Serial.println(“internet baglantiniz gerceklesti”); } ATKomuduYolla(“AT+CIPMUX=1”, 1000, DEBUG); // çoklu bağlantılara izin verildi ATKomuduYolla(“AT+CIPSERVER=1,80”, 1000, DEBUG); // 80 portunda çalışan server kuruldu } int ziyaretciID; void loop() { if (wifiBaglantisi.available()) // Servera bağlanan var mı? { if (wifiBaglantisi.find(“+IPD,”)) { delay(1000); ziyaretciID = wifiBaglantisi.read() - 48; // Bağlanan kişinin IDsi /* ascii karakteri int türüne çevirmek için 48 çıkartılmıştır */ String sayfaID; while (wifiBaglantisi.available()) { char c = wifiBaglantisi.read(); sayfaID += c; } // döngü ile kişinin sayfa bilgileri kaydedilmiştir String Header; // server tarafından yollanacak header bilgileri Header = “HTTP/1.1 200 OK\r\n”; Header += “Content-Type: text/html\r\n”; Header += “Connection: close\r\n”; String HTML; // kişiye gösterilecek sayfanın tasarımı HTML = “< htm>< title>Hasbi Sevinc< /title>< body>”; if (sayfaID.indexOf(“/?pin=LED1on”) > 1) { // eğer kişi /?pin=LED1on sayfasına bağlandıysa Serial.println(“1. LED acildi”); digitalWrite(LED1, HIGH); HTML += “< h1>1. LED acildi”; } else if (sayfaID.indexOf(“/?pin=LED1off”) > 1) { // eğer kişi /?pin=LED1off sayfasına bağlandıysa Serial.println(“1. LED sonduruldu”); digitalWrite(LED1, LOW); HTML += “< h1>1. LED sonduruldu”; } else if (sayfaID.indexOf(“/?pin=LED2on”) > 1) { // eğer kişi /?pin=LED2on sayfasına bağlandıysa Serial.println(“2. LED acildi”); digitalWrite(LED2, HIGH); HTML += “< h1>2. LED acildi”; } else if (sayfaID.indexOf(“/?pin=LED2off”) > 1) { // eğer kişi /?pin=LED2off sayfasına bağlandıysa Serial.println(“2. LED sonduruldu”); digitalWrite(LED2, LOW); HTML += “< h1>2. LED sonduruldu< /h1>”; } else { // eğer kişi ana sayfaya bağlandıysa HTML += “< h1>Internet uzerinden LED kontrolu< /h1>”; } /* LED durumlarına göre sayfanın tasarımı ayarlanmıştır */ if (!digitalRead(LED1)) { HTML += “< button onclick="window.location=‘?pin=LED1on’">LED 1 Yak< /button>”; } else { HTML += “< button onclick="window.location=‘?pin=LED1off’">LED 1 Sondur< /button>”; } if (!digitalRead(LED2)) { HTML += “< button onclick="window.location=‘?pin=LED2on’">LED 2 Yak< /button>”; } else { HTML += “< button onclick="window.location=‘?pin=LED2off’">LED 2 Sondur< /button>”; } HTML += “< /body>< /html>”; Header += “Content-Length: “; Header += (int)(HTML.length()); Header += “\r\n\r\n”; wifiBaglantisi.print(“AT+CIPSEND=”); // kullanıcaya aktarılacak karakter sayısı wifiBaglantisi.print(ziyaretciID); wifiBaglantisi.print(”,”); wifiBaglantisi.println(Header.length() + HTML.length()); delay(10); if (wifiBaglantisi.find(“>”)) { // HTML ve Header bilgileri kullanıcıya aktarılıyor wifiBaglantisi.print(Header); wifiBaglantisi.print(HTML); delay(10); } } } } String ATKomuduYolla(String ATKomudu, int zamanAsimi, boolean debug) { wifiBaglantisi.println(ATKomudu); // AT komudu modüle gönderildi long int zaman = millis(); String cevap = “”; while ( (zaman + zamanAsimi) > millis()) // Zaman aşımına kadar bekle { while (wifiBaglantisi.available()) { char k = wifiBaglantisi.read(); // modülden gelen cevaplar kaydediliyor cevap += k; } if (cevap.indexOf(“OK”) != -1) break; } if (debug) { Serial.print(cevap); // modülden gelen cevaplar ekrana yazdırılıyor } return cevap; } boolean interneteBaglan() { ATKomuduYolla(“AT+CWMODE=1”, 1000, true); // internete bağlanacağımız için 1. moda alıyoruz ATKomuduYolla(“AT+CWJAP="” + wifiAdi + “","” + wifiSifresi + “"”, 10000, true); // wifi bağlantısı yapılıyor String durum = “”; durum = ATKomuduYolla(“AT+CIFSR”, 8000, true); // bağlantı bilgileri if (durum.indexOf(“FAIL”) != -1 ) { // bağlantı başarı durumu test ediliyor return false; } return true; }

Öncelikle tarayıcıya Merhaba Dünya yazdırmayı deneyin bence , hasbi sevincin kitabını almışsınız sanırım direkt olarak kodu oradan alıp bütünüyle denemek yanlışlıklara yol açabilir.

Arduino ile ESP’yi kullanmak karmaşık, hele ki uno ile kullanmak daha da karmaşık. Kodlara bakmaya başladığımızda da en baştan hatalı. Arduino seri pinlerini SoftwareSerial’a atamışsınız hem esp ile hem bilgisayar ile aynı pinden haberleşmeye çalışıyorsunuz. Uno’da software serial kütüphanesi en fazla 57600bps de çalışırken siz 115200 de çalıştırmışsınız. Böyle çok fazla satır kodu denemek yerine güncel kaynaklardan adım adım öğrenerek gidin.

Tavsiyem, ESP8266 ile hiç zaman kaybetmeyin. Kafasına göre çalışan bir ürün. Dolayısıyla bazen tam istediğiniz gibi çalışıyor bazen bakıyorsunuz tuhaf tuhaf hatalar veriyor. Onun yerine Arduino orjinal ya da bulabiliyorsanız klon WiFi modülü alın. Örnekleriyle kütüphaneleriyle zahmetsizce işinizi görün. ESP saçmalığıyla da vakit kaybetmemiş olursunuz.

arkadaş ne pis bişeymiş bu ya. 3$ diye herkes atlıyo ama bi sure sonra olay şuna dönuyor keşke 50$ vereydimde hiç bulaşmayaydım oluyo. esp pişmanlıktır diye kamu spotu çekecem az kaldı. yinede ısrarcıysan benim yazdığım esp notları vardı onu bul bi oku derim belki faydası olur.

burdaymış http://forum.arduinoturkiye.com/index.php?p=/discussion/comment/12137#Comment\_12137 başta dediğim gibi kendime yazdığım notlar, anlamadığın yer olursa burda nedemek istedin diye sorabilirsin.

esp8266 başlangıç seviyesi için zordur evet. ucuz diye kasıyo mıllet. ıyı kod yazılırsa huyuna suyuna gıdersen gayet başarılı. yenı kutuphaneleri rtos uyumlu yazıyorlar sanırım ondan sorun çıkıyor yapısını arkda neler döndüğünü bilmeden girişince bi mucadele oluyor

Arkadaşlar Esp8266 modülü ile Gmail mail gönderimini gerçekleştirdim. Dilerseniz yazıma bakabilirsiniz. Tek tek açıklamaya çalıştık. Eksiklerim var ise mesaj atarak düzeltmeme yardım edebilirsiniz. İlgili yazı: http://teknolojiprojeleri.com/arduino/esp8266-modulu-ile-gmailden-mesaj-gonderme

Bende de benzer sorun var kodlar yukardakiyle aynı ama modeme bağlanıyor ıp alıyor ama web sayfasını açmıyor 1 saat düzgün çalışıyor duruyor. Modem değiştirdim Superonline portlar açık sayfa gelmiyor