Module Wireless nRF24L01 merupakan module yang mempunyai fungsi untuk komunikasi jarak jauh atau nirkabel yang memanfaatkan gelombang RF 2.4 GHz yang biasanya diaplikasikan untuk Scientific , Industrial, maupun Medical.
Pada modul ini menggunakan antarmuka SPI (Serial Parallel Interface) untuk berkomunikasi dengan mikrokontroler dalam hal ini Arduino. Tegangan operasional normal untuk mengakses module ini yaitu 3.3Vdc, yang biasanya dibantu dengan regulator AMS1117.
Module nRF24L01 memiliki perangkat keras yang berupa baseband logic Enhanced ShockBurst dan protocol accelerator yang memungkinan untuk berkomunikasi dalam kecepatan tinggi.
Selain itu, module ini juga memiliki fitur true ULP solution, yang berfungsi sebagai penghemat konsumsi daya sehingga hemat energi. Dan bisa digunakan juga sebagai pembuatan perangkat fitnes dan olahraga, pendukung PC, mainan anak-anak, piranti perangkat untuk permainan, dan lainnya.
Kesimpulan dari beberapa fitur Modul Wireless RF nRF24L01 :
- Data rate mencapai 2Mbps
- Penanganan transaksi paket otomatis
- Beroperasi pada pada pita ISM 2.4 GHZ
- Konsumsi daya yang rendah
- Penanganan paket data otomatis
Pin Out dari Modul Wireless RF nRF24L01
Gambar Modul Wireless RF
Tutorial sederhana Pengendalian led dengan modul nRF24L01
Bahan yang dibutuhkan antara lain :
- Arduino Uno 2 pcs
- Modul Wireless RF nRF24L01 2 pcs
- LED 5mm merah
- Push Button
- Resistor 220 ohm
- Breadboard
- Kabel Jumper
- Komputer + Software IDE Arduino
[irp]
Skema yang perlu dirangkaikan
- Arduino Uno sebagai pengendali (TX)
- Arduino Uno sebagai RX
Perkabelan antara modul dengan Arduino UNO
- VCC : 3.3 Vdc
- GND : GND
- CE : Pin.9
- CSN : Pin.10
- SCK : Pin.13
- MOSI : Pin.11
- MISO : Pin.12
Library yang diperlukan :
- Library nRF24L01+ [ddownload id=”1065″]
- Library RF24 [ddownload id=”1066″]
Peletakan Library pada masing – masing Operation System :
- PC (Windows) : Program file /Arduino/ libraries
- Mac : (home directory)/Applications/Arduino (Show Package Content)/ Contents/Java/Libraries
- Linux : (home directory)/sketchbook/libraries
Kode program untuk TX
/* www.nyebarilmu.com */ #include <SPI.h> //penyertaan library header penggunaan interface SPI #include <nRF24L01.h> //penyertaan library header nRF24L01 #include <RF24.h> //penyertaan library header RF24 int pesan[1]; RF24 radio(9,10); //instruksi untuk chip enable, dan chip selector const uint64_t pipe = 0xE8E8F0F0E1LL; int pushbutton = 2; //nama alias pin.2 dengan nama pushbutton void setup(void){ Serial.begin(9600); //penggunaan serial monitor dengan kecepatan 9600bps radio.begin(); //instruksi memulai prosedur pembacaan module radio.openWritingPipe(pipe); pinMode(pushbutton, INPUT);} //deklarasi pushbutton sebagai input void loop(void){ if (digitalRead(pushbutton) == HIGH){ //jika pushbutton ditekan pesan[0] = 111; radio.write(pesan, 1);}} //mengirim data
Kode program untuk RX
/* www.nyebarilmu.com */ #include <SPI.h> //penyertaan library header penggunaan interface SPI #include <nRF24L01.h> //penyertaan library header nRF24L01 #include <RF24.h> //penyertaan library header RF24 int pesan[1]; RF24 radio(9,10); //pin yang dideklarasikan untuk chip enable, chip selector const uint64_t pipe = 0xE8E8F0F0E1LL; int LED = 2; //nama alias untuk pin.2 yaitu LED void setup(void){ Serial.begin(9600); //menggunakan serial monitor pada 9600bps radio.begin(); //instruksi prosedur mulai pembacaan module radio.openReadingPipe(1,pipe); radio.startListening(); pinMode(LED, OUTPUT);} //deklarasi pin sebagai output void loop(void){ if (radio.available()){ //jika terbaca data di module bool selesai = false; while (!selesai){ //perulangan apabila selesai = TRUE selesai = radio.read(pesan, 1); Serial.println(pesan[0]); //menuliskan informasi di serial monitor if (pesan[0] == 111){delay(10);digitalWrite(LED, HIGH);} //jika sesuai data, maka LED akan menyala else {digitalWrite(LED, LOW);} delay(10);}} //nilai tunda 10 ms untuk pembacaan data berikutnya else{Serial.println("No radio available");}}
Selamat mencoba!
Terimakasih sudah berkunjung, dan semoga bermanfaat. Salam nyebarilmu.com!
>> CMIIW <<
Assalamualaikum… Saya ingin bertanya kalau untuk pipe itu bebas apa harus pipe = 0xE8E8F0F0E1LL?
walaikumsalam,
itu udah library nya gan, bisa dilihat juga dipengembangannya di project multi-node
semoga bermanfaat,
Kalo mau buat mic wireles bisa pake ini nggak?
Kalo module ini buat khusus data gan,
Kalo itu tunggu aja, saya buatin artikel (schematic + pcb board) wireless micc,
gan, bisa konsultasi soal ngirim data dari arduino ke rasp pi pake nrf ga ? kalo bisa bisa minta cp atau email gan ?
belum pernah ngoprek arduino gan,
masih fokus ngoprek esp8266 sama arduino saja,
terjadi eror seperti ini gan di rangkaian rx ‘ void value not ignored as it ought to be ‘ gmn cara mngatasinya ???
Ane coba, normal gan
terjadi eror seperti ini gan di rangkaian rx ‘ void value not ignored as it ought to be ‘ gmn cara mngatasinya ???
Assalamualikum Master.. terima kasih tutornya.. sy sedang mencoba wireless dengan modul yg menggunakan antena sma pengennya bisa berjarak maksimal sesuai reff bisa 1100 mtr untuk kendalikan pompa air jarak jauh di desa,
saya pakai arduino nano x2, modul 1km NRF24l01 PA LNA antenna 2.4Ghz long distance tranceiver x2, modul relay & pushbutton beserta kerabatnya
code diatas ijin copas n oprek2 agar sesuai peruntukkan, semoga bisa jd bekal mudik dan mengatasi masalah supply air didesa.. amiin
Terima kasih n keep posting nice idea Master.. semoga menjadi amal ibadah selalu..amiin
amiin gan, thanks sudah berkunjung,
Kalo itu lebih bagus menggunakan modul gsm saja gan, jadi pemantauan lebih enak dari mana saja,
Assalamualikum Master.. terima kasih tutornya.. sy sedang mencoba wireless dengan modul yg menggunakan antena sma pengennya bisa berjarak maksimal sesuai reff bisa 1100 mtr untuk kendalikan pompa air jarak jauh di desa,
saya pakai arduino nano x2, modul 1km NRF24l01 PA LNA antenna 2.4Ghz long distance tranceiver x2, modul relay & pushbutton beserta kerabatnya
code diatas ijin copas n oprek2 agar sesuai peruntukkan, semoga bisa jd bekal mudik dan mengatasi masalah supply air didesa.. amiin
Terima kasih n keep posting nice idea Master.. semoga menjadi amal ibadah selalu..amiin
amiin gan, thanks sudah berkunjung,
Kalo itu lebih bagus menggunakan modul gsm saja gan, jadi pemantauan lebih enak dari mana saja,
ka librarynya ko ga bisa dipakai ya?
gan, kok gagal ya? ketika tombol dipencet LED tetap tidak mau nyala…
logikanya sudah saya balik juga pun tidak bisa. jadi tombol dipencet, lampu malah mati… loguikanya kan tanpa dipencet lampunya otomatis nyala
gan, kok gagal ya? ketika tombol dipencet LED tetap tidak mau nyala…
logikanya sudah saya balik juga pun tidak bisa. jadi tombol dipencet, lampu malah mati… loguikanya kan tanpa dipencet lampunya otomatis nyala
Kalau TX nya “NodeMCU ESP826” bisa ga gan?
sangat bisa gan, perlu dimodifikasi program yang ada di artikel
Kalau TX nya “NodeMCU ESP826” bisa ga gan?
sangat bisa gan, perlu dimodifikasi program yang ada di artikel
Aslmkm
Maaf gan, bisa gak untuk bikin wireless audio (speaker)
walaikumsalam gan,
untuk wireless audio belum pernah dicoba gan,
tapi biasanya kalo itu gunain modul yang bluetooth
Aslmkm
Maaf gan, bisa gak untuk bikin wireless audio (speaker)
walaikumsalam gan,
untuk wireless audio belum pernah dicoba gan,
tapi biasanya kalo itu gunain modul yang bluetooth
Gan modul ini bisa untuk kirim dan nerima data kan?
iya bener gan, bisa untuk kirim dan nerima
gan kalo Arduino unonya diganti ke nano cemana gan?
bisa saja gan, tinggal disamakan pin io sama board modulenya di software IDE
gan kalo Arduino unonya diganti ke nano cemana gan?
bisa saja gan, tinggal disamakan pin io sama board modulenya di software IDE