The nRF24L01+ Assembly Library and Range Test

For all those interested I completed my testing and coding over the weekend with the nRF24L01+ modules and must say they are very impressive. I even accidentally sent 13V down the IRQ pin about 50 times (was programming the PIC with the modules IRQ connected to MCLR) and still had no effect.

The range test was done using the Nordic Keyfob from here, and the receiver was tested with the chip antenna and the duck antenna modules indoors and outdoors.

The results of the chip antenna:

  • Indoors (open air) 7 meters as far as could test due to size of house.

  • Indoor (through wall) 3 meters through 1 brick wall.

  • Outdoor not tested yet, will update

The results of the duck antenna:

  • Indoors (open air) 7 meters as far as could test due to size of house.

  • Indoor (through wall) 7 meters through 4 brick walls! As far as could test.

  • Outdoor got 15 meters then started looking a bit strange walking backwards in the field pressing a keyfob over and over. Will try to get the limit later in the week but have yet to get out of range in any situation with this version.

As for the assembly library - I have coded it all and tested it quite well, and am just creating some nice example asm files before I release it. At present there is a module for testing the keyfob over USART and using LEDs, and I plan to create a few more in the week then I will release it for all those interested.

Hey!!

I have nRF24L01+Module with Chip Antenna (http://www.sparkfun.com/commerce/produc … cts_id=691)… I am interfacing it with Philips P89V51RD2! With the help of Great Tutorial by Brennen Ball, I have modified the code for my microcontroller… Today I burned the code, Made the connections and Nothing Happened!!

How should I check whether the chip is actually transmitting the data or not…Then On Rx side, I have copied the received data on one port…It shows nothing!!

Here are my connection details:-

Vcc: 3.3V

89V51RD2 nRF24L01+

P1.0 IRQ (I am Poling for the interrupt!)

P1.2 (Input) CE

P1.4 (Output ) CSN

P1.5 ( MOSI) MOSI

P1.6 (MISO) MISO

P1.7 (SCK) SCK

What should I do???

If you could post the code it would help to make sure you code is correct. Other than that try putting your scope on the pins to see what is happening. During startup you should see traffic on the MISO and MOSI pins, as well as the CE and CSN at a slower rate.

To test the general connections setup the code on both to sit there and poll the TXADDR register (as this will have some 0s and 1s as default) and read it every 50mS or something and then stick your probes over MISO and MOSI, and you should see 0s and 1s coming from both pins. If you are getting data going into MOSI but nothing coming out of MISO then the nordic is not responding.

If you do get activity on both your connections are correct and it is likely down to software. In which case double check that you are setting up the TX and RX addresses to match, as well as the payload width and air rate, and CRC as well as Auto acknowledgement. If only one of those is out it will not work.