Selasa, 14 Juni 2016

IOT : Starting ESP8266 NodeMcu with Arduino IDE

Quick Start to Nodemcu (ESP8266) on Arduino IDE

 Untuk memulai melakukan pemprograman/download progran ke ESP8266 NodeMcu maka perlu adanya penambahan type Board ESP8266 ke daftar Board yang ada pada Arduino IDE.
Berikut langkah-langkah memasukan Board ESP8266 ke dalam Arduino IDE 1.6x :


 

1.Buka Arduino IDE dan masuk ke Menu File -> Preferences

2.Masukan LINK berikut ke dalam kotak "Additional Boards Manager URLs"
   http://arduino.esp8266.com/stable/package_esp8266com_index.json
   kemudian OK


3.Masuk Menu Tools -> Board -> Board Managers
   pada jendela Board Manager cari board ESP8266 (biasanya paling bawah) kemudian tekan INSTALL
   tunggu hingga proses download dan install selesai.Jika sudah selesai akan muncul text INSTALLED
   berwarna hijau di samping nama board. 

4.Colok Board ESP8266 ke USB Port,instal driver Uploader nya.
Ada beberapa jenis Chip Uploader yang digunakan dalam Board ESP8266 NodeMcu,yaitu CH340,CP2102 atau PL2303,berikut driver untuk masing - masing jenis Uploader,sesuaikan dengan yang digunakan pada Board ESP anda.

Driver CH340 Download Disini
Driver CP2102 Download Disini
Driver PL2303 Download Disini
(Mohon maaf beberapa link Expired dan segera saya Update) 

5.Kembali ke Menu Tools -> Board  kemudian pilih Board ESP8266 Sesuai Jenis ESP Board anda dan
   pilih COM port sesuai port chip Uploader yang terdeteksi pada Device Manager Windows.
   Pada Contoh kali ini saya Menggunakan Board  "Adafruir HUZZAH ESP8266"

 

6.Board ESP8266 NodeMcu siap diprogram menggunakan Arduino IDE 

Test Sketch BLINK ESP8266 menggunakan Arduino IDE

Kita akan melakukan test Sketch Blink (Menu Example->Basic->Blink) ke Board ESP8266 NodeMcu.
Yang perlu diperhatikan adalah adanya perubahan "Nama" atau Definisi PIN dari pin yang dikenal pada Arduino dan nama pin pada ESP8266.Misal D13 (led pin) pada Arduino akan dimaping menjadi pin D7 pada NodeMcu ESP8266.

Wiring :
D7 : LED+ dengan resistor 330Ohm-680Ohm
GND : LED-

Buka Sketch Blink kemudian Setting Board dan Com Port.Upload Sketch......


Test Control LED melalui jaringan Wifi (internal server)

Kita akan mencoba control ON OFF sebuah LED melalui jaringan wifi internal/tanpa Web Server.
Upload Sketch berikut ke ESP8266 NodeMcu :


  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
#include <ESP8266WiFi.h>
 
const char* ssid = "RAJACELL";
const char* password = "Danigantengsekali";
 
int ledPin = 13; // GPIO13
WiFiServer server(80);
 
void setup() {
  Serial.begin(115200);
  delay(10);
 
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, LOW);
 
  // Connect to WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
 
  WiFi.begin(ssid, password);
 
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
 
  // Start the server
  server.begin();
  Serial.println("Server started");
 
  // Print the IP address
  Serial.print("Use this URL to connect: ");
  Serial.print("http://");
  Serial.print(WiFi.localIP());
  Serial.println("/");
 
}
 
void loop() {
  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }
 
  // Wait until the client sends some data
  Serial.println("new client");
  while(!client.available()){
    delay(1);
  }
 
  // Read the first line of the request
  String request = client.readStringUntil('\r');
  Serial.println(request);
  client.flush();
 
  // Match the request
 
  int value = LOW;
  if (request.indexOf("/LED=ON") != -1)  {
    digitalWrite(ledPin, HIGH);
    value = HIGH;
  }
  if (request.indexOf("/LED=OFF") != -1)  {
    digitalWrite(ledPin, LOW);
    value = LOW;
  }
 
// Set ledPin according to the request
//digitalWrite(ledPin, value);
 
  // Return the response
  client.println("HTTP/1.1 200 OK");
  client.println("Content-Type: text/html");
  client.println(""); //  do not forget this one
  client.println("<!DOCTYPE HTML>");
  client.println("<html>");
 
  client.print("Led pin is now: ");
 
  if(value == HIGH) {
    client.print("On");
  } else {
    client.print("Off");
  }
  client.println("<br><br>");
  client.println("<a href=\"/LED=ON\"\"><button>Turn On </button></a>");
  client.println("<a href=\"/LED=OFF\"\"><button>Turn Off </button></a><br />");  
  client.println("</html>");
 
  delay(1);
  Serial.println("Client disonnected");
  Serial.println("");
 
}
 

Ganti nama SSID dan Password sesuai Jaringan Wifi Anda.
Buka Serial Monitor pada Arduino IDE dengan mode Newline dan Baudrate 115200.


Masuk ke Ip Address yang tampil di Serial Monitor melalui Browser yang ada di Hp atau di Komputer/laptop yang terhubung dengan jaringan wifi yang sama,akan tampil seperti berikut:





3 komentar:

  1. Punya link Driver CP2102 buat linux ngga om?

    BalasHapus
  2. Cara menghapus coding di esp8266. V2 gmna yah??

    BalasHapus
  3. mas saya setelah instal driver ch340g kok gak connect port usbnya, mohon bantuannya

    BalasHapus

Copyright © 2014 Belajar Arduino | Designed With By Blogger Templates | Distributed By Gooyaabi Templates
Scroll To Top