No, myself I don't like just using libraries if at all possible (unless super-complicated) and I really appreciate your great effort in explaining the details in using these RF modules. Many thanks!
Thank you for your generosity in sharing a great project. This is a really great video that gets to grips with the NRF24L01 and encourages people to grapple with the data sheet rather than using a library. This is well structured code and lays out the way to approach any project/ attached device without depending on libraries. Excellent work.
I had much trouble trying to breath life into a system with 2 PIC MCU's with NRF modules. I will try again, following Your instructions. Thank You Kevin for this amazing video!
I also got these just couple weeks ago! I was also planning to use these in home automation. I've already used 433Mhz, but they are power hogs and receivers don't have the same flexibility of transceivers. Thanks Kevin!
Hi sir. I'm a little late but.. Good job. As a person who usually doesn't use arduino in my projects it's very hard to find people actually explaining how to do something. Instead people just show you how to copy the code and press the upload button. I'm modding my wireless xbox 360 controller to send data via nRF24L01 and using the vusb library to create a hid device on the other side. My goal is to make the controller act as mouse and keyboard. Looking for information is hard because, even though it's such a commonly used radio, most videos are just using a nrf24 with no explanation. Have a nice week.
I haven't read through all of the comments, but another way to integrate the NRF24L01+ with an Arduino and breadboard is to use Dupont female-to-male jumper cables. The female ends would connect to the wireless module and the male ends would connect to either the Arduino pins or the breadboard.
your code is superb! We need something like this that will show us the core programming of what those chip is doing. Keep it up and will wait for your next great tutorial!
Kevin thank you so much for sharing all this with us. Please keep going with this I am looking forward to seeing the mesh network stuff and anything else you want to share about these modules. I just ordered 20 of them because they are so cheap. Thanks again and keep pumping out the great videos
A little tip: I'm pretty sure if you use Pin 10 as the chip select, which is the Arduino Uno's dedicated SPI CS pin, you will not need to manually pull the pin low and high every time you want to do a SPI transfer. The SPI library will handle it for you. I'm pretty sure this is how I've done it any time I've used SPI devices with the Arduino. It should help clean your code up a little bit :)
Thank you for the tutorial, immensely helpful. Would you consider making a follow up to this video with anything else you've learned from these modules? Maybe the mesh network you were talking about?
THANK YOU SO MUCH. Im building a drone and all i wanted was some help to communicate with the nRF24 without external libraries. best video on the subject side by side with the one from iforce2d. thank you so much
Excellent video! I tried to program that rf chip with an arm cortex (lpc1114/302) but didn't work, but with this great video I understood some things, thanks and regards!
Great detailed video. You may want to use "INPUT" or "OUTPUT rather than 0/1 for NRFpinmode, as well as "HIGH" or "LOW" rather than 1/0 in your NRFpinwrite()
Hi Kevin, Really nice video, much easier to follow than other NRF24L01 tutorials around. It let me code what I needed for my wireless project in 1 evening :-) Thanks
Thanks Kevin for this wonderful video. Did you experiment more with NRF ?. I am planning to use NRF in one of my project and plan to develop sensor mesh to transmit data to host. Hope to see more of your videos on NRF and Arduino.
Kevin Darrah, Please correct me if I'm wrong. Summarizing your code: it is essentially a barebones implementation of how to configure the hardware on the nRF transceivers to send bits; it is code that would be in a driver library for the device though it does not implement any communication features (like error checking, bit-rate optimization, etc.) for users who intend to use it to communicate data. Not to criticize your video or argue that it wasn't helpful, I just wanted to know how your code bridges the gap between the hardware and the physical process of sending/receiving bits. This, I think, would make a good description for your video. Best, MT
Kevin This is the first video that goes into some depth, Please make more videos about this subject. It tried to hookup 3 nRF24L01+, 2 for transmitter, and one receiver. I put 1 TX in my shed and 1 TX in my garage, and the receiver is in the house. I setup transmitters to not transmit unless I had a alarm. The problem is, I had the one in the shed died, and I had no way to know that. I don’t know how to write the code for the TX’s to make a “I am a live” that TX ever 4 hours and tells the receiver all is well. About making a new board If you could make a board like SainSmart SKU: 20-011-937, 3.3V/5V Supply Voltage and IO Voltage switch, and have sockets for the nRF24L01+, and XBee modules, and other 3.3 device you would have the best of all worlds
Off topic: Have you ever used or tested an NIRD CO2 sensor with Arduino? Just wondering if you have a video of a similar project. Great video demo by the way.
Thank you very much for this video. I am struggling with SPI understanding and trying to set Si4432 (433 MHz) to work. So far, no success, but I see few places where perhaps I missed something (for example "delay(1)" to let transfer of the data to settle).
Very nice work! the code also works on Energia with the TI Tiva C ARM boards and the MSP430 launchpads. If you do make it into a library it would nice if it remained compatible with Energia. I bought a bunch of these module on ebay for a few $$$ and will link them with this code as a basis.
Finally a video on how the thing works. Most other videos just say, here is how you connect and here is the library you use, now please like, comment and subscribe and please donate via patreon ;-)
Hey Kevin, is it possible for you to revisit the NRF24 module and show a demonstration how to set up auto ack with payload? I have tried it a million times but never succeeded at it. Much appreciated
Hi, great video! Did you created the library for "easier" using? I'm getting troubbles trying to comunicate 2 transmitters to one receiver, not using your code, but using RF24Network.
It's an absolutly amazing video I didn't understand everything but it's my failur because my English is veery bad but you done that amazing with the code
Thanks for the very clear explanation, we r too lazy to read the datasheet and that is y u made this video for the likes of us ;-) Anyway, can you explain why u r reinventing the wheel ?! There r already two great libraries (MiRF & RF24) that seems to work fine Is there a missing feature u r aiming to have ?!
Actually this is a perfect video for me. I'm sick of buying sensors and then being not able to use the libraries for my projects because I can't use the datasheet, I'm still climbing the geek ladder. I'll try to learn this in and out so I can get the hang of writing my own libraries.
Hi me again. Here is a link that sells your type of module. It only sells 2.5 Yen (less than half dollar). And the description of that module clearly states it's a SI24R1 made in Taiwan.
Hi Kevin, Great video as always. You are a born inventor and teacher...deadly combination! I was wondering if we can have n Arduino transmitters talk to a single Arduino..like a spoke and hub configuration. If so, how would your code change so that it knows which Arduino is send what. Thanks and keep it coming...
Is this a practical wireless solution for sending large byte arrays, or character strings from arduino to arduino? Or would there be a significant amount of noise or dropped data in the transmission? Looking for cheap / streamlined / wireless ways to drive lots of neoPixel leds.
Hey Kevin, well delivered (as usual) and funnily enough I've just bought a 315Mhz RX & TX for a project I'm working on, please could you give me an indication of the expected range assuming line of sight (no walls). I went for 315Mhz coz final usage will be woodland environment where lower frequency will propagate more effectively, however, the 'transceiverness' may be worth the range hit :) thanks for your great channel bud.
Tidy Have this when compiled thro: Sketch uses 6990 bytes (21%) of program storage space. Maximum is 32256 bytes. Global variables use 1754 bytes (85%) of dynamic memory, leaving 294 bytes for local variables. Maximum is 2048 bytes. Low memory available, stability problems may occur.
Thanks for the vids Kevin! I'm going to attempt this with an Arduino (hopefully an ATTiny or something small) as the transmitter and an intel galileo as the receiver. Any tips?
I have two NRF24L01 and two Arduino nano's. Programmed one as transmitter and the other as receivers. Cant get it to work as expected. Even i slapped a 4.7uf capacitor on both the NRF modules. Both arduinos are powered by 5V output. Trasmitter with the 5V from an ESC that is powered by 7.4V 2S lipo and the receiver is connected the USB port. Both NRF modules are powered by 3.3 output from the Nanos. Not sure what i need to check now and I am stuck. Could you please help.
People who do not take the time to write their own codes will never learn.. I've seen people that use Arduino that cannot write a blink sketch but they copy sketches written by others. This may work sometimes but when you run into errors you need to know how to diagnose and solve the error hence the reason anytime you can practice using correct functions with the correct syntax will further your skills as a coder / tech. Cheers friend Aj
+Anthony Odin (A.J.)I realize this is months old. Amen!!! I'm fairly new to the arduino scene but I insist on writing from scratch otherwise I have no clue what's going on under the hood. When my car breaks down, I break out the tools, NOT kick the tires and scratch my head. Yup, that's an engine!!!
Is there any risk of messing up the 2.4GHz WiFi in the same area? Will these generate any interference or noise? What if the RF transmitters are transmitting a lot of data (like for a minute solid)?
Hi, I love the video on the NRF24L01 is very good ..... if it is not much trouble I do not know if I could clarify a doubt I have which is: How could I use the NRF24L01 in an external interrupt that has the arduino? Thank you
Hey Kevin, I am currently planning a project where I control a Quadcopter using a Joystick connected to a PC and have one of these Nrf's send the controls to the Quad. Is is possible to do such a thing? I understand it will be a hard task but I am really determined to do it. If yes, can it be done with Java? as it is my most fluent computer language
Is this based on line of sight communication or is it able to transmit data from one room to another or are there problems due to concrete wall shielding? Can this be used in a quadrotor ?
hi, the video is awesome. i learned a lot but when i use the code with my arduinos in the serial monitor of the transmitter it is printed "PING FAIL" in all the pings and just 1 "PING SUCCESSFUL", i don't know what to do, if you can help would be awesome, thanks btw
Ok. How many module can I use ?. it interference with other module ?. I am asking for example I am using arduino uno as primary and then AT tiny as secondary. If I am connecting HC05 bluetooth with uno. then these nrf24l01 is connected many with this uno. then receiver side each AT tiny connected with nrf module.
Hey Kevin.... Awesome Vids..... I need a wireless Cam that can be connected to a PC for a Project. the basic Layout is simple.... Cam to Ardunio,ardunio to Xbee(any transmitting Sys).. and from there to PC.... Can u share your thoughts on how to Achieve it Thanks in advance
what happen with this guy? are u out of your freaking mind?... this is video is just amazing! im starting a new project and i just saw what i have been needing!
I tried the code with the ping function and only got a successful ping once over 20 or 30 packets maybe while moving the RF modules around. Not really sure where to go from there. Hopefully I'll get this code working, looks like a cool project.
Well apparently I was wrong. I only get a successful ping when 0 is the value transmitted. That means no data is getting through. I sure hope its me and not the cheap ebay tranceivers I bought.
Hi kevin, im a huge fan of you, I believe ur a genius by getting this which I consider very hard projects to the reality and explain them so well. Thanks a lot in advance!! =D Im up to the task to test ur code and Im first understanding every part of it, and I happen to have a doubt: On NRF_ClearInterrupts() function u read bits 4,5 & 6 and if is a 1, then you write a 1 to clear them? And in 14:35 serial monitor says that when they are turned off, they have a 0.... Maybe its me that doesn't understand this quite well, thanks a lot if you solve me this Again awesome work ur doing with your videos! Cheers from mexico!
You said the transciever only runs on 3.3V, and you need a separate regulator to power it if you run it with arduino. But you don't use any regulators in your video, it's just the Arduino @5V, and the radio with cables soldered to it. Could you (or anyone) please clarify this to me?
+Some Guy I don't program Arduinos but you could supply it with 3.3v through a voltage divider. You should be able to use the same power source. (I program Parallax Propellers which is a 3.3v micro.) Be aware that if you use a common power supply 'and' a common ground you may have to filter out electrical noise.
The template example works excellent, but I would like to try changing the RF channel during the main loop depending a value that is received via the serial port. Is there an easy way to set the register from an int instead of bit-by-bit using e.g. NRFwrite_bit_write(5,x,1);
I was thinking of something like the code below, but I am not finding a working solution. The serial print of NRF_get_address(5, 1); tells me I am setting the channel correctly, but the ping returns as failed. Any ideas why? //add to definitions char mydata[20]; int cc=0; int dd=0; int ddbinary[7]; void loop(){// loop start loop start loop start loop start loop start while (Serial.available() == 0); mydata[cc] = Serial.read(); cc++; if(cc==11) { while (Serial.available() > 0) { Serial.read(); } Serial.println(mydata); //Optional. Use for debug. cc=0; if(mydata[0]=='A' && mydata[3]==':' && mydata[6]==':' && mydata[9]=='T' && mydata[10]=='X') {//Data parsed to rule Ann:nn:nnTX where n is any integer, e.g. A55:12:87TX dd = 10*(mydata[1] - '0') + (mydata[2]-'0'); if(dd
hey Kevin I have these modules but I can't get them to communicate. I've only used an example code and schematic to reference and I am doing everything correctly, and they still won't work. any suggestions???
Its a transceiver so both ends contain a transmitter and receiver so they are driven the same way. If you mean the code for the base station and node though, idk about that
+Mrunal Ahirrao Yes, but the interference is not worse than the interference another Wifi would cause. At least for the cheap, low-power version in the video :) lg, couka
i have a arduino pro micro, which doesn't have pins 11-13. although i have changed the pins to the ones available it is not working. do you know whether something is different with the pro micro? p.s the other board im using is arduino mega 2560
I have been trying to get the example code you showed from arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo to work, but the receiver is only receiving "-1". Any idea what I am doing wrong? Thank you for your help.
Hi Kevin, Thanks for your work and your code. I'm messing with this right now and I'm having some problems. It's OK, I'm working on it. But I got a problem in your code. The NRF_ping uses random(256) which means any number between 0 and 255. When it's zero, it returns successful, even if it had failed. To avoid this (not so big) problem, change random(256) to: random(1,256) Or random(255) + 1 I personally prefer the second one. =) Regards, Leonardo
I have got 20 various boards with NRF24L01+. Mainly 2 types one with LNA one without. I also built breadboard adapters with proper decoupled voltage regs and did a looooooot of testing. The quality varies massively. Throuput varies alot from board to board some are not functioning. Some needed reflowing and work better now. The LNA types are not really x compatible. They dont work together with the ones without LNA.
No, myself I don't like just using libraries if at all possible (unless super-complicated)
and I really appreciate your great effort in explaining the details
in using these RF modules.
Many thanks!
Thank you for your generosity in sharing a great project. This is a really great video that gets to grips with the NRF24L01 and encourages people to grapple with the data sheet rather than using a library. This is well structured code and lays out the way to approach any project/ attached device without depending on libraries. Excellent work.
This video is great for appreciating libraries. There is no way a 'non-programmer' like myself could ever do this in a reasonable amount of time.
I had much trouble trying to breath life into a system with 2 PIC MCU's with NRF modules. I will try again, following Your instructions. Thank You Kevin for this amazing video!
I also got these just couple weeks ago! I was also planning to use these in home automation. I've already used 433Mhz, but they are power hogs and receivers don't have the same flexibility of transceivers.
Thanks Kevin!
Yep, I have worked with the cheap RF links in the past, so really happy to have discovered the NRF
They are not very stable and the most frustrating module I've ever used.
Dude your videos are awesome I have watched all of them keep it up I am learning so much
Kevin, You are a natural teacher! very good job, got me excited to do some radio projects.
You always explain difficult stuffs in a simple manner. Thank you.
Can't wait to see where this goes! Especially interested in the mesh network part.
Hi sir. I'm a little late but..
Good job. As a person who usually doesn't use arduino in my projects it's very hard to find people actually explaining how to do something. Instead people just show you how to copy the code and press the upload button.
I'm modding my wireless xbox 360 controller to send data via nRF24L01 and using the vusb library to create a hid device on the other side.
My goal is to make the controller act as mouse and keyboard.
Looking for information is hard because, even though it's such a commonly used radio, most videos are just using a nrf24 with no explanation.
Have a nice week.
I haven't read through all of the comments, but another way to integrate the NRF24L01+ with an Arduino and breadboard is to use Dupont female-to-male jumper cables. The female ends would connect to the wireless module and the male ends would connect to either the Arduino pins or the breadboard.
DUDE! Perfect timing, i just got a bunch of these for a project and was having some real trouble learning to use them! Thank you so much! You rock!
great! let me know how it goes
Perfect timing indeed, i just got a bunch of these also for a light project.Great work. Thanks man.
your code is superb! We need something like this that will show us the core programming of what those chip is doing. Keep it up and will wait for your next great tutorial!
Great stuff! I love how you roll! Your code is gold many thanks for the share!
thanks a lot!
Kevin thank you so much for sharing all this with us. Please keep going with this I am looking forward to seeing the mesh network stuff and anything else you want to share about these modules. I just ordered 20 of them because they are so cheap. Thanks again and keep pumping out the great videos
A little tip: I'm pretty sure if you use Pin 10 as the chip select, which is the Arduino Uno's dedicated SPI CS pin, you will not need to manually pull the pin low and high every time you want to do a SPI transfer. The SPI library will handle it for you.
I'm pretty sure this is how I've done it any time I've used SPI devices with the Arduino.
It should help clean your code up a little bit :)
Thanks for the tip. For some reason I thought that was the Arduino's chip select pin when the Arduino is a slave on the bus
Wow! Another great video that says it all! Proud to be a Patreon supporter! :)
Just donated for this magnificent tutorial. Thank you very much! :-)
Thank you for the tutorial, immensely helpful. Would you consider making a follow up to this video with anything else you've learned from these modules? Maybe the mesh network you were talking about?
I just bought a bunch of these! Awesome now I know how to use them.
i was trying to do a similar communication.
your video was really very helpful for my project.
thanks for the video
THANK YOU SO MUCH. Im building a drone and all i wanted was some help to communicate with the nRF24 without external libraries. best video on the subject side by side with the one from iforce2d. thank you so much
Excellent video! I tried to program that rf chip with an arm cortex (lpc1114/302) but didn't work, but with this great video I understood some things, thanks and regards!
Hi Kevin, you are a master, I've tried with arduino nano, but i dont have success, I'm going to try with your library. thanks a lot for your videos
Great detailed video. You may want to use "INPUT" or "OUTPUT rather than 0/1 for NRFpinmode, as well as "HIGH" or "LOW" rather than 1/0 in your NRFpinwrite()
Thank you for making a super useful video w/ code.
Hi Kevin,
Really nice video, much easier to follow than other NRF24L01 tutorials around. It let me code what I needed for my wireless project in 1 evening :-) Thanks
Thanks Kevin for this wonderful video. Did you experiment more with NRF ?. I am planning to use NRF in one of my project and plan to develop sensor mesh to transmit data to host. Hope to see more of your videos on NRF and Arduino.
Kevin Darrah,
Please correct me if I'm wrong. Summarizing your code: it is essentially a barebones implementation of how to configure the hardware on the nRF transceivers to send bits; it is code that would be in a driver library for the device though it does not implement any communication features (like error checking, bit-rate optimization, etc.) for users who intend to use it to communicate data.
Not to criticize your video or argue that it wasn't helpful, I just wanted to know how your code bridges the gap between the hardware and the physical process of sending/receiving bits. This, I think, would make a good description for your video.
Best,
MT
I hadn't heard of these. VERY cool. I'm going to give these a try- under a buck a piece- I have to try! Thanks for the tutorial and info. Cheers
I try to comprehend these videos before I too start sipping the beer.
Probably never see this but awesome video great info!!! Thanks
Kevin
This is the first video that goes into some depth, Please make more videos about this subject. It tried to hookup 3 nRF24L01+, 2 for transmitter, and one receiver. I put 1 TX in my shed and 1 TX in my garage, and the receiver is in the house. I setup transmitters to not transmit unless I had a alarm. The problem is, I had the one in the shed died, and I had no way to know that. I don’t know how to write the code for the TX’s to make a “I am a live” that TX ever 4 hours and tells the receiver all is well.
About making a new board If you could make a board like SainSmart SKU: 20-011-937, 3.3V/5V Supply Voltage and IO Voltage switch, and have sockets for the nRF24L01+, and XBee modules, and other 3.3 device you would have the best of all worlds
I love you. Thanks for this gold explanation!!
thanks so much, I thinks that it will help me very much for my new project . :). I love how to you made.
Off topic: Have you ever used or tested an NIRD CO2 sensor with Arduino? Just wondering if you have a video of a similar project. Great video demo by the way.
Thank you very much for this video. I am struggling with SPI understanding and trying to set Si4432 (433 MHz) to work. So far, no success, but I see few places where perhaps I missed something (for example "delay(1)" to let transfer of the data to settle).
quite an upgrade from the 433Mhz RF Module.
Very nice work! the code also works on Energia with the TI Tiva C ARM boards and the MSP430 launchpads. If you do make it into a library it would nice if it remained compatible with Energia.
I bought a bunch of these module on ebay for a few $$$ and will link them with this code as a basis.
Finally a video on how the thing works. Most other videos just say, here is how you connect and here is the library you use, now please like, comment and subscribe and please donate via patreon ;-)
Hey Kevin, is it possible for you to revisit the NRF24 module and show a demonstration how to set up auto ack with payload? I have tried it a million times but never succeeded at it. Much appreciated
yea, I definitely want to revisit this - especially low power modes
Thanks that would help a lot. I'm looking forward to your next video :D
Hi, great video! Did you created the library for "easier" using? I'm getting troubbles trying to comunicate 2 transmitters to one receiver, not using your code, but using RF24Network.
It's an absolutly amazing video I didn't understand everything but it's my failur because my English is veery bad but you done that amazing with the code
Hi!! Amazing stuff. Any news about a library? It would be a must have. Thanks again for the code
nice video! just wonder that important delay value (the sweet 1) is determined by the hardware (uno for example) ? the RF breakout? or just random?
I like your way of cabling, should share how you did it
Thanks for the very clear explanation, we r too lazy to read the datasheet and that is y u made this video for the likes of us ;-)
Anyway, can you explain why u r reinventing the wheel ?!
There r already two great libraries (MiRF & RF24) that seems to work fine
Is there a missing feature u r aiming to have ?!
Actually this is a perfect video for me. I'm sick of buying sensors and then being not able to use the libraries for my projects because I can't use the datasheet, I'm still climbing the geek ladder. I'll try to learn this in and out so I can get the hang of writing my own libraries.
Hi me again. Here is a link that sells your type of module. It only sells 2.5 Yen (less than half dollar). And the description of that module clearly states it's a SI24R1 made in Taiwan.
Great video buddy !!.......thank you for explaining the code step by step
I am writing for PIC microcontroller.
Hi Kevin,
Great video as always. You are a born inventor and teacher...deadly combination!
I was wondering if we can have n Arduino transmitters talk to a single Arduino..like a spoke and hub configuration. If so, how would your code change so that it knows which Arduino is send what.
Thanks and keep it coming...
Thanks for this tutorial(like always very good) i never heard from it. I think i'm gone buy it.
yep, I have a link to an ebay search query. These things are practically free!
Is this a practical wireless solution for sending large byte arrays, or character strings from arduino to arduino? Or would there be a significant amount of noise or dropped data in the transmission?
Looking for cheap / streamlined / wireless ways to drive lots of neoPixel leds.
Hey Kevin, well delivered (as usual) and funnily enough I've just bought a 315Mhz RX & TX for a project I'm working on, please could you give me an indication of the expected range assuming line of sight (no walls). I went for 315Mhz coz final usage will be woodland environment where lower frequency will propagate more effectively, however, the 'transceiverness' may be worth the range hit :) thanks for your great channel bud.
They worked from one end of my house to the other with the doors closed without issue. That's about all the testing I've done with them.
Thanks Kevin, what we talking here? 10mw or so? I'm guessing around 30 meters open air max perhaps? Cheers
I plan on doing a full blown range test with these things, so I'll keep you posted
Hey Joop Media if it's any help get in touch with your local radio club, I'm sure a ham operator could give you as much power as needed :)
i've got some 1W transmitters here but i need something to run via single cell LiPo
Kevin, have you built the libary for the NRF24L01 ?
Tidy Have this when compiled thro:
Sketch uses 6990 bytes (21%) of program storage space. Maximum is 32256 bytes.
Global variables use 1754 bytes (85%) of dynamic memory, leaving 294 bytes for local variables. Maximum is 2048 bytes.
Low memory available, stability problems may occur.
this is seriously some extensive documentation
Nice work!
Thanks for the vids Kevin! I'm going to attempt this with an Arduino (hopefully an ATTiny or something small) as the transmitter and an intel galileo as the receiver. Any tips?
I have two NRF24L01 and two Arduino nano's. Programmed one as transmitter and the other as receivers. Cant get it to work as expected. Even i slapped a 4.7uf capacitor on both the NRF modules. Both arduinos are powered by 5V output. Trasmitter with the 5V from an ESC that is powered by 7.4V 2S lipo and the receiver is connected the USB port. Both NRF modules are powered by 3.3 output from the Nanos. Not sure what i need to check now and I am stuck. Could you please help.
Im wondering, why are u writing ur code from scratch, and avoiding using libraries? What the benifite from doing so ?
People who do not take the time to write their own codes will never learn.. I've seen people that use Arduino that cannot write a blink sketch but they copy sketches written by others. This may work sometimes but when you run into errors you need to know how to diagnose and solve the error hence the reason anytime you can practice using correct functions with the correct syntax will further your skills as a coder / tech. Cheers friend
Aj
+Anthony Odin (A.J.)I realize this is months old. Amen!!! I'm fairly new to the arduino scene but I insist on writing from scratch otherwise I have no clue what's going on under the hood. When my car breaks down, I break out the tools, NOT kick the tires and scratch my head. Yup, that's an engine!!!
Is there any risk of messing up the 2.4GHz WiFi in the same area? Will these generate any interference or noise? What if the RF transmitters are transmitting a lot of data (like for a minute solid)?
Hi, did you made the board for the nrf24l01 and the arguing, I would love to see that shield.
Have you stopped doing your home control project?
oh the leaning curve :(
Hi, I love the video on the NRF24L01 is very good ..... if it is not much trouble I do not know if I could clarify a doubt I have which is: How could I use the NRF24L01 in an external interrupt that has the arduino?
Thank you
thank you very much , it was very helpful.
for this RF module, if you have more than one receivers, are they all going to receive the same message?
Very good video!
Thanks a lot!
Jeroen Teelen
Kevin, Thank you for your videos.
Can I bind one of these NRF24L01 with an RC Remote control (also 2.4 GH) I have from a broken Quad Copter? How?
+Kevin Darrah You look like Matt Damon jeje. Very good video thanks!
Hey Kevin, I am currently planning a project where I control a Quadcopter using a Joystick connected to a PC and have one of these Nrf's send the controls to the Quad. Is is possible to do such a thing? I understand it will be a hard task but I am really determined to do it. If yes, can it be done with Java? as it is my most fluent computer language
nice video. is it possible to add temp probe to one NRF module and turn on/off a relay on another NRF for a set temp.?
thanks .
Excellent.
Is this based on line of sight communication or is it able to transmit data from one room to another or are there problems due to concrete wall shielding?
Can this be used in a quadrotor ?
hi, the video is awesome. i learned a lot but when i use the code with my arduinos in the serial monitor of the transmitter it is printed "PING FAIL" in all the pings and just 1 "PING SUCCESSFUL", i don't know what to do, if you can help would be awesome,
thanks btw
Ok. How many module can I use ?. it interference with other module ?. I am asking for example I am using arduino uno as primary and then AT tiny as secondary. If I am connecting HC05 bluetooth with uno. then these nrf24l01 is connected many with this uno. then receiver side each AT tiny connected with nrf module.
Can I use this on 3 Arduino Mega 2560's ? I want one as the main and the other two as Exstein's?
This blow my mind!
could these modules be used for video streaming with a webcam?
Hey Kevin....
Awesome Vids.....
I need a wireless Cam that can be connected to a PC for a Project.
the basic Layout is simple.... Cam to Ardunio,ardunio to Xbee(any transmitting Sys).. and from there to PC....
Can u share your thoughts on how to Achieve it
Thanks in advance
Nanda, AFAIK, you cannot use Arduino to stream live feed from a camera to PC over Xbee or anything.
Great stuff, but will allow me to slice bread?
what happen with this guy? are u out of your freaking mind?... this is video is just amazing! im starting a new project and i just saw what i have been needing!
I tried the code with the ping function and only got a successful ping once over 20 or 30 packets maybe while moving the RF modules around. Not really sure where to go from there. Hopefully I'll get this code working, looks like a cool project.
Well apparently I was wrong. I only get a successful ping when 0 is the value transmitted. That means no data is getting through. I sure hope its me and not the cheap ebay tranceivers I bought.
Hi kevin, im a huge fan of you, I believe ur a genius by getting this which I consider very hard projects to the reality and explain them so well. Thanks a lot in advance!! =D
Im up to the task to test ur code and Im first understanding every part of it, and I happen to have a doubt:
On NRF_ClearInterrupts() function u read bits 4,5 & 6 and if is a 1, then you write a 1 to clear them? And in 14:35 serial monitor says that when they are turned off, they have a 0.... Maybe its me that doesn't understand this quite well, thanks a lot if you solve me this
Again awesome work ur doing with your videos!
Cheers from mexico!
hi kevin,
how do you connect the button and the led ? i need the pin what you use ?
Guy.
You said the transciever only runs on 3.3V, and you need a separate regulator to power it if you run it with arduino.
But you don't use any regulators in your video, it's just the Arduino @5V, and the radio with cables soldered to it.
Could you (or anyone) please clarify this to me?
+Some Guy I don't program Arduinos but you could supply it with 3.3v through a voltage divider. You should be able to use the same power source. (I program Parallax Propellers which is a 3.3v micro.)
Be aware that if you use a common power supply 'and' a common ground you may have to filter out electrical noise.
+Some Guy Arduino boards have on-board 3.3V regulators. There is a 3.3V power output pin from that regulator that you can use, as he did here.
The template example works excellent, but I would like to try changing the RF channel during the main loop depending a value that is received via the serial port. Is there an easy way to set the register from an int instead of bit-by-bit using e.g. NRFwrite_bit_write(5,x,1);
I was thinking of something like the code below, but I am not finding a working solution. The serial print of NRF_get_address(5, 1); tells me I am setting the channel correctly, but the ping returns as failed. Any ideas why?
//add to definitions
char mydata[20];
int cc=0;
int dd=0;
int ddbinary[7];
void loop(){// loop start loop start loop start loop start loop start
while (Serial.available() == 0);
mydata[cc] = Serial.read();
cc++;
if(cc==11)
{
while (Serial.available() > 0)
{
Serial.read();
}
Serial.println(mydata); //Optional. Use for debug.
cc=0;
if(mydata[0]=='A' && mydata[3]==':' && mydata[6]==':' && mydata[9]=='T' && mydata[10]=='X')
{//Data parsed to rule Ann:nn:nnTX where n is any integer, e.g. A55:12:87TX
dd = 10*(mydata[1] - '0') + (mydata[2]-'0');
if(dd
hey Kevin I have these modules but I can't get them to communicate. I've only used an example code and schematic to reference and I am doing everything correctly, and they still won't work. any suggestions???
hmm, not sure? got a scope? might want to look at each of the signals and make sure they're behaving correctly
i might be late with this question but can you use this to sent a signal from a potentiometer to the other arduino to turn a servo??
Good video! :) thanks!
do you have a transmitter and a receiver? where are the codes for BOTH??
thanks!
marC:)
Its a transceiver so both ends contain a transmitter and receiver so they are driven the same way. If you mean the code for the base station and node though, idk about that
very nice! thank you.
The frequency of nRF module is 2.4Ghz right? so will it cause any interference with Wifi nearby?
+Mrunal Ahirrao Yes, but the interference is not worse than the interference another Wifi would cause. At least for the cheap, low-power version in the video :)
lg, couka
thanks so much really got this easily :)
i have a arduino pro micro, which doesn't have pins 11-13. although i have changed the pins to the ones available it is not working.
do you know whether something is different with the pro micro?
p.s the other board im using is arduino mega 2560
Great Thing to learn
I have been trying to get the example code you showed from arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo to work, but the receiver is only receiving "-1". Any idea what I am doing wrong?
Thank you for your help.
just realized I posted this on the wrong video.
Still any help you can offer will be appreciated.
Hi Kevin,
Thanks for your work and your code. I'm messing with this right now and I'm having some problems. It's OK, I'm working on it. But I got a problem in your code.
The NRF_ping uses random(256) which means any number between 0 and 255. When it's zero, it returns successful, even if it had failed.
To avoid this (not so big) problem, change random(256) to:
random(1,256)
Or
random(255) + 1
I personally prefer the second one. =)
Regards,
Leonardo
Does the nRF24L01+ work both as receiver and transmitter?
yes, the NRF24L01+ is a tranceiver (able to transmit and receive)
Can I send the voice signal using ESP8266 wifi module
I have got 20 various boards with NRF24L01+. Mainly 2 types one with LNA one without. I also built breadboard adapters with proper decoupled voltage regs and did a looooooot of testing. The quality varies massively. Throuput varies alot from board to board some are not functioning. Some needed reflowing and work better now. The LNA types are not really x compatible. They dont work together with the ones without LNA.