Where to buy a NRF24L01

I've been searching on amazon, SparkFun, ebay... But I couldn't find any.
Maybe it's because of my region.
Can you link me one?

Or maybe it would be better to use a xbee module? (I'm building a rc car)

From ebay stores ----- they can certainly be purchased. Relatively cheaply. Pretty sure that most people get it from ebay stores.

I received 2259 results when I went to ebay.com
Here is one:

I think that I wrote it wrong when I searched....

Is this chip good for an rc car?

It depends.

You have not explained whether you want to use this at the remote control end, the RC car end, or both. Also, you have not described the RF environment.

Wherever you use it, it will need a microprocessor (Arduino or other). If you just use it at one end, you will have to know about the protocol used by the other end. If you are going to use it at both ends, then you can make up your own protocol, but be aware that some of the protocols that already exist handle certain kinds of situations. Your own protocol may not handle these situations, but may or may not have to.

I am trying to use an nRF24L01+ (basically an nRF24L01 with an amplifier) and an Arduino Uno to control a drone. This requires sending Throttle, Yaw, Pitch, Roll, Yaw Trim, Pitch Trim, Roll Trim, and Flags (e.g. lights on/off), but an RC car is much simpler because it only needs Throttle, Steering, perhaps Steering Trim, and perhaps Flags.

Don't forget that a power supply and an antenna may be needed as well.

Good Luck!

I will use it for going right and left, speed and on/off. Is it going to support that? For like 15 meters of distance.

Just want to know: how do I use them? Do you have a tutorial/documentation? Thanks

Think of a pair of nRF24L01 as a way of communicating almost serially but without the wires. You can send right/left and speed. On/off is usually handled by a switch, but I suppose that this could be sent as well.

What is your experience? Are you really ready for this?

You could have easily found examples using Google. I did. I would start with these:

Robin's nRF24L01 Tutorial in the Arduino Forum

Nrf24L01-2.4GHz-HowTo

I have experience in Arduino and electronics but not in serial transmission and radio

A pair of nRF24L01' s is inexpensive. A pair of Arduino's, not so much.

I suggest that you learn to communicate between Arduinos using nRF24L01s before you try to control an RC car. The tutorials explain what libraries to use to simplify your efforts. Serial is not hard, but nRF24L01 libraries tend to deliver ALL data all at once, so in this respect the nRF24L01 is actually a little bit easier to use than serial.

Thank you!

I suggest reading over the serial communication threads posted by Robin2.

They go over some basic and key fundamentals on how to properly send/receive/parse serial data…

Tip:

Code your serial data so that is STARTS with a specific character (SOP = start of packet character),… and ENDS with a specific character (EOP = end of packet character)

example:
<a:100,s:90>

a = acceleration
s = steering/position * I doubt you’d have to send by one steering position value… just one servo… no?

the key part being the < and > characters… that let the Arduino know

  • when to start collecting this incoming serial data
  • when to stop collecting this incoming data

Once the EOP character has been received… you know you can then parse the data packet… and see what commands/values have been sent…

Thank you for your suggestions! I will let you know

xl97 described a great idea but the nRF24L01 libraries that I have used don't work quite that way. Of course, if you find a library that works in that fashion, use it and use what xl97 described. However, it might be best to read over the tutorials that were suggested and follow them.

Thanks for all the suggestions about the code, but.. how do I connect the serial pins?
For example: to try this I will be using an Arduino UNO and an Arduino Esplora, and I will follow this thread instructions: http://forum.arduino.cc/index.php?topic=396450
Can anybody send a pic or a short explanation of the connections? Thanks!

vaj4088:
xl97 described a great idea but the nRF24L01 libraries that I have used don't work quite that way. Of course, if you find a library that works in that fashion, use it and use what xl97 described. However, it might be best to read over the tutorials that were suggested and follow them.

My understanding is this is just serial data being sent back and forth... no?
ie: (send)

void loop() {
    const char text[] = "Hello World";
    radio.write(&text, sizeof(text));
    delay(1000);
}

on the receiving end... you would still need to create a character array to hold the incoming data..

but when do you STOP collecting? When do you know you have a complete packet? (so you know to start parsing the incoming data?)

xl97:
My understanding is this is just serial data being sent back and forth... no?
ie: (send)

void loop() {

const char text = "Hello World";
    radio.write(&text, sizeof(text));
    delay(1000);
}




on the receiving end... you would still need to create a character array to hold the incoming data....no?

but when do you STOP collecting? When do you know you have a complete packet? (so you know to start parsing the incoming data?) (what is your data string/packet is longer than can be sent? or how do you verify packet integrity? as in its complete/fully there)

Does it not coming over character by character? (I know have some of these laying around.. I'll work up a quick example to see I guess) :)

No. Oh, I suppose that you could do something similar to this by sending a single byte at a time, but the nRF24L01 libraries that I am familiar with send 1 to 64 (32?) bytes at a time from an array. Notification takes place when the entire array has arrived. I cannot remember if the length is available.

I was trying to give a "beginner" a flavor of how the nRF24L01 works, but it is not really the same as serial. Sorry if I misled you.

if you can send 64 bytes/characters as a time, thats nice/long!..

(thank you for explaining)

I need to find mine and play with them now! lol