Ana Sayfa Gömülü Sistem NodeMCU ile End User Setup Kullanımı (Wifi Bağlantısı)

NodeMCU ile End User Setup Kullanımı (Wifi Bağlantısı)

8 min read
1
1
7,582

Merhaba Arkadaşlar;

Bu yazımda ise NodeMCU da her seferinde program başına bağlanacağımız wifi ağının bilgilerini girmek yerine, end user setup özelliği ile bu işlemi wifi dan yapıp nasıl bağlanılır onu anlatacağım.

Önceki yazımı inceleyerek modül kütüphane seçim kısmında end user setup ı seçerek tekrar bin dosyası hazırlatıp nodemcu ya yükleyebilirsiniz.

Yükleme işlemi tamamlandıktan sonra nodemcu yu pc ya bağlayıp init ve yapacağımız test webserver dosyalarımızı hazırlayalım. init.lua dosyasına end user setup özelliğini ekleyip bağlantı yapılmış ise yayınlayacağımız server dosyasını çalıştıracağız. Bu esnada modülün üstündeki led i bağlantı kuruncaya kadar pwm ile hızlı yakıp söndürdüm, bağlantı kurduğunda ise frekansı  1 hz yaptım ki bağlantı kurulduğunu led den de anlayabilelim.

init.lua

--init.lua Umut K.--
print('Open file: init.lua\n')

–system voltage
if adc.force_init_mode(adc.INIT_VDD33)
then
node.restart()
return — don’t bother continuing, the restart is scheduled
end
print(“System voltage (mV):”, adc.readvdd33(0))

–nodemcu ya gore (esp8266-12)
local led = 4 –modüldeki led

— GPIO ayarla:
gpio.mode(led, gpio.OUTPUT)

–pwm ayarla: (esp8266-12 ye gore led ters)
pwm.setup(led, 5, 900)
pwm.start(led)

print(‘Baglanti Kontrol Ediliyor…’)

enduser_setup.start(
function()
–print(“Connected IP:\t” .. wifi.sta.getip())
print(“Starting server…”)
pwm.setup(led, 1, 900)
pwm.start(led)
dofile(“webserver.lua”)
end,
function(err, str)
print(“enduser_setup: Err #” .. err .. “: ” .. str)
end
);

wifi.eventmon.register(wifi.eventmon.STA_GOT_IP, function(T)
print(“\nStation IP:\t”..T.IP..”\nSubnet mask:\t”..T.netmask..”\nGateway IP:\t”..T.gateway)
print(‘Baglanti yapiliyor…’)
end)

 

 

Daha sonra bağlantı kurulduğunda test için basit bir web server sayfası açtırıyorum.

webserver.lua

--webserver.lua Umut K.--
print('Open file: webserver.lua')

--ds ayarla
print('Server OK...')
-- Start a simple http server
srv=net.createServer(net.TCP)
srv:listen(8080,function(conn)
conn:on("receive",function(conn,payload)
local httpbuf = ""
print(payload)

–html kod oluştur
httpbuf = httpbuf .. “<html><head><meta http-equiv=’refresh’ content=’3’/><title>nodeMCU web server</title>”
httpbuf = httpbuf .. “<p align=’center’><font size=’6′ color=’blue’><b>nodeMCU web server</b></font></p>”
httpbuf = httpbuf .. “<p align=’center’><font size=’3′><b>System Voltage : ” .. adc.readvdd33(0) .. ” mV</b></font>”
httpbuf = httpbuf .. “<p align=’center’><font size=’3′>RSSI : ” .. wifi.sta.getrssi() .. “</font>”
httpbuf = httpbuf .. “<p align=’center’><font size=’3′>Umut KAZANÇ</font>”
httpbuf = httpbuf .. “</body></html>”

–tcp gonder
conn:send(httpbuf)
end)
conn:on(“sent”,function(conn) conn:close() end)
end)

--sürekli baglantiyi kontrol edilecek koptu ise reset atilacak
tmr.alarm(0, 5000, 1, function ()
if wifi.sta.status()==3 then
print('Baglanti koptu...')
node.restart()
end
end)

 

 

Artık programı nodemcu ya yükleyip çalıştırdığımızda init dosyası açılacak ve end user setup ı başlatacaktır.

Program burada wifi ap olarak açıp bağlantı kurup ayar yapmanızı bekleyecektir. Bu kısımları end user setup otomatik yapmaktadır. Şimdi herhangibi bir wifi cihazdan bağlanıp ayarlarımızı yapalım. Ben cep telefonundan bağlantı kurdum. Wifi taradığınızda şöyle bir ağ gelmektedir.

SetupGadget_….. şeklinde bir ağ görünecektir. bu ağa şifresiz girip bağlantı kurulduğunda ise tarayıcınızdan 192.168.4.1 adresine girip bağlanacağımız wifi bilgilerini gireceğiz.

Bizden wifi name ve password isteyecektir. Wifi name i ister tarayarak seçip isterseniz manüel yazabilirsiniz. Bilgileri girip Save a bastığımızda bağlantı gerçekleşecektir.

   

Success mesajını aldığınızda yazdığınız wifi ağına bağlanmış demektir ve IP adresini de yazacaktır. Bu esnada bağlandığınız şifresiz ağ otomatik kapanacaktır.

Artık ayarlarımızı yaptık, init dosyasında ayarlar yapıldığında webserver.lua dosyası gelecektir.

Yapacağınız projelerinizde bu init dosyasını kullanarak her seferinde wifi bilgilerini girmektense son kullanıcıya bırakmak daha iyidir.

Bir sornaki nodemcu uygulamasında (DS18B20 okuma) görüşmek üzere…
Kolay Gelsin…

Buna Benzer Yazılar Göster !
Daha Fazlasını Yükle - Umut Kazanç
Daha Fazla Göster -  Gömülü Sistem

1 Yorum

  1. […] 7 gün önce NodeMCU ile End User Setup Kullanımı (Wifi Bağlantısı) […]

    Reply

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bak Bakalım ?

NodeMCU : DS18B20 ile Sıcaklık Web Server

Merhaba Arkadaşlar, Bu uygulamada sizlere ESP8266 da LUA ile DS18b20 yi okuyacağım.. Bunun…