Electronics > RF, Microwave, Ham Radio

Using spectrum analyzer to debug NRF24 module

(1/2) > >>

Let me explain a bit back ground, long ago I used LEDs and Serial port to debug SPI, I2C communication which was quite hard. Then I came to know about Logic Analyzer, oh god it made my life so easy.

A few months back I started working on NRF24L01 modules to communicate between two uC, I gave myself a challenge to build it by getting help only from its datasheet. After setting up RX, TX nodes I had no idea if TX really transmitted anything?? this bring me to search for Spectrum Analyzer so that I know if my modules are really working.

So I started searching around for reasonable Spectrum Analyzer after reading/exploring a lot of options, I bought two devices. HackRF One and Signal Hound SA44B. Now when I transmit I do not see any signal on any of these device, that made me think may be I do not know how to use it in this scenario.

While working with logic analyzer we have trigger to make it ready to listen/log data, my question is how can I snif tranmitted packets to analyze if everything is correct? please help me what terms are used for it, what kind of procedures used so that I can further learn it. One thing I found tricky that Spectrum analyzer (at least my devices) can't continiously minitor the signal, alway there is a small gap in between a sweep how do I overcome this, because I do not have trigger like a logic analyzer to ensure SA is looking for packet right after it transmitted.

You either use a realtime spectrum analyser or you reduce the frequency range to a few MHz.

Also, you want to switch on MAX hold, so that the pulses keep visible after they are long gone.

If you just want to see if there is a signal, without wanting to actually measure it, use the HackRF with the spectrum analyse software. This is realtime if you keep the span under 10MHz.


Try to look at WLAN Signals, to get a feel for it.

But if your signal is like ms or us, you might not catch it in a regular sweep.

I suggest you to find a quiet place in terms of RF radiation at the beginning.

You may prepare a test firmware on your MCU to continuously send packets with some delay and by incrementing the frequency between each packets. Return to the first frequency after the last one. Then run the spectrum analyzer and set the measurement frequency band. After waiting a few seconds or minutes you can observe expected signals. After that turn off the MCU, save the signal and run the spectrum analyzer with the same range but on a different colored channel. This will be the base signal. After waiting a few seconds or minutes save this signal as well. Then subtract these two signals to see the nrf24 transmission.

You may find easier to observe if you increment the frequency after sending the same frequency multiple times instead of one. That is another method.

Have you seen this thread?

Show us your hardware and how the nRF24L01 is connected.

Are you using the nRF24L01 or the nRF24L01+

I've found that a bulk capacitor of 1uF near the nRF24L01+ is necessary.

Also, checkout the nRF24 library for Arduino.
Even if you're not using an Arduino, the code is the same.
Forget about hardware debugging.  It's not going to help.

Thaks, that post looks very interesting.  Let me work on it and I'll get back.


[0] Message Index

[#] Next page

There was an error while thanking
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod