CARA PROGRAM GSM MODULE SIM800L V2 MENGIRIM SMS MENGGUNAKAN ARDUINO
Arduino Menggunakan GSM Module SIM800L V2 |
Pada kesempatan kali ini saya akan membahas Tutorial Cara Program GSM Module SIM800L V2 Mengirim SMS Menggunakan Arduino.Module GSM GPRS SIM800L V2.0 adalah module QUAD BAND GSM/GPRS yang kompatibel dengan Arduino, MCS-51, STM32, AVR, dan Mikrokontroler yang compatible.
Module ini Biasa di gunakan untuk voice call, SMS dan GPRS. SIM 800L V2 salah satu GSM GPRS Module yang banyak di gunakan untuk keperluan hobby dan proyek profesional.
Kelebihan module ini harganya relatif lebih murah di bandingkan dengan module gsm lainnya, untuk versi sebelumya SIM800 tegangan input Vcc nya masih 3.7V - 4.2V , kalau dapat tegangan langsung 5V bisa menyebabkan kerusakan pada module GSM Sim800 tersebut, sehingga memerlukan Dc to DC Stepdown untuk menurunkan tegangan dari 5 V DC ke 3.7V - 4.2V.
Untuk Module SIM800L V2 Vcc nya sudah bisa 5V DC sehingga bisa langsung di hubungkan dengan Vcc 5V DC dari arduino, sehingga tidak membutuhkann regulator step down.Untuk bisa mengirim SMS SIM800 harus dipasang Sim Card GSM,untuk lebih jelasnya bisa mengikuti langkah-langkah dibawah ini :
GSM Module SIM800L V2 |
Module/Part yang di butuhkan :
- Arduino Uno
- GSM Module SIM800L V2.0
- Sim Card GSM
- Kabel Jumper Male-Female
WIRING DIAGRAM
Berikut cara menghubungkan module GSM GPRS SIM800L V2 ke arduino
Berikut cara menghubungkan module GSM GPRS SIM800L V2 ke arduino
Wiring Module GSM SIM800L V2 Dengan Arduino |
SIM800L | Arduino |
Rx | D7 |
Tx | D8 |
VCC | +5V |
GND | Gnd |
CONTOH PROGRAM SERIAL
#include "gprs.h" #include <SoftwareSerial.h> GPRS gprs(9600);//BaudRate Gsm void setup(){ Serial.begin(9600); while(!Serial); Serial.println("Test Serial debug ..."); gprs.preInit();//Power on Gsm while(0 != gprs.sendATTest()) { Serial.println("Sim800L init error!"); } Serial.println("Sim800L init O.K!"); } void loop(){ gprs.serialDebug(); }
CONTOH PROGRAM KIRIM SMS MENGGUNAKAN SOFTWARE SERIAL
#include <SoftwareSerial.h> //SIM800 TX Terhubung Arduino D8 #define SIM800_TX_PIN 8 //SIM800 RX Terhubung Arduino D7 #define SIM800_RX_PIN 7 SoftwareSerial serialSIM800(SIM800_TX_PIN,SIM800_RX_PIN); void setup() { Serial.begin(9600); while(!Serial); //Memulai Komunikasi Serial Arduino dengan SIM800 serialSIM800.begin(9600); delay(1000); Serial.println("Program Kirim SMS..."); serialSIM800.write("AT+CMGF=1\r\n"); delay(1000); //No tujuan SMS (Ganti dengan Nomor Penerima SMS) serialSIM800.write("AT+CMGS=\"08211456XXXX\"\r\n"); delay(1000); //Isi SMS serialSIM800.write("Kirim SMS dengan SIM 800L - www.labelektronika.com"); delay(1000); serialSIM800.write((char)26); delay(1000); Serial.println("SMS Terkirim !"); } void loop() { }
#include <gprs.h> #include <SoftwareSerial.h> GPRS gprs; void setup() { Serial.begin(9600); while(!Serial); Serial.println("Program Test SMS"); gprs.preInit(); delay(1000); while(0 != gprs.init()) { delay(1000); Serial.print("init error\r\n"); } Serial.println("Init success, start to send SMS message..."); gprs.sendSMS("08211456XXXX","Kirim SMS www.labelektronika.com");//ganti no tlp
}
void loop() {
}
Module GSM GPRS SIM 800L V2 dapat di kembangkan untuk aplikasi IOT, Remote Kontrol,SMS Gateway, Smart home, Data Logger dan aplikasi lainnya.
Untuk Pertanyaan bisa meninggalkan komentar di kolom komentar.Semoga Artikelnya bermanfaat :).
Terimakasih bang
BalasHapussemoga membantu Artikelnya :)
Hapustambahin lagi dong bang, yang buat nerima sama baca sms sim800L, hehe
Hapussangat membantu artikelnya bang. thx
di tunggu updatenya,Semoga membantu mas.
Hapusagar mosul simbisa mengiri sms lagi gimana cara bang ?
BalasHapusatau gimana cara inputan sms itu dari sensor pir, jadi ketika ada gerakan yang terdekeksi sensor pir maka sim800 mengirim itu gimana caranya bang ?
terimakasih sebelumnya
secara sederhana , seperti ini :
BalasHapusint pirSensor = 8;
boolean statusSensor=false;
void setup() {
pinMode(pirSensor, INPUT);
}
void loop() {
int sensorValue = digitalRead(pirSensor);
if (sensorValue == 1) {
if(statusSensor){
gprs.sendSMS("08211456XXXX",Kirim SMS www.labelektronika.com);//ganti no tlp
}
statusSensor=false;
}else{
statusSensor=true;
}
}
Komentar ini telah dihapus oleh pengarang.
BalasHapusbang agar pendefinisian pin RX TX nya tetap memakai pin 0 dan pin 1 gimana ya?
BalasHapusPin 0 dan Pin 1 di arduino mempunya fungsi khusus sebagai Serial,untuk lebih jelasnya bisa baca di artikel ini http://www.labelektronika.com/2017/02/arduino-uno-mikrokontroler-atmega-328.html
HapusSelanjutnya untuk mendefinisikan Serial pin untuk komunikasi dengan GSM :
Hapusvoid setup() {
Serial.begin(9600);
while(!Serial);
//Memulai Komunikasi Serial Arduino dengan SIM800
Serial.begin(9600);
delay(1000);
Serial.println("Program Kirim SMS...");
Serial.write("AT+CMGF=1\r\n");
delay(1000);
//No tujuan SMS (Ganti dengan Nomor Penerima SMS)
Serial.write("AT+CMGS=\"08211456XXXX\"\r\n");
delay(1000);
//Isi SMS
Serial.write("Kirim SMS dengan SIM 800L - www.labelektronika.com");
delay(1000);
Serial.write((char)26);
delay(1000);
Serial.println("SMS Terkirim !");
}
void loop() {
}
Semoga Bermanffat :)
bang mau tanya program terima smsnya gimana
BalasHapusdalam waktu dekat kita buat tutorialnya, terima kasih masukannya.
HapusArtikelnya Jelas, Mantap dah
BalasHapusSekalian mau tanya min, saya mau kombinasi sim800l v2 dengan sensor pir,
Jadi apabila sensor pir mendeteksi keberadaan manusia, maka sim800l akan mengirim sms, tapi sms hanya 1 kali aja min.
Kalo misalnya begitu ada tambahan program lg ga min ?
Biar jika sensor mendeteksi, sim800l akan mengirim sms 1 kali saja, untuk pendeteksian selanjutnya tidak akan mengirim sms lg. Terima kasih
selamat pagi mas...saya sdh ikuti semua petunujuk..di serial monitor sdh bilang "sms terkirim"...tetapi di hp saya kok blm terima sms nya ya..mhn pencerahan penyebabnya apa ya?
BalasHapusPertama, pastikan gsm modulenya sudah dapat signal operatornya, dengan di tandai kedipan lampu lednya lambat, perhatikan pas pertama kali nyala kedipannya cepet, pas searching operator.setelah sudah dapat kedipannya lambat.terus pastikan wiringnya dan prgram sesuai.semoga bermanfaat :)
HapusMas mau tanya kalau misal kita kontrol Servo dengan kirim SMS gitu bisa ga kira2?
BalasHapusjadi misal kita mau servonya berputar 30 derajat dengan kita kirim perintah lewat SMS bisa ga?
Terimakasih sebelumnya..
Bisa, mikrokontroller dapat menjalankan beberapa proses secara otomatis.
Hapussudah saya coba mas, dengan perlengkapan : Arduino uno, sim800l v2, kabel jumper. Tp sim800l nya blingking cepat 6-7 kali, setelah itu mengulang kembali dan begitu seterusnya. Dan Ketika di telp, gak aktif no nya. Apa gak ada menggunkan tambahan komponen mas. Jumper langsung ndak bisa..mohon pencerahannya
BalasHapuskalau dari pengalaman penulis, sudah pegeng beberapa kali untuk project yang berhubungan dengan gsm module ini,ngga ada masalah.pastikan aja wiring, program,power supply dan hardware ok.
Hapusmin kenapa sim 800 v2 ini susah cari sinyal
BalasHapuskalau dari pengalaman kita, sim 800 termasuk ok, pastikan operator yang di pakai bagus di lokasi tersebut dan tegangannya stabil
HapusMisalnya kita pakai Fingerprint lalu pas ada yg akses langsung terkirim sms itu bagaimana kodingnya bang? Terima kasih
BalasHapusPertama buat program untuk baca finger print, selanjutnya buat pengkondisian jika finger print kebaca kirim sms.
HapusKalau pakai atmega 2560 koding rx tx nya gimana
BalasHapusSerial1.write("AT+CMGF=1\r\n");
Hapusdelay(1000);
//No tujuan SMS (Ganti dengan Nomor Penerima SMS)
Serial1.write("AT+CMGS=\"08211456XXXX\"\r\n");
delay(1000);
//Isi SMS
Serial1.write("Kirim SMS dengan SIM 800L - www.labelektronika.com");
delay(1000);
Serial1.write((char)26);
delay(1000)
kak, untuk port kakinya harus 7 dan 8 sebagai tx dan rx?
BalasHapusatau bisa diganti?
kalau bisa bagai mana caranya?
bisa ganti,nanti tinggal di definisikan di pin Rx dan Tx di software serial
Hapusgan boleh tanya saya coba pakai gsm sim800l v2 untuk kirim nilai data ke website, tapi kendalanya saya upload program arduino hasil tampilan di serial monitor tidak ada balasan at-command sama sekali padahal modul sim menunjukkan kedip lambat, saya coba ganti baudrate berkali2 namun hasilnya masih tidak ada, bagaimana gan solusinya? apakah dari wiring atau faktor lain?
BalasHapusPastikan Wiring, Hardware dan Powernya ok, karena selama ini admin belum pernah mengalami kendala.
HapusGan, gimana cara mengirim pesan lebih dari satu penerima? Codingannya gimana ya?
BalasHapusprogramnya tinggal di ulang , misal
HapusserialSIM800.write("AT+CMGF=1\r\n");
delay(1000);
//No tujuan SMS (Ganti dengan Nomor Penerima SMS)
serialSIM800.write("AT+CMGS=\"08211456XXXX\"\r\n");
delay(1000);
//Isi SMS
serialSIM800.write("Kirim SMS dengan SIM 800L - www.labelektronika.com");
delay(1000);
serialSIM800.write((char)26);
delay(1000);
Serial.println("SMS Terkirim !");
serialSIM800.write("AT+CMGF=1\r\n");
delay(1000);
//No tujuan SMS (Ganti dengan Nomor Penerima SMS)
serialSIM800.write("AT+CMGS=\"081807XXXX\"\r\n");
delay(1000);
//Isi SMS
serialSIM800.write("Kirim SMS dengan SIM 800L - www.labelektronika.com");
delay(1000);
serialSIM800.write((char)26);
delay(1000);
Serial.println("SMS Terkirim !");
makasih gan, saya mau nanya gan bagaimana jika password salah 3 kali kemudian kirim sms gan? lalu gimana codingnya gan?
BalasHapusterimakasih gan
bikin pengkondisian, misal tambahkan cntsalah++ di function salah password.terus jika cntsalah >=3 kirim sms
HapusBang, kalo program untuk mengirim sms sebagai peringatan apabila nilai sensor melewati batas gimana bang? Tapi data yg dideteksi melewati batas iniada di database bang. Mohon dijawab yaa bang, terimakasih bang
BalasHapusPertama read datanya dari database, bisanya kalau database local bisa pakai serial, ethernet atau wifi melalui komputer.kalau lewat databse online bisa lewat gsm,wifi atau ethernet .selanjutnya data di read di di arduino.
Hapuswarning: ISO C++ forbids converting a string constant to 'char*'[Wwrite-strings]
BalasHapusgprs.sendSMS("08574715xxxx","relay dimatikan")
error seperti itu biasanya salah dimananya ya?
kalau dari admin belum pernah mengalami error seperti di atas, tapi kalau dari erroronya tentang pointer variable.
Hapusgan minta gambar modul sim yang di fritzing dong. nyari belom ketemu.. send email aja gan ke isasenoaji@gmail.com
BalasHapusdi fritzing yang baru sudah ada
HapusGan mau tanya supaya GSM hanya 1 kali SMS gimana, saya kombinasi dengan sensor ultrasonik
BalasHapusTolong banget jawabannya gasπ
pakai pengkondisian/if pakai boolen, misal statusSend=true ketika kondisi tercapai, setelah kirim statusSned=false
HapusKalo mau reset nomor tujuan menggunakan keypad gimana caranya ya masπ
BalasHapustambahkan keypada dan tambahkan program baca keypada untuk memasukan number
Hapusminta part sim800l v2 fritzingnya boleh gak gan?
BalasHapusdi fritzing terbaru sudah ada mas rifan
Hapusmas cara mengirim sms tapi inputnya dari sensor mq-7, cara pengkondisian gimana ya? terimakasih
BalasHapus
Hapusif(bacaSensor > nilaiBatas){
kirimsms...
}
Bang kalo menggunakan arduino atmega 2560 gimna cara nya bang? Soalnya beda sama uni bang
BalasHapusPakai Hardaware serial, misalnya Serial1,Serial2 dst
HapusMaaf bang mau tanya, misalkan saya punya struct, dan struct ini punya variabel char yg mana saya menyesuaikan sama "serialSIM800.write"nya soalnya harus pake char.
BalasHapusNah pertanyaan saya, misal char-char dalam struct tersebut saya gunakan untuk mengisi nomor telepon, dan ada yang saya selipkan didalam sms yang akan dikirim. Ada saran ndak bang?
*NB: dibawah saya ambil contoh penerapan kodingan saya tapi gagal. Salahnya dimana ya bang?
struct data{
char telp[15]; //anggap saja sudah terisi dari mcu lain karena saya pake NodeMCU 8266
char plat[15];
}data1;
serialSIM800.write("AT+CMGF=1\r\n");
delay(1000);
//No tujuan SMS (Ganti dengan Nomor Penerima SMS)
serialSIM800.write("AT+CMGS="+data1.telp+"\r\n");
delay(1000);
//Isi SMS
serialSIM800.write("Kirim SMS " +data1.plat+ " dengan SIM 800L - www.labelektronika.com");
delay(1000);
pesan errornya, "invalid operands of types 'const char [9]' and 'char [15]' to binary 'operator+'", mohon bantuannya bang karena kebutuhan skripsi.
jadi dalam penggabungan variable harus menyesuikan type datanya, jadi harus di simpan dulu di variable untuk simpan
BalasHapusUntuk yg gprs pin rx tx nya taruh mana bang? Mohon dijawab ππ
BalasHapusTerimakasih
Bisa di pin 0 dan Pin 1
HapusHoF Legends is our in-game item collection feature and has rapidly become the preferred addition to our free slot games. Upgrade your collection of legendary mythical beings by collecting chests and tokens. You'll obtain a every day bonus of free cash and free spins every time you log in, and you may get} even more bonus cash by following us on social media. You can download the free House of Fun app on your cell phone and take all the fun of the casino with you wherever you go! These types of free μΉ΄μ§λ Έ slots are great for Funsters who are out-and-about, and in search of a fun approach to pass the time. Spin the reels as many occasions as you want, but always keep an eye on|regulate|control} your bankroll.
BalasHapus