Pada artikel kali ini tentang Access Point merupakan insipirasi dari komentar pada web blog ini.
Sehingga saya coba buatkan artikelnya tentang bagaimana cara membuat NodeMCU difungsikan sebagai Acces Point.
Titik akses (Access Point) adalah sebuah perangkat nirkabel yang mempegunakan jaringan wifi.
Yang dimana terdapat transceiver / pemancar serta antena untuk transmisi sinyal dan receiver / penerima sinyal dari dan ke clients untuk pengaksesan.
Fungsi dari Access Point
- DHCP server
- Memiliki fiturWi-Fi Protected Access(WPA) serta Wired Equivalent Privacy (WEP)
- Pengaturan pengaksesan berdasarkan alamat fisik atau MAC Address
- Untuk fungsi Hub/Switch yang bertugas untuk mengkoneksikan antara jaringan lokal dengan jaringan wireless
Pada percobaan kali ini digunakan Acces Point yaitu NodeMCU yang akan diakses dengan menggunakan smartphone “Android”.
Tutorial pertama
Bahan yang diperlukan yaitu :
- NodeMCU V.1.0
- Micro USB
- Smartphone ” Android”
- Komputer + Software IDE Arduino
Note : Pada software IDE Arduino diharapkan sudah terinstall library untuk pengaksesan NodeMCU.
Sehingga dapat diprogramkan code program yang akan ditulis.
Contoh Kode Program pertama
#include <ESP8266WebServer.h> //memasukan library NodeMCU sebagai web server #include <ESP8266WiFi.h> //memasukan library NodeMCU #include <WiFiClient.h> //memasukan library NodeMCU sebagai client const char *ssid = "nyebarilmu"; const char *password = "www.nyebarilmu.com"; //setting pada port 80 ESP8266WebServer server(80); void handleRoot() {server.send(200, "text/html", "<h1>Hallo semuanya! salam nyebarilmu.com!</h1>");} char* htmlBody_help = "<h1>Help</h1><br/>\n" "Visit >> http://192.168.4.1/ untuk mengakses web server.<br/>\n" "Visit >> http://192.168.4.1/help untuk mengakses help akses halaman ini.<br/>\n"; void handleHelp(){ server.send(200, "text/html", htmlBody_help); } void setup() { delay(1000); //waktu tunda 1 detik Serial.begin(9600); Serial.println(); WiFi.softAP(ssid, password);//bertindak sebagai access point dengan nama wifi dan pass diatas IPAddress apip = WiFi.softAPIP(); //alamat IP Serial.print("visit: \n"); //menuliskan alamat IP yang bisa dikunjungi Serial.println(apip);server.on("/", handleRoot); server.on("/help", handleHelp); ////memanggil fungsi handleHelp() server.begin(); //proses pemulaian menjadi server Serial.println("HTTP server beginned"); } void loop() {server.handleClient();}
Hasil dari tutorial diatas pertama
Tutorial Kedua : Access Point NodeMCU control Led
Bahan yang diperlukan yaitu :
- NodeMCU V.1.0
- Micro USB
- Smartphone ” Android”
- Komputer + Software IDE Arduino
note : untuk trial kedua mengendalikan led yang terdapat pada NodeMCU (led builtin)
Kode Program
#include <ESP8266WebServer.h> //memasukan library NodeMCU sebagai web server #include <ESP8266WiFi.h> //memasukan library NodeMCU #include <WiFiClient.h> //memasukan library NodeMCU sebagai client ESP8266WebServer server(80); //menggunakan port 80 //Masukan nama wifi dan password yang akan dibuat const char *ssid = "nyebarilmu"; const char *password = "www.nyebarilmu.com"; int statusLED = LOW; //membuat fungsi untuk kondisi led built in void handleLedOn() { statusLED = LOW; //Kondisi logika "LOW" membuat led nyala digitalWrite(LED_BUILTIN, statusLED); response(); } void handleLedOff() { statusLED = HIGH; ////Kondisi logika "HIGH" membuat led nyala digitalWrite(LED_BUILTIN, statusLED); response(); } void handleRoot() { response(); } const String HtmlHtml = "<html><head>" "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" /></head>"; const String HtmlHtmlClose = "</html>"; const String HtmlTitle = "<h1>Trial kedua kendali LED</h1><br/>\n"; const String HtmlLedStateLow = "<big>LED is now <b>ON</b></big><br/>\n"; const String HtmlLedStateHigh = "<big>LED is now <b>OFF</b></big><br/>\n"; const String HtmlButtons = "<a href=\"LEDOn\"><button style=\"display: block; width: 100%;\">ON</button></a><br/>" "<a href=\"LEDOff\"><button style=\"display: block; width: 100%;\">OFF</button></a><br/>"; void response(){ String htmlRes = HtmlHtml + HtmlTitle; if(statusLED == LOW){ htmlRes += HtmlLedStateLow; }else{ htmlRes += HtmlLedStateHigh; } htmlRes += HtmlButtons; htmlRes += HtmlHtmlClose; server.send(200, "text/html", htmlRes); } void setup() { delay(1000); //waktu tunda 1 detik Serial.begin(9600); Serial.println(); WiFi.softAP(ssid, password); //bertindak sebagai access point dengan nama wifi dan pass diatas IPAddress apip = WiFi.softAPIP(); //alamat IP Serial.print("visit: \n"); Serial.println(apip); //menuliskan alamat IP yang bisa dikunjungi server.on("/", handleRoot); //memanggil fungsi handleRoot() server.on("/LEDOn", handleLedOn); server.on("/LEDOff", handleLedOff); server.begin(); //proses pemulaian menjadi server Serial.println("HTTP server beginned"); pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, statusLED); } void loop() { server.handleClient(); }
Hasil dari tutorial diatas kedua
Terimakasih sudah berkunjung, dan semoga bermanfaat. Salam nyebarilmu.com!
>> CMIIW <<
Mantap lah terimakasih gan artikelnya bermanfaat,saya coba dan berhasil
Bikinin yang bisa dikontrol pake aplikasi android gan
terimakasih gan, sudah berkunjung
next bisa dibuatkan artikel pengembangan ini,
gan bisa kasih tutor untuk setting sebagai client,jadi nodemcu konek ke wifi
Contoh seperti ini gan :
Click
mas kok ada error ya
‘response’ was not declared in this scope
sudah diganti untuk nama wifi dan password wifi ny gan?
mas, kok ada error yaa untuk percobaan yang kedua? tulisannya stateLED was not not declare in this scope ??
iya gan, udah ane perbaikin koding programnya
sorry ke copy ny salah,
gan kalo vcc nya melalui kaki vin kenapa tidak mau konek wifi, tapi kalo vcc melalui port usb terhuung ke laptop wifinya mau konek…??