13000Views24Replies

Author Options:

Help starting out with nrf24L01+ transceiver and arduino Answered

Recently I bought 6 nrf24L01+ boards like this with the intention of experimenting with them to potentially be embedded in some projects as a low cost solution to wireless communication. so far I've had some luck but nothing consistent. the test set up right now is an arduino uno and a arduino on a bread board. most of the information I used is from here. so far I get mostly failed communication and timeouts pretty much the same as what is listed here. I feel like this is a one sided issue where one arduino will send out information but it won't read it back in even if something is sent back.

hopefully someone can help shed some light on this dilemma because it seems like a reacquiring problem with no solution.

Thanks for any help in advance.

Discussions

0
None
vitormhenrique

5 years ago

Hey, could you get it working? i'm reaving the a similar problem.

0
None
Nman120vitormhenrique

Answer 5 years ago

yes I did it was actually my power supply not giving good enough 3.3v which could case wonky operation or lack there of also there isn't any way to debug on the transmitter side so check wiring and use simple example codes

0
None
TerryKingNman120

Answer 4 years ago

Hi, Yes the radios often draw more 3.3V current than the simple 3.3V supply on a regular Arduino can supply. This is particularly true if you use one of the higher-power modules.
The YourDuino.com "Robo1" is a Arduino derivative that has an added 3.3V regulator that is good for these modules. See it Here:
http://yourduino.com/sunshop2/index.php?l=product_detail&p=225

DISCLAIMER: Mentioned stuff from my own shop... which is what I know the most about :-)

Also see:
http://yourduino.com/sunshop2/index.php?l=product_list&c=12

Regards, Terry King
...In The Woods in Vermont, USA
terry@yourduino.com

0
None
TerryKingTerryKing

Answer 4 years ago

Also see this example which sends Joystick position from one nRF24L01 to another:
http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo#ex1
Regards, Terry King
...In The Woods in Vermont, USA
terry@yourduino.com

0
None
vitormhenriqueTerryKing

Answer 4 years ago

Thanks Terry, your board sounds very good, I'll plan to add on my arduino list on a near future, i ended up developing my own board, i'm working in a home automation project using raspberry pi as server and some arduinos as nodes that receive commands via nrf24L01, to make my life easier i developed a "shield board" using one arduino pro mini, place for nrf24l01 some io's with a nice plug's with one voltage regulator and power supply, now it works like a charm... It is not perfect yet, but it is the first time that i use eagle and do something like that... so it is pretty good for the first interaction (on my opinion) i'm a chemical engineer with limit knowledge on this stuff....

https://www.instructables.com/files/deriv/FDG/MUWD/HOG8VFW2/FDGMUWDHOG8VFW2.SQUARE.jpg

https://www.instructables.com/files/deriv/F5D/FZH4/HOG8VFW0/F5DFZH4HOG8VFW0.SQUARE.jpg

photo 2.JPGphoto 1.JPG
0
None
Mickeyvvitormhenrique

Answer 4 years ago

Hi
can you post schematic for the 2 pictures above?

0
None
vitormhenriqueMickeyv

Answer 4 years ago

Sure you can,

I'm at work now and I only have it at home, i'll send you as soon as I get there....

This was my very first board design, so it is not perfect, I only exposed 6 ios, and the board is compatible with two types of nrf24L01.
The most common one that is sold everywhere and it is on picture one. and the one that is sold on sparkfun
https://www.sparkfun.com/products/691

The second have a voltage regulator on board, so you don't need to put the capacitors and the 3.3 voltage regulator (i used this one https://www.sparkfun.com/products/526 and it will not work with different ones that may have different pin out layout)

The exposed IO's also have a ground and a +5v pin (one of the six have 3.3V instead) this was very particular for my needs, i can change it if you want....

I'm planing to make a change on this first board and have some boards manufactured for me, he can split the cost if you want.

The last time I paid 20 dollars on 3 boards.

If you are interested, please send me an e-mail (vitormhenrique @gmail.com)

0
None
steveastrouk

Answer 5 years ago

The receiver part contains amplifiers.

0
None
Nman120steveastrouk

Answer 5 years ago

looks like it might be the power supply. maybe it puts too much noise into the 3.3v rail. I've gotten it to work a lot more consistently

0
None
steveastroukNman120

Answer 5 years ago

try some nice fat caps at the modules, with 100nF ceramivs in parallel

0
None
Nman120steveastrouk

Answer 5 years ago

I've continued working with no different results. I've actually bought a pro-mini and soldered the connections but the same one way communication is happening. the only things I didn't change was the power supply and the ftdi connector so I'll investigate to narrow down the culprit.

0
None
steveastrouk

5 years ago

I think we need to see your hardware configuration too.

0
None
Nman120steveastrouk

Answer 5 years ago

well images of my wireing probably won't tell much but I wired everything based on the information here:
http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo

0
None
Nman120steveastrouk

Answer 5 years ago

you can view the example codes here:
http://arduino-info.wikispaces.com/nRF24L01-RF24-Examples

I've been using these so far without modifications.
also I did some trouble shooting and changed breadboards checking wires, pin outs and connections again along the way with no change in outcomes at all.

0
None
steveastroukNman120

Answer 5 years ago

You need an oscilloscope. Take a look at the PINS on the transceivers to see what they are seeing.

One other possible trick, try turning the transmit power down - you might be swamping the receiver amps

0
None
Nman120steveastrouk

Answer 5 years ago

I don't have an oscilloscope so I'll look into turning the power down. Although unless your talking inside the chip there aren't any amps that I know of except for the long range versions.

0
None
steveastrouk

5 years ago

I'm not familiar with these modules. Where did you work out the device config commands from ?

0
None
steveastrouk

5 years ago

Post some code. Its probably a timing issue.

Personally, I don't trust breadboards. That could be your problem right out of the gate.

0
None
Nman120steveastrouk

Answer 5 years ago

thank you, reoccurring is what it should be, late nights are murder on correct english

0
None
Nman120steveastrouk

Answer 5 years ago

I added side-by-side serial port outputs of the example codes I used from the RF24 library com3 is the uno and com4 is the bread-duino all on 57600 baud

The first one is the getting started example showing what happened when the individual transmitter is activated with the com port.(note that you can't view the receiver due to that when you change com ports the program restarts the arduinos)

The next two are using the ping-pair example which allows you to ground a pin to set weather it's transmuting or replying which also allows you to see the outputs of both ends. the funny thing is when the bread-duino on com4 is transmitting the uno sends back a response but the bread-duino doesn't register it. conversly when the uno transmits the bread-duino detects nothing so the uno has no chance of a response.

0
None
steveastrouk

5 years ago

Do you mean "reaquiring" or "reoccuring"