ESP8266 ve IFTTT kullanarak Wifi Buton yapımı

Merhaba Arkadaşlar;

Bu uygulamada sizlere çok yönlü wifi kontrol butonu paylaşacağım. Bu butonu akıllı ev sistemlerinde, acil çağrı durumlarında yada IFTTT kullanarak bir çok uygulamada kullanabilirsiniz. Projenin orijinal hali aşağıdaki video da bulabilirsiniz.

Burada ESP8266 ile MQTT yöntemini kullanarak server a data gönderiyor. Fakat Ben bu işlemi farklı bir yapı ile yaptım.

IFTTT içerisindeki Webhooks yöntemini kullanarak istediğimiz uygulamaya gönderme yapabiliyoruz. Ben yaptığım örnekte telefona bildirim gönderdim. Siz ise IFTTT kullanarak istediğiniz uygulama üzerinden kullanabilirsiniz.

Webhooks sizden bir API key ve Event Name isteyecek. API key zaten sabit bir değer, siz projenizde istediğiniz kadar Event Name kullanarak IFTTT üzerinden bunu ayırt edip kontrol edebilirsiniz.

İlk önce yazılımı hazırlayıp esp ye yükledikten sonra donanım kısmına geçebiliriz. Bunun için IFTTT ye giriş yapıp yeni bir applet oluşturacağız. Sağ yukarıda New Applet e basın.

Gelen sayfadan +this e tıklayın

Daha sonra gelen sayfadan bir çok tetikleyici uygulamanın içinden Webhooks u seçeceğiz.

Daha sonra Receive a web request i seçip Event Name kısmına geleceğiz. Buraya event ları ayırt etmek için belirleyici isimler kullanacağız. Örneğin kapı_anahtar, hareket_sensor_1 gibi. Ben wifi_button_1 yazdım ve bunu yazılımda ayarlarken kullanacağız. Daha sonra Create trigger e tıklayarak son aşamaya geçeceğiz.

Son aşamada tetiklenen eylemi burada uygulamaya bağlayacağız +that e tıklayarak uygulama seçeceğiz.

Burada bir çok uygulama var smart home ciahzları, email gönderme, twitter gönderme vs. gibi incelerseniz göreceksiniz. Ben telefonuma bildirim gelsin istiyorum bunun için notification ı seçiyorum.

Daha sonra Send a notification from the IFTTT app a basıp telefona gelecek text i ayarlayacağız. Buradaki metni istediğiniz gibi değiştirebilirsiniz. sadece gelen event name i yazdıracağınız yere Add ingredient a basıp event name yada post oalrak gönderilecek 3 değerden birini yada hepsini seçip yazdırabilirsiniz.

Artık son aşamaya gelebiliriz. Create Action a basıp applet i kaydediyoruz. Daha sonra api key i almak için My Applets -> Webhooks -> Documentation e tıklıyoruz. açılan sayfada get/post ayarı ve api keyimiz bulunmaktadır. Bu sayfada ilk önce event yazan yere oluşturduğumuz event name yazıyoruz ve bu name i ve api keyi yazılımda istenilen yere kopyalıyoruz.

Gelelim yazılıma, Arduino IDE sini açarak ESP8266 ayarlarını yapıp kodumuzu yazacağız.

Programda wifi için SSID ve Password seçeneklerini modeminize göre ayarlayıp api key ve event name i aldıktan sonra derleyip ESP ye yükleyebilirsiniz. Program istenilen wifi ağına bağlandıktan sonra sizin api keyi get yöntemi ile datayı gönderdikten sonra deepSleep moduna geçiyor. Siz resetleyinceye kadar yaklaşık 18uA akım çekerek bekleme moduna geçiyor. Butona bastığınızda ise 70mA civarında akım çekiyor ve datayı gönderdikten sonra döngü devam ediyor.

  

Şimdi gelelim devremize, devreyi videodaki arkadaş pilli yapmış bende aynı pilden bulamadığım için 150mA  biraz daha uzun bir pil bulabildim. Yazılım istenilen api key ile get yada post yaptıktan sonra uyku moduna geçecek ve pili uzun ömürlü kullanmış olacağız.

ESP8266-01 nin standart şemasına sadece reset hattına bir buton ve uykudan uyanması için GPIO16 pinini reset hatına bağlayacağız. Bu bağlantı işlemciyi deepSleep den uyandırmak için yapılıyor.

Bu işlemi yaptıktan sonra vcc gnd hattına pilimizi bağlayabiliriz. İlk enerjiyi alan ESP datayı gönderip uyku moduna girecektir ve siz her reset e bastıktan sonra aynı işlemler tekrar edecektir.

İsterseniz Videoda yapıldığı gibi kutu içerisine koyabilirsiniz. Ben 50mA pil bulamadığım için pil biraz büyük geldi 🙂

 

Bu da benim çektiğim video, Bir başka uygulamada görüşmek üzere.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.