I am trying to get a WiFi signal from one Arduino Nano to another. I just need to know when a switch is tripped. 1 bit.
I grabbed the RF24 Libs off of the gitHub repo, installed then, wired it up, double checked the wires well over 10 times, and still get nothing but 4294967295 in response.
I have tried this with a Nano, a Uno and a Leo. I still get the same thing. I have tried the "getting started" and "PingPair". I have tried the LED remote but that of course didn't work either. Is there some edit that needs to be done to code to make it work? All the copyrights are 2011, so I am guessing the library is fairly old. Below is the output of the serial console, I have removed return carriages and some a few lines for space.
Has anyone gotten this to work?
RF24/examples/GettingStarted
ROLE: Pong back
*** PRESS 'T' to begin transmitting to the other node
STATUS = 0xff RX_DR=1 TX_DS=1 MAX_RT=1 RX_P_NO=7 TX_FULL=1
RX_ADDR_P0-1 = 0xffffffffff 0xffffffffff
RX_ADDR_P2-5 = 0xff 0xff 0xff 0xff
TX_ADDR = 0xffffffffff
RX_PW_P0-6 = 0xff 0xff 0xff 0xff 0xff 0xff
EN_AA = 0xff
EN_RXADDR = 0xff
RF_CH = 0xff
RF_SETUP = 0xff
CONFIG = 0xff
DYNPD/FEATURE = 0xff 0xff
Data Rate = 1MBPS
Model = nRF24L01
CRC Length = 16 bits
PA Power = PA_HIGH
Got payload 4294967295...Sent response.
Got payload 4294967295...Sent response.
//...................This goes on
*** CHANGING TO TRANSMIT ROLE -- PRESS 'R' TO SWITCH BACK
Now sending 2360...ok...Got response 4294967295, round-trip delay: 2362
Now sending 3362...ok...Got response 4294967295, round-trip delay: 3364
//...................and then this goes on.
Unless the wiring guide there is misinformation all the wires are correct. When I say that I have rechecked the wires more than ten time I am being honest. Is there an alternative wiring guide? That's the only site I could find that actually tells you how to wire it up.
I agree with you that all the connections look fine. Have you connected an electrolytic capacitor across the VCC and GND connections of the nRF24l01? If not this could be the reason for the wrong responses.
I can't seen to find the value of the capacitor i would need for this. What would you suggest? Also just make sure I am clear about what you are asking, if this what you mean? (Please excuse the epic MSPAINT work)
I have soldered 1uF capacitors across the VCC/GND pins on all my nRF24l01 modules but others have reported using values up to 100uF. The smoothing of the 3.3v supply from the arduino is very poor and the module seems very susceptible. Also, if you continue to have problems, I would suggest trying direct connections without the breadboard as I have found some breadboard connections can have high/variable resistance.
That wiring diagram suggests you have vcc and gnd reversed. That is, compared to all the nrf24's I have ever used, anyway. They all have gnd in the corner position (and usually with a white square drawn around it)
Good news / bad news. I put the 1uF cap in and it is at least not lying anymore. ITs saying that there is a failure that the response timed out.
Instead of it being all F's now its all 0's. "0x00 RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=0 TX_FULL=0" and everything is 0x00 down the line. That is until "Now sending 6895...failed. /n Failed, response timed out. /n Now sending 8596...failed...."
I tried a 22uF cap too, no change. I also tried both the pringPair and Getting started. Both were able to change roles, but not connect. At least its not telling me its connecting fine when it's not.
@ JohnHoward - About the MSPaint thing, it was done from memory. Pin0 is Ground.
Edit: I tried the 22uF and the 100uF and they both pull the voltage waaay down, like 1.3v over the 22uF cap. and .5v over the 100uF cap. I am new to the whole electrical thing, I am a programmer, but I thought caps were just supposed to level out voltages not decrease them. Im guessing everything is 0 because the unit is not powered on...
Did you mean to run the caps over the 5v instead of the 3.3 or did you mean like solder the cap on the pins behind the face so they are one side of the pins, and the wires to the arduino go to the other?
In the last diagram you have the capacitor in series with the supply which is wrong. It must be in parallel. I solder mine across the VCC/GND pins on the module.
Connect VCC of the module to 3.3V of the arduino
Connect GND of the module to GND of the arduino
Connect the +ve side of the capacitor to the 3.3V/VCC connection
Connect the -ve side of trhe capacitor to the GND connection
The capacitor is connect across the 3.3v supply to smooth the voltage. If the measured voltage changes significantly with the size of the capacitor connected you have a problem either with the capacitor or the arduino. Voltage meters will average the voltage they are measuring so you won't see an ripple on the supply. The addition of a capacitor may slightly increase the measured voltage as it charges to the peak of any AC ripple.
So this is the setup I have after going out and grabbing some 1uF caps. (All I had was 22uF and 100uF)
I am still getting all F's and the payload size of 4294967295 - At this point I am about to just say they dont work, because its been almost a week of fiddling. Maybe I hooked something up wrong with the cap? Thought I would leave a message and see before throwing in the cap and spending 100 bucks on the xBee transmitters.
OmegaNine:
Thought I would leave a message and see before throwing in the cap and spending 100 bucks on the xBee transmitters.
Don't give up yet .. I'm sure you can get it sorted.
I may be wrong from looking at the picture but I see a couple of things to check
The electrolytic capacitor has a black line on it that indicates the -ve side. I would have expected to see that in the picture as the top pin is GND. Check that you have the cap connected the correct way around. Also I have always found it easier to solder it on the other side of the board to the pins then it doesn't get in the way of the connections.
When you connect the capacitor does the voltage change? You should have been able to use the 22uF or the 100uF and seen little on no voltage change. Could they have been connected the wrong way around?
It could be the perspective of the photograph but it looks like the top row of pins are connected on pins 3,5 and 7 rather than 1,3,5 .. probably just the picture
crofter:
The electrolytic capacitor has a black line on it that indicates the -ve side. I would have expected to see that in the picture as the top pin is GND. Check that you have the cap connected the correct way around. Also I have always found it easier to solder it on the other side of the board to the pins then it doesn't get in the way of the connections.
The 1uF caps I got were labeled weird, they showed the + side not the -. But i just soldered on some 10uF caps they way you did, still getting all F's and connection established...Even when the other unit is off...
crofter:
When you connect the capacitor does the voltage change? You should have been able to use the 22uF or the 100uF and seen little on no voltage change. Could they have been connected the wrong way around?
There is almost no drop, 3.27v over the pins. Looks like its fully powered up.
crofter:
It could be the perspective of the photograph but it looks like the top row of pins are connected on pins 3,5 and 7 rather than 1,3,5 .. probably just the picture
The pins that are connected are at D12-D9 and D13.
I see that there is another library out there, mif, I think I am going to give that a try. If it doesn't power right up and work with Mif, I will do my best to go through the libraries line by line. I don't know that much C, I write Java and C#, but I might be able to piece together what's going wrong if its code.
I think I may have figured this out. I have an Arduino UNO and an Arduino Mega 2560. The Mega is the sender and the UNO is the receiver using "pingpair" on both from the RF24 Library. I have grounded pin 7 of the RF24 attached to the UNO to make it the receiver. I tied pin 12 (MISO), now left empty when I tied pin 7 of the RF24 to ground, to +5V with a 470k ohm resistor to pull it up. It now receives. I am using an LM2596 for 3.3VDC to each RF24 (3.3 power with sufficient current delivery is essential). The 50mA 3.3VDC supply on the UNO is not enough.
I'm having as you describe, still figuring out what it could be.
I noticed one thing that seems wrong in your last post; you mention you put pin 7 of the RF24 to ground to make it a receiver. To my understanding you should put pin 7 of the Arduino to ground.
Have you managed to solve the problem by the way?
In my case I still suspect wiring, though I have checked it more than a dozen times...