Kontrol Relay melalui Internet dengan Arduino dan ESP8266

Ditulis oleh agan

بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Halo sobat BoArduino, selamat datang dan salam kenal untuk kalian yang berkunjung disini :)
Berjumpa kembali dengan saya di hari yang mudah-mudahan selalu berbahagia ini, yaitu saat saya posting ini tepatnya pada Hari Kamis, 7 Safar 1437 AH atau 19 November 2015 Masehi.

Setahun yang lalu, tepatnya pada tanggal 19 November 2014 saya  atas nama Muhamad Andi Prasetyo membuat Blog BoArduino ini.
Dan pada hari ini adalah hari dimana tepatnya 1 tahun Blog ini ikut meramaikan dan mengudara di jagat raya internet.
Kalau begitu, ane sendiri mengucapkan Selamat Ulang Tahun BoArduino :) semoga semakin jaya, sukses, ramai pengunjung dan rajin update Tutorial Arduino, Amiin.

Seperti biasanya, di hari ini tidak ada yang Spesial walaupun sedang Ber-Ulang tahun yang ke 1. Karena bagi ane, setiap hari atau setiap tahun itu sama saja dan ane juga tidak menyukai sesuatu yang dibuat-buat atau telalu berlebihan dan menimbulkan kesan "Lebay", hehehe :) 

Tutorial kali ini adalah sesuai janji ane dan juga request dari beberapa pengunjung BoArduino yang ikut meramaikan dan meninggalkan jejak pada kolom komentar di salah satu Postingan di blog ini yang ane beri judul "Kontrol Relay dengan Arduino dan ESP8266 Web Server". Dan sesuai dengan judulnya, di tutorial ini kita akan mencoba mengaplikasikan salah satu contoh Internet Of Things dengan Arduino dan ESP8266 untuk Mengontrol relay melalui internet atau bisa juga ente sebut dengan Menyalakan lampu melalui internet dengan Arduino dan ESP8266!

ALAT DAN BAHAN YANG DIBUTUHKAN :
  • 1x Arduino UNO (Compatible)
  • 1x Modul ESP8266
  • 1x Relay Modul
  • Breadboard / Projectboard
  • Kabel jumper secukupnya
  • Smartphone Android
  • Aplikasi Android Relay Control Internet di Playstore, silahkan klik DOWNLOAD

LANGKAH - LANGKAHYA :

1.) Download terlebih dahulu Flash Download Tools dan Firmware, klik gambar dibawah ini
 

2.) Setelah proses download selesai, upload lah terlebih dahulu sketch Arduino di bawah ini.
int ch_pd = 3;
int io0 = 2;

void setup() {
    pinMode(ch_pd, OUTPUT);
    pinMode(io0, OUTPUT);
    digitalWrite(io0,LOW);
    digitalWrite(ch_pd, LOW);
    delay(1000);
    digitalWrite(ch_pd, HIGH);
}

void loop() {
      //Biarkan Kosong saja 
}

3.) Langkah selanjutnya adalah, susunlah rangkaian seperti gambar dibawah ini.


KETERANGAN KONFIGURASI KABEL ARDUINO KE ESP8266 :
  • Pin 3.3V pada Arduino dihubungkan ke VCC di ESP8266
  • Pin GND pada Arduino dihubungkan ke GND di ESP8266
  • Pin 2 pada Arduino dihubungkan ke GPIO0 di ESP8266
  • Pin 3 pada Arduino dihubungkan ke CH_PD di ESP8266 
  • Pin RX pada Arduino dihubungkan ke RX di ESP8266
  • Pin TX pada Arduino dihubungkan ke TX di ESP8266
4.) Setelah selesai merangkai, tancapkan Arduino pada port USB Komputer ente.
5.) Setelah itu, extract file yang telah ente download tadi dan ikuti Video Tutorial dibawah ini.


6.) Nah sekarang firmware telah diperbarui, sekarang ubah wiring diagram menjadi seperti ini.

KETERANGAN KONFIGURASI KABEL ARDUINO KE ESP8266 :
  • Pin 3.3V pada Arduino dihubungkan ke VCC di ESP8266
  • Pin 3.3V pada Arduino dihubungkan ke CH_PD di ESP8266
  • Pin GND pada Arduino dihubungkan ke GND di ESP8266
  • Pin 10 pada Arduino dihubungkan ke UTXD di ESP8266
  • Pin 11 pada Arduino dihubungkan ke URXD di ESP8266
  7.) Setelah step nomor 6 selesai, maka susunlah konfigurasi seperti dibawah ini
KETERANGAN KONFIGURASI KABEL ARDUINO KE RELAY MODULE :
  • Pin 5V pada Arduino dihubungkan ke VCC Relay modul
  • Pin GND pada Arduino dihubungkan ke GNDRelay modul
  • Pin 2 pada Arduino dihubungkan ke IN1 Relay modul
  • Pin 3 pada Arduino dihubungkan ke IN2 Relay modul 
  • Pin 4 pada Arduino dihubungkan ke IN3 Relay modul  
  • Pin 5 pada Arduino dihubungkan ke IN4 Relay modul 
8.) Bila wiring untuk mengontrol Relay sudah selesai di rangkai, mari ke langkah selanjutnya.
9.) Kita buat channel di Web ThingSpeak.com untuk mendapatkan API Key dan Channel ID.


10.) Apabila channel sudah dibuat, anda copy paste Channel ID dan API Key anda ke Notepad.
11.) Setelah itu kita tambahkan library espduino, Buka Software Arduino lalu klik
Sketch > Include Library > Add .ZIP Library...

12.) Lalu pilih file espduino.zip dari folder yang ente download tadi, dan klik Open.


13.) Maka library espduino sudah berhasil ditambahkan pada software Arduino IDE ente.
14.) Setelah itu silahkan copy sketch dibawah ini dan pastekan pada Arduino IDE.

Klik LIHAT GAN untuk melihat sketch untuk Relay ACTIVE LOW
#include <SoftwareSerial.h>
#include <espduino.h>
#include <rest.h>

SoftwareSerial espPort(10, 11);
ESP esp(&espPort, &Serial, 9);
REST rest(&esp);
boolean wifiConnected = false;

const int relay1 =  2;
const int relay2 =  3;
const int relay3 =  4;
const int relay4 =  5;

boolean data1 = false;
boolean data2 = false;
boolean data3 = false;
boolean data4 = false;
int loop_count = 0;

char response[266];
char buff[64];
String strId,strData,strCode;
String strData_Last1,strData_Last2,strData_Last3,strData_Last4;

void(* resetFunc) (void) = 0;

 void clearBuffer(void) {
       for (int i = 0;i<266;i++ ) {
         response[i]=0;
       }
}

void wifiCb(void* response)
{
  uint32_t status;
  RESPONSE res(response);

  if(res.getArgc() == 1) {
    res.popArgs((uint8_t*)&status, 4);
    if(status == STATION_GOT_IP) {
      Serial.println("TERHUBUNG KE WIFI");
    
      wifiConnected = true;
    } else {
      wifiConnected = false;
    }
   
  }
}

void setup() {
  pinMode(relay1, OUTPUT);
  pinMode(relay2, OUTPUT);
  pinMode(relay3, OUTPUT);
  pinMode(relay4, OUTPUT);
 
  digitalWrite(relay1,HIGH);
  digitalWrite(relay2,HIGH);
  digitalWrite(relay3,HIGH);
  digitalWrite(relay4,HIGH);
 
  Serial.begin(9600);
  espPort.begin(19200);
 
  esp.enable();
  delay(500);
  esp.reset();
  delay(500);
  while(!esp.ready());

  Serial.println("ARDUINO: Setup client");
  if(!rest.begin("api.thingspeak.com")) {
    Serial.println("ARDUINO: Gagal Setup client");
    while(1);
  }

  Serial.println("ARDUINO: Menghubungkan dengan Wifi");
  esp.wifiCb.attach(&wifiCb);

  esp.wifiConnect("Andy182 Network","waipigratis");
  Serial.println("ARDUINO: System sudah siap!");
}

void loop() {
loop_start: 
 
  esp.process(); 
  if(wifiConnected) {  
   
    char str_field1[6] , str_field2[6] , str_field3[6] , str_field4[6];
          
      sprintf(buff, "/channels/58419/fields/1/last");
      Serial.println(buff);
          
      rest.get((const char*)buff);
      if(rest.getResponse(response, 266) == HTTP_STATUS_OK){
                             
            strId = "";
            strData = "";
            strCode = ""; 
            getData();               
                
          if (strData == "1" || strData == "1.0" || strData == "1.00" ){
            digitalWrite(relay1,LOW);
            data1 = true;
          }
          
          if (strData == "0" || strData == "-1" || strData == "0.1" || strData == "0.10"){
            digitalWrite(relay1,HIGH);
            data1 = false;
          }
      } 
     else{ 
       hardReset();
       resetFunc();
     }
    
      delay(10000); 
      sprintf(buff, "/channels/58419/fields/2/last");
      Serial.println(buff);
          
      rest.get((const char*)buff);
      if(rest.getResponse(response, 266) == HTTP_STATUS_OK){
        
        strId = "";  strData = "";  strCode = ""; 
        getData();
     
     
      if (strData == "1" || strData == "1.0" || strData == "1.00"){
        digitalWrite(relay2,LOW);
        data2 = true;       
      }
      
      if (strData == "0" || strData == "-1" || strData == "0.1" || strData == "0.10"){
        digitalWrite(relay2,HIGH);
        data2 = false;     
      }    
      }
      else{ 
         hardReset();
         resetFunc();
         clearBuffer(); 
         goto loop_start;  
      
     }   

      delay(10000); 
      sprintf(buff, "/channels/58419/fields/3/last");
      Serial.println(buff);
          
      rest.get((const char*)buff);
      if(rest.getResponse(response, 266) == HTTP_STATUS_OK){
        
        strId = "";  strData = "";  strCode = ""; 
        getData();                                                // GET DATA
     
     
      if (strData == "1" || strData == "1.0" || strData == "1.00"){
        digitalWrite(relay3,LOW);
        data3 = true;       
      }
      
      if (strData == "0" || strData == "-1" || strData == "0.1" || strData == "0.10"){
        digitalWrite(relay3,HIGH);
        data3 = false;     
      }    
      }
      else{ 
         hardReset();
         resetFunc();
         clearBuffer(); 
         goto loop_start;  
      
     }

     delay(10000); 
      sprintf(buff, "/channels/58419/fields/4/last");              // field x last Data
      Serial.println(buff);
          
      rest.get((const char*)buff);
      if(rest.getResponse(response, 266) == HTTP_STATUS_OK){
        
        strId = "";  strData = "";  strCode = ""; 
        getData();                                                // GET DATA
     
     
      if (strData == "1" || strData == "1.0" || strData == "1.00"){
        digitalWrite(relay4,LOW);
        data4 = true;       
      }
      
      if (strData == "0" || strData == "-1" || strData == "0.1" || strData == "0.10"){
        digitalWrite(relay4,HIGH);
        data4 = false;     
      }    
      }
      else{ 
         hardReset();
         resetFunc();
         clearBuffer(); 
         goto loop_start;  
      
     }
    
      delay(10000);     
      loop_count++;
      Serial.println("LOOP : ");
      Serial.println(loop_count);
     
      if(loop_count == 6 ){
        loop_count = 0;
     
      if(data1) {      
           dtostrf(1, 1, 1, str_field1);    
      }else{
         dtostrf(0.1, 2, 1, str_field1);   
      }
      if(data2) {
           dtostrf(1, 1, 1, str_field2);
      }else{
         dtostrf(0.1, 2, 1, str_field2);  
      }
      if(data3) {
           dtostrf(1, 1, 1, str_field3);
      }else{
         dtostrf(0.1, 2, 1, str_field3);  
      }
      if(data4) {
           dtostrf(1, 1, 1, str_field4);
      }else{
         dtostrf(0.1, 2, 1, str_field4);  
      }
       
          sprintf(buff, "//update?key=65OKK4T6SKM96AVO&field1=%s&field2=%s&field3=%s&field4=%s",str_field1,str_field2,str_field3,str_field4);
          Serial.println(buff);
          
          rest.get((const char*)buff);
          Serial.println("ARDUINO: Mengirim data terbaru");

          if(rest.getResponse(response, 266) == HTTP_STATUS_OK){
            Serial.println("ARDUINO: Berhasil GET Data");
            strId = "";  strData = "";  strCode = ""; 
            getData();
          }
      delay(5000);
      }
  }
 
  else{
  }
 
}
 
void getData(){
   int i=0,j=0,k=0;
    
         for (i = 0; i < 10; i++){        
       
          if((response[i] == '\r') || (response[i] == '\n')) {
          }
          else{         
             strId += response[i];      
          }
         
          if (response[i] == '\n'){
               i++;        
               break;
          }                   
        }
       
        Serial.println("");
        Serial.print("ID : ");
        Serial.print(strId);
          
         for (j = i; j < (i+20); j++){
         
          if((response[j] == '\r') || (response[j] == '\n')) {
          }
          else{         
             strData += response[j];      
          }
         
          if (response[j] == '\n'){
                j++;     
                break;
          }                    
        }
       
        Serial.println("");
        Serial.print("Data : ");
        Serial.print(strData);
         for (k = j; k < (j+10); k++){       
             
          if((response[k] == '\r') || (response[k] == '\n')) {
          }
          else{         
             strCode += response[k];      
          }
         
          if (response[k] == '\n'){                      
                break;
          }                    
        }
        Serial.println("");
        Serial.print("Code : ");
        Serial.print(strCode);     
        Serial.println("");       
      }
  boolean hardReset() {
  String tmpData;
}

KETERANGAN SKETCH :
Sketch Pada baris berikut ini, ubah dan sesuaikan dengan SSID dan Password Wifi anda
esp.wifiConnect("Andy182 Network","waipigratis");
Ubah sketch pada setiap semua di baris berikut ini sesuai dengan Channel ID thingspeak anda
sprintf(buff, "/channels/58419/fields/1/last"); // untuk field 1
sprintf(buff, "/channels/58419/fields/2/last"); // untuk field 2
sprintf(buff, "/channels/58419/fields/3/last"); // untuk field 3
sprintf(buff, "/channels/58419/fields/4/last"); // untuk field 4
Sketch pada baris ini, ubah dan sesuaikan dengan API Key dari Channel Thingspeak anda
sprintf(buff, "//update?key=65OKK4T6SKM96AVO&field1=%s&field2=%s&field3=%s&field4=%s",str_field1,str_field2,str_field3,str_field4);

TAMBAHAN : ALUR PROGRAM APLIKASI ANDROID
Bagi kalian yang ingin membuat sendiri aplikasi Android seperti Reconnet, silahkan di buat Blok Pemogramannya dengan App inventor 2, Ikuti saja Flow Chart Reconnet yang saya buat.

Silahkan klik gambar Download dibawah ini, lalu buka file tersebut dengan browser ente.
 

 
Terimakasih telah berkunjung, selamat mencoba, semoga bermanfaat.

Blog, Updated pada: 00:17:00

164 comments:

  1. Wah ilmu baru lagi...seep ijin menyimak dan mencoba

    ReplyDelete
    Replies
    1. Terimakasih sudah berkomentar, Selamat mencoba...

      Delete
    2. keren gann ane coba bisa, cuma delaynya agak lama ya, ane boleh minta source aplikasi androidya ga gan? email ya gan, terima kasih

      Delete
    3. Delaynya memang lama, maksimal 16 detik untuk 1 field. Silahkan aplikasinya dibuat di app inventor 2 dengan alur program seperti flowchart yang saya kasih diatas.

      Delete
    4. kalau menggunakan arduino nano gmn? sy sdh terlanjur beli, bukan uno.

      Delete
    5. Salam kenal, kalau dengan nano saya belum pernah coba. Tetapi di halaman blog ini ada yang mencoba dengan nano dan gagal.

      Entah gagal karena human error atau bagaimana.

      Delete
    6. mas, saya mau buat aplikasinya tapi susah memaham flowchart sampean. apa bener sampean pkek app inventor? tolong bantuannya dong. saya mau buat aplikasi sendri

      Delete
    7. Iya, saya gunakan App inventor 2.

      Delete
    8. Gan, selama kurang lebih 1 tahun ane bikin project ini dan akhirnya berhasil. Maklum masih newbie, trus bedanya ane pake web browser sj gan untuk kendali relaynya dikarenakan pake aplikasi android harus belajar dl, sm source codenya jg hanya str id sj yg ada valuenya, jd ane sedikit modif source codenya, Trus project ini ane jadiin tgs akhir, sm situs ini dijadiin sumbernya di daftar pustaka ya gan, takut ane disangka plagiat klo g cantumin, hhhe. Mksh gan ilmunya, emang proses belajar perlu waktu. :)

      Delete
    9. @Zainal : Akhirnya berhasil ya, kalau ane pas itu memakan waktu hampir 3 bulan gan...

      Nah itu dia, thingspeak sepertinya sudah merubah untuk get dan update channelnya... Waktu ane menyusun tutorial ini, ane bisa dapatkan value, ID dan segala macem, sekarang value malah pindah ke bagian StrID.

      Solusinya ya tinggal diubah aja bagian untuk mengaktifkan relay, yang tadinya strData, jadi strID.

      Oke gan silahkan di cantumkan, semoga sukses terus ya :)

      Delete
  2. Gan kalo saya pakenya Ethernet shield. apa bisa gan?atau cuma bisa pake esp8266 aja?kalo bisa pake ethernet shield sketchnya gmana gan?thanks gan sebelumnya

    ReplyDelete
    Replies
    1. Bisa, sketch silahkan dibuat sendiri... kebetulan ane gapunya ethernet shield.

      Delete
    2. gan akhirnya saya beli aja modul espnya. tapi pas saya coba flash sesuai videonya, pas saya klik start ada tulisan "serial port open error".gimana solusinya gan?saya udah coba semua port tetap gtu gan. apa karena saya pake arduino mega 2560 gan jadi gitu?

      Delete
    3. Kalau begitu, coba flash pakai Esptool.py aja gan firmwarenya. Bisa lewat CMD kalau Operating system ente windows, kalau Linux bisa lewat Terminal.

      Delete
    4. Coba reset arduino nya sambungin ke ground..

      Delete
  3. min check email min, mohon pencerahannya

    ReplyDelete
  4. wah bagus mas.
    saat saya Compile sketch ny ada peringatan "Low memory available, stability problems may occur" kenapa itu mas

    ReplyDelete
    Replies
    1. Terimakasih. Seperti pesan errornya, itu LOW Memory... Abaikan saja bila tidak menggangu, tapi bisa juga jadi menggangu stabilitas.

      Delete
  5. gan koneksi esp8266 ke internet menggunakan router ato gimana gan?? untuk mengakses ThingSpeak.com kan perlu koneksi internet?

    ReplyDelete
    Replies
    1. gan flash tool nya kok seting port com nya cuma sampai 9, sedangkan port driver ane di port 33, bsa ga setting port com nya di jadikan 33? klo ga bsa, di flash pake firmware ESP8266_AT_V00180902_04 bisa ga??

      Delete
    2. Kalau begitu, di flash pakai esptool.py aja gan... Alternatifnya bisa di flash lewat Command prompt atau Terminal linux.

      Delete
  6. Gan Mau Tanyani gan Sedah di coba sesuai gambaran di web ini,setingan ssid,Channel,Api sudah disesuaikan,dan di cek melalui serial monitor sudah mendapatkan ip dari router,dan di aplikasi dan thingspark sudah berhasil on dan off statusnya,namun di relay nya tidak ada respon sama sekali,kira2 apa yg salah ya gan?(nb relay kondisi sehat)sblmnya Trimakasih gan

    ReplyDelete
    Replies
    1. Salam kenal, semua sudah benar tetapi relay tidak merespon? mungkin Relay yang ente gunakan active HIGH? dan sketch yang saya sertakan diatas untuk Relay active LOW.

      Delete
    2. Oke gan sementara trims infonya cb saya cek kembali gan.,sukses gan buat tutorial tutorialnya....

      Delete
    3. Salam kenal, semua sudah benar tetapi relay tidak merespon? mungkin Relay yang ente gunakan active HIGH? dan sketch yang saya sertakan diatas untuk Relay active LOW.<<<< Gimana caranya supaya Relay saya di set active LOW bro ?

      Delete
    4. Salam kenal. Coba screenshot serial monitor ente saat sudah dicoba ON/OFF dengan aplikasi Reconnetnya. Apakah ID yang datanya berubah menjadi 1.0 atau 0.1?

      Delete
  7. gan ini buat app reconeknya pk app inventor ? atau aplikasi lain ? gimana ya cara integrasi variabel antar screen di inventor jika menggunakan inventor ?

    ReplyDelete
    Replies
    1. Pakai MIT App inventor2... Tinggal ditambahkan saja screen dan button untuk membuka screennya.

      Kalau Reconnet ini tidak pakai banyak screen, hanya satu.

      Delete
  8. Kalau pake arduino nano perbedaannya dimana ya ?

    ReplyDelete
    Replies
    1. Saya ngikutin tahapannya sesuai project arduino uno di pake di nano ga bisa gan

      Delete
    2. Ente pakai nano yang Atmega328 atau Atmega168?

      Delete
  9. gan kalau mau pakai app inventor bagaimana cara menghubungkan ke thinkspeaknya ya ? jika menggunakan connection web parameter apa yang dimasukan ya ? terimakasih

    ReplyDelete
    Replies
    1. Salam kenal, pada app inventor gunakan item Web1. Untuk parameternya coba liat di API Documentationnya di link ini http://www.mathworks.com/help/thingspeak/api-reference.html

      Delete
  10. mas, saya mau konect ke internet mengunakan mc 89s51 , apakah bsa pakai modul wifi??

    ReplyDelete
  11. mas mau nanya itu yg di copy ke notepad isi dari channel sama api keynya hanya nomernya aja tanpa penjelasan contoh "channe: *nomerchannelnya" atau langsung copy nomer channelnya aja ?, terus yang di masukin ke library itu yg hasil save dari notepadnya ?. mohon pencerahannya mas, terima kasih

    ReplyDelete
    Replies
    1. Salam kenal, Nomornya aja misal channel ID : 2238288

      Jadi yang di paste di notepad hanya 2238288, begitu juga dengan API key.

      Delete
  12. terima kasih banyak mas saya mau mencoba untuk proyek akhir saya. lumayan membantu. tapi saya mau nanya mas kalau esp8266 gabisa langsung konek dengan android tanpa melalui internet untuk control relaynya ?

    ReplyDelete
    Replies
    1. Salam kenal, bisa langsung konek tanpa internet. ESP8266 di set sebagai Access point.

      Delete
  13. ok. gan.
    ini sy sdh mencoba, utk android ke my channel bisa. tp utk ke relay no respon. sy pake hotspot hp.knp ya gan?

    ReplyDelete
    Replies
    1. Kalau Field tiap channel di website thingspeak sudah terupdate, seharusnya relay akan ON atau OFF sesuai data terakhir field. Coba cek kembali wiring pada hardwarenya mungkin ada yang keliru.

      Delete
  14. hi


    everything work but the relay are not turning on and off. serial monitor in IDE shows the relay value change 1.0 to o.1 but relay not turning on and off and website show the relay turns on and off. i already check the wires on relay board good. please let me know what i am not doing right. thanks

    ReplyDelete
    Replies
    1. Hi. whether the field in thingspeak value according to the data you send? for example 1.0 or 0.1?

      Delete
  15. gan, punya saya kok suka restart2 terus ya? kenapa gan?

    ReplyDelete
    Replies
    1. Pakai supply 3,3V arduino? pakai power supply external gan biar stabil. Pin 3,3V arduino kurang kuat arusnya untuk transmit dan receive. Coba cek datasheet esp8266.

      Delete
    2. supply eksternal nya pakai apa ya?? makasih pak?

      Delete
    3. Pakai power supply 3,3V atau bisa dengan Voltage divider.

      Delete
  16. assalamualaikum
    mas kok program yang diatas memory di arduino nya ga cukup ya
    kenapa mas?

    ReplyDelete
    Replies
    1. Waalaikum salam, memang LOW memory tapi masih bisa di upload. Abaikan saja bila tidak menggangu, tapi bisa juga jadi menggangu stabilitas.

      Delete
  17. جزاك الله خيرا

    ReplyDelete
  18. Gan, mau tanya.. Kalau tanpa arduino bisa ga ya?? Pakai ESP8266 nya aja?? Sya pakai ESP8266 ESP-12.

    ReplyDelete
    Replies
    1. Salam kenal. Tentu sangatlah bisa gan. ESP8266 kan disebut sebut sang pembunuh arduino :)

      Delete
  19. Assalamualaikum Gan,maaf klo langsung kontrol via kolom url bsa gak..niatnya pngn langsung tanpa masuk aplikasi....wassalam,makasih gan

    ReplyDelete
    Replies
    1. Waalaikum salam, tentu bisa gan... silahkan di baca Thingspeak API Documentation.

      Delete
  20. assalamualaikum gan, maaf boleh tau tutorial buat app reconnect nya? saya kurang ngerti dari flowchart nya gan, makasih gan..

    ReplyDelete
    Replies
    1. Waalaikum salam gan, kalau dibuat video tutorial tidak memungkinkan gan... Karena ini ane buat pun lebih dari 3 hari.

      Ikuti saja flowchartnya gan kalau paham, Alhamdulillah.

      Delete
  21. Assalamualaikum Gan,sama seperti tmn2 diatas,sy mngikuti step by step yg kang andi tulis, ini android sy ud bisa konek dgn thingspark, tp tetep relay blm bs respon,uda sy coba ganti aktif high jg.. btw relay sy 12v pake catuan adaptor, mohon ptunjuknya kang, mksih

    ReplyDelete
    Replies
    1. Waalaikum salam. Android sudah bisa untuk update data ke tiap field yang ada di channel ThingSpeak? Coba cek di field yang ada di channelnya, kalau sudah berhasil terupdate, lihat juga serial monitor apakah data di serial monitor juga nilainya sama dengan yang di field Channel ThingSpeak.

      Delete
  22. Mas minta nomor hp atau whatsappnya ada?

    ReplyDelete
    Replies
    1. Coba scroll cursor mousenya ke icon whatsapp yang ada di sidebar blog ini.

      Delete
  23. mas tolong buatkan tutorial tentang relay control internet dong
    please mas

    ReplyDelete
    Replies
    1. Ikuti flowchartnya, kalau ada masalah bisa ditanyakan lewat email atau WA.

      Gak memungkinkan dibuat tutorialnya, Aplikasi itu butuh proses yang lebih dari 3 hari.

      Delete
  24. untuk prangkat Wemos D1 Mini esp8266 yang disini gak mas
    https://www.bukalapak.com/p/elektronik/komponen-elektronik/r6jp4-jual-wemos-d1-mini-nodemcu-lua-wifi-arduino-iot-dev-based-on-esp8266

    ReplyDelete
    Replies
    1. Silahkan dicoba saja, karena ane kebetulan belum mencobanya.

      Delete
  25. salam alaikum
    thanks for your project
    i have a problem, when i push start in flash download i get error massage
    "lookuperror :unknown encoding :cp720

    ReplyDelete
    Replies
    1. Waalaikum salam.


      What method do you use for flashing the firmware ? with Esptool.py or Esp flash tool.exe

      Delete
    2. Esp flash tool
      as your tutorial

      Delete
    3. try using esptool.py for flashing the firmware.

      Delete
  26. Thank you for your detail tutorial.

    I have a problem, after updating for ESP8266-01, I cannot using AT commands in Serial Monitor. Are there anyone have the same problem to me?

    ReplyDelete
    Replies
    1. Unplug GPIO0 ESP8266 the connected to ground arduino to switch to AT Command Mode.

      Delete
    2. I'm now understand, maybe this firmware version is not support AT Command. Thank you anyway!

      Delete
  27. Selamat sore Mas M.Andi Prasetyo... Mau tanya apakah bisa kontrol Bluetooth dan Web Server di gabungkan di 1 arduino Mega... Mohon pencerahanya mas terimakasih...

    ReplyDelete
    Replies
    1. Sore juga, salam kenal.
      Tentu saja bisa, silahkan dibuat...

      Delete
  28. Assalamualaikum. Salam kenal mas. Mau tanya kalo setelah update firmware diatas at command nya masih fungsi ga? Thx

    ReplyDelete
    Replies
    1. Waalaikum salam, dengan firmware yang ini tidak bisa AT Command gan.

      Delete
  29. Assalamualaikum....
    mas apakah tutorial ini untuk koneksikan ke internet publik atau lokal, soalx ada yang sy dengar ESP8266 hanya untuk jaringan lokal sja.... jika bisa, apa perantara esp8266 untuk koneksi ke internet publik
    minta bantuanx mas.....
    wassalam...

    ReplyDelete
    Replies
    1. Waalaikum salam, Kalau artikel yang ini bisa diakses publik (Anywhere in the world). Kalau yang lokal, artikelnya ada di blog ini juga, berjudul "Kontrol Relay dengan Arduino dan ESP8266 Web Server".

      Delete
  30. gan, ketika saya download ko' nggk ada keterangan di flowchartnya..??

    ReplyDelete
    Replies
    1. Salam kenal. Keterangan apa ya gan?

      Delete
    2. salam kenal gan, maaf banyak tanya ya gan,, yang mengenai flowchart sudah teratasi, ternyata saya yang keliru gan, bisa dibuka menggunakan format.svg, sekarang untuk aplikasi reconnect nya gan setelah ane masukin channel id dan api key, ane test relay control ada peringatan FAILED "Please try again in a few second". solusi'y gmn gan..??

      Delete
    3. Salam kenal. Coba screenshot block programnya.

      Delete
  31. hello i tried to do this project.. I have a problem its just working reverse action relay board controlling app icon.why this happening pls help me.

    ReplyDelete
    Replies
    1. Hi. You use the relay module active HIGH. The solution is to change in part to turn on / off relay which was previously LOW become HIGH.

      Delete
  32. met sore gan, kenapa id:1.0 data: code:, data sama code kosong ada yang salah dimana? thx

    ReplyDelete
    Replies
    1. Selamat siang, salam kenal.
      Ubah bagian untuk ON OFF relaynya, ubah strData jadi strId

      if (strId== "1" || strId== "1.0" || strId== "1.00" ){

      Delete
  33. Assalamualaikum..
    Sudah bisa koneksi ke thingspeak.com, berhasil update, pembacaan di monitor jg sdh update. Hanya saja relay tdk berfungsi. Sy coba ukur arus ama voltase untuk pin relay 1 s/d 4 tdk berubah baik ketika perintah On dan Off. Mohon petunjuk.. Thanks

    ReplyDelete
    Replies
    1. Waalaikum salam, salam kenal. Serial monitor dan thingspeak sudah sukses, hanya saja relay tidak respon? Coba liat di serial monitornya apakah yang di update 1.0 atau 0.1 adalah ID? kalau iya.


      Ubah bagian untuk ON OFF relaynya, ubah strData jadi strId

      if (strId== "1" || strId== "1.0" || strId== "1.00" ){

      Delete
  34. assalamualaikum....
    mohon maaf bisa minta tolong untuk membuat app android agar tombol nya bisa update channel thingspeak nya ?

    ReplyDelete
    Replies
    1. Waalaikum salam.
      Coba lihat API Documentation thingspeak gan, untuk update channel. Pada aplikasi android hanya menggunakan item web1 untuk mambukanya.

      Delete
  35. Assalamualaikum gan,mau bertanya ni gan kalo kita hanya menggunakan arduino uno dan esp8266 nya diganti denegan ethernet shiled w5100 pada kode programnya apa yang perlu dirubah atau di sesuaikan gan?

    ReplyDelete
    Replies
    1. Waalaikum salam. Tentu bisa.

      Contoh projectnya ada di channel youtube ane, silahkan di lihat https://www.youtube.com/channel/UC_TlM6qzQU8MrJrnnRFFHGA/videos

      Delete
  36. Assalamualaikum, gan bisa gk koneksi esp8266 ke internet tnpa menggunakan router. ??

    ReplyDelete
    Replies
    1. Waalaikum salam, bisa. Set ESP mode AP dengan CWMODE=3

      Delete
  37. mas,ada referensi kl saat inet offline pasti harus pakai manual kan? ada ga switch on/off nya?

    thanks

    ReplyDelete
    Replies
    1. Salam kenal. Maksudnya bagaimana gan? kalau internet offline, bisa nyalakan pakai saklar mekanik? bisa...

      Delete
  38. assalamulaiakum Bang, mau tanya, koneksi nya pakai modul gsm sim800l bisa nggak? untuk ngirim data melalui internet

    ReplyDelete
    Replies
    1. Waalaikum salam, tentu saja bisa. Tapi, seperti yang kita tau bahwa GPRS tidak wuzz wuzz internetnya.

      Delete
    2. Terima kasih bang,,, buka flowchart pembuatan reconnect gmna bang,,soalnya pas di buka keterangan bagian" nya gak bisa.muncul

      Delete
    3. Buka file .svg nya dengan browser yang ente gunakan...

      Delete
    4. bang kalau untuk memanggil data dari tinydb dari layout setting ke layout kontrol gimna?

      Delete
    5. Ya pakai tinydb, di settingnya dengan storevalue dan di kontrolnya pakai getvalue.

      Delete
  39. Gan klo mau 8 chanel relay yang perlu ditambah apa?

    ReplyDelete
    Replies
    1. Tambah field di thingspeak, dan tambahkan juga di sketch.

      Delete
  40. gan ane udah ikutin semua langkah
    tapi pas simulasi reconet nya ga bisa. kaya ga fungsi gitu. kenapa yah..?

    ReplyDelete
    Replies
    1. Di thingspeaknya berhasil ke update atau tidak?

      Delete
  41. bang ini alat nya kontrol via wifi atau internet bang?
    ataukan untuk alat ESP nya ini untuk connect di internet pakai sinyal wifi?
    atau bisa bang alur prosesnya di tampilin gitu.
    thanks bang

    ReplyDelete
    Replies
    1. Ini bisa di kontrol dari mana saja. ESP hanya sebagai penghubung arduino ke internet.

      Delete
  42. Hello amazing tutorial. i just have one problem i am using a single relay everything is correct but when i activate it from your app it turns on from the webpage (thingsspeak.com) but the relay doesn't turn on. Any ideas??

    ReplyDelete
    Replies
    1. Thanks. Just make a little change in part to control the relay ... Change strData be Strid

      Delete
  43. bg, kalau menggunakan blynk gimana bg sketch programnya

    ReplyDelete
  44. salam kenal mas.
    itu klo tanpa flashing esp8266-nya bisa ga ya?

    ReplyDelete
  45. min, flash download toolx & firmware dan flowchartx ngak bisa di download lagi. tolong di cek. mkasih

    ReplyDelete
  46. gan..mau nanya.. itu gak pake modem ya

    ReplyDelete
  47. saya ijin terapkan untuk proyek saya gan terima kasih mas

    ReplyDelete
  48. kok gak bisa untuk esp flash
    selalu gagal

    ReplyDelete
  49. emailnya apa mas? ijin butuh pencerahan ini

    ReplyDelete
  50. permisi gan, mengenai program androidnya boleh minta pengarahan tentang pembuatannya??

    ReplyDelete
  51. gan, gmn cara menghubungkan antara app inventor 2 nya ke thingspeak.com?? ane bingung gan, baru belajar pake app inventor 2 soalnya. mohon pencerahannya..

    ReplyDelete
    Replies
    1. Tidak ada cara atau metode khusus kok gan untuk menghubungkannya, hanya menggunakan item web yang ada di app inventor 2. Silahkan dipelajari :)

      Delete
  52. kenapa setelah kompilasi muncul pesan
    Low memory available, stability problems may occur.

    ReplyDelete
    Replies
    1. Iya memang Low memory, tapi tidak apa-apa untuk di upload ke board arduino. Mungkin hanya stabilitas yang akan terganggu, seperti yg dikatakan "Stability problem may occur"

      Delete
  53. sudah saya coba dan bisa tapi saya masih bingung mengenai alur kerja get data dari thingspeak.com gan, kalau boleh minta email nya gan untuk penjelasan alur program arduino lebih lanjut.

    terima kasih gan sebelumnya :)

    ReplyDelete
    Replies
    1. Silahkan menuju page About yang ada di blog ini gan untuk lihat email saya.

      Delete
  54. kalau belum ada yang koreksi nih, orang kate itu Tx nya ESP ke Rx nya Arduino dan sebaliknya iya nggak!

    Terima kasih selamat berkarya dan beramal

    ReplyDelete
    Replies
    1. Iya betul, untuk bertukar data memang seperti itu... Tapi untuk flashing, RX ke RX dan TX ke TX.

      Delete
  55. kalo di tambah dengan fitur doorlock bagaimana bang??? jarak unutk modul espnya berapa meter ya??
    makasih

    ReplyDelete
    Replies
    1. Bisa. Untuk tutorial yang ini, tidak ada jarak... Selama masih bisa meng-akses internet.

      Delete
  56. Mas mau nanyak kenapa yaa pas program setelah di start itu muncul tulisan com fail trus di cmd nya itu keluarnya serial port open error ? Mohon infonya mas andi.

    ReplyDelete
    Replies
    1. Coba flashing pakai esptool.py jangan pakai software flashtool yang itu.

      Delete
  57. gan punya saya kok relaynya jadi kelip2 kenapa ya ? terimakasih tutorialnya, sukses selalu :)

    ReplyDelete
    Replies
    1. Kok bisa? mungkin ada yang kendur wiringnya? karena di program, tidak ada bagian untuk blinking led.

      Delete
  58. kalau kontrol relay pakai internet tapi via web browser gimana gan?

    ReplyDelete
    Replies
    1. Bisa, dengan Update channnel dan get channel. Silahkan baca documentationnya ThingSpeak.

      Delete
  59. mas saya mau tanya saya coba flash kok failed terus ya? kira kira tau ga penyelesaiannya? terima kasih

    ReplyDelete
  60. Missi bang ko ane erro terus pas saat install frimware infonya katanya kabelnya ada yang salah ane denga teliti melihat sket di web kk masih salah juga -_ mohon bantuanya bang

    ReplyDelete
  61. kak ini kontrol relaynya ada jarak batasannya ga?

    ReplyDelete
    Replies
    1. Yang ini dimana saja selama masih ada internet...

      Delete
  62. library espduino nya download dimana gan?

    ReplyDelete
  63. Gan, bisa nggak nanti buat tutorial pembuatan aplikasinya? Soalnya mau belajar, sama icon-icon dan gambar-gambar aplikasinya juga kalau bisa gan... :)
    Terima Kasih sebelumnya... :D

    ReplyDelete
    Replies
    1. Mungkin suatu saat ada tutorialnya di blog ini.

      Delete
  64. Gan kalo pake nya modul ethernet shield apakah bisa??

    ReplyDelete
    Replies
    1. Coba liat tutorial Arduino dan Teleduino, ada di blog ini.

      Delete

Masih Bingung atau Hal Lainnya? Silahkan Bertanya di Kolom Komentar :)

~ Dilarang SARA
~ Dilarang PORNOGRAPHY
~ Dilarang SPAM
~ Dilarang MENINGGALKAN LINK AKTIF
~ Maaf untuk Anonymous, tidak bisa Berkomentar.

Apabila Komentar anda belum muncul, Tunggu sampai di Moderasi.
Terimakasih atas Perhatiannya.


English French German Spain Italian Dutch Russian