Test function of NRF24L01

I have a Teensy with a NRF24L01 soldered on it, but I’m not sure if it’s working, and I have only one Teensy (or Arduino-like board) and only one NRF24L01… Is there any way I can test that it works? (like checking if it’s at least powered on, etc…)?

I tried:

#include <SPI.h>

#include <nRF24L01.h>
#include <RF24.h>
 
void setup()
{
  Serial.begin(9600);
  delay(1000);
  Serial.println("Nrf24L01 Receiver Starting");

  SPI.setSCK(14);
  SPI.begin(); 

  RF24 radio(17,18);
  radio.begin();
}


void loop() {
  // put your main code here, to run repeatedly:

}

but it just outputs “Nrf24L01 Receiver Starting”, should the “radio.begin()” or the “RF24 radio(17,18)” print something on serial monitor as well? (By the way: Pin 17 and 18 are the pins, I soldered CE and CSN to)…

I think the concept of "working" is meaningless unless you have a pair of nRF24s

...R

You could use the function radio.printDetails();to see wether you can talk to the chip via SPI.

A single NFR24L01 can be used to scan channels,
and there is one application that interfaces to MicroSoft keyboards.

@Robin2: Goal is to use the NRF24L01 to communicate with a pointer, as replacement for the original receiver

@Whandall: There's one problem with that function: The library I use is the modified Version of the "normal" RF24 Library, and that function is uncommented in that version, as I also tried the "GettingStarted"-example of the library, and it threw an error.

Whandall:
A single NFR24L01 can be used to scan channels,
and there is one application that interfaces to MicroSoft keyboards.

That suggests to me there is more than one wireless device - unless the objective is just to prove that there are no others within range :slight_smile:

@nameless_, I suggest you use TMRh20’s version of the library

Also, I would like to prove I could get comms to work with two devices under my control before starting experiments communicating with devices that I can’t control

…R

The NRF24L01 can see which channels are used by the omnipresent WiFi,
probably Bluetooth too, but I did not try that yet.

@Robin2: I know that this is propably the better way, but then I'd need another arduino... could you tell me which one is able to work with the nrf24l01 and is the cheapest? Maybe (if I can't find another solution) this is at least the way to test the functionality...

@Whandall: So you mean I could figure out which channel is used by the pointer? How?

I already pointed to the blog, where the NRF24L01 is used to hack into Microsoft keyboards,
maybe you could try a similiar technique, or at least get some hints.

There is another application that might help you, an interface to WireShark.

I'll have a look at it, thanks... I also already found something called Keysweeper (Samy Kamkar - KeySweeper) and tried to figure something out there...

I think the Keesweeper is the application of the first link.

It's at least nearly the same technique behind it but from different people.

nameless__:
could you tell me which one is able to work with the nrf24l01 and is the cheapest?

As far as I know any Arduino will work with an nRF24. It just needs to be able to communicate with SPI. You can use a bare Atmega 328 on a breadboard. This is one I made earlier - not even a breadboard in sight :slight_smile:
2016 01 02_DSCF3956_640x480.JPG

I have learned a lot of stuff from @Whandall. My own general experience tells me that it when I don’t know how to do something it is best to approach it step by step in the simplest possible way. I suspect the things that are simple for @Whandall would not be so simple for me.

…R

People even attached the NRF24L01 to an ATiny85.

1 Like