2
\$\begingroup\$

I got a simple RF24Audio walkie talkie example working. I'm using the sketch file provided by the RF24Audio getting started example:

https://github.com/nRF24/RF24Audio/blob/master/examples/GettingStarted/GettingStarted.ino

Although my receiver can produce an intelligible audio transmission, it does have a very loud and distracting buzz sound in the background (edit: the sound is a 1.5kHz buzz). Here's a short video clip so you can hear what it sounds like:

https://www.youtube.com/watch?v=8oKtmhoIhSw

I tried replacing the computer speakers with other computer speakers, with ear phones, and with an 8 ohm speaker. They all have this background buzz.

This is what my set up looks like:

enter image description here Link to Circuit

I do not hear this buzz when I hook up speakers and ear phones to the A0 of the transmitter. A human voice sounds pretty good at A0. Hence, I suspect this buzz is coming from the Arduino, the nrf24l01 modules, atmosphere interference, or something else.

Can anyone suggest what it might be and what I should consider to reduce or eliminate this noise?

EDIT

When I put the speakers next to several musical instrument tuners, the musical instrument tuners report the buzz I'm hearing is 1.5khz, which is between F#6 and Gb6.

\$\endgroup\$

closed as too broad by Chris Stratton, Edgar Brown, Sparky256, Finbarr, laptop2d Mar 7 at 2:44

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • \$\begingroup\$ that sounds like data being fed into the audio stream ...... try this sketch instead ..... github.com/nRF24/RF24Audio/blob/master/examples/Minimal/… \$\endgroup\$ – jsotola Feb 23 at 2:36
  • 1
    \$\begingroup\$ could be the power-supply for the arduino. try battery power. \$\endgroup\$ – Jasen Feb 23 at 6:25
  • \$\begingroup\$ This is not a project that can be made to work well for many reasons. Even if you had a good ADC and DAC, your radio has a limited bandwidth and discontinuous transmission which you will need to buffer across. Then you face the problem that the receiver sample rate will never match the transmitter one, so you probably must confine yourself to short messages beginning with a buffer delay, and hope the clocks don't drift so much as to mis-synchronize them. Doing digital audio over radio with the right parts is hard enough, don't make it even harder by using the wrong ones. \$\endgroup\$ – Chris Stratton Feb 25 at 20:28
2
\$\begingroup\$

I have not checked the RF24Audio library but, to the best of my knowledge, basic Arduino boards have no digital-to-analog converter.

The digital-to-analog conversion is probably performed by using a PWM output. Isn’t that background buzz you are hearing the frequency of the PWM output?

EDIT: if my guess above is correct, you may reduce the background buzz with a low-pass filter at the output of the receiver arduino.

\$\endgroup\$
  • \$\begingroup\$ When I put the speakers next to several musical instrument tuners, the musical instrument tuners report the buzz I'm hearing is 1.5khz, which is between F#6 and Gb6. I don' \$\endgroup\$ – John Feb 25 at 20:23
  • \$\begingroup\$ according to the datasheet, the PWM frequency is 490Hz most pins, and 980Hz on Pin5 and Pin6. I'm using Pin 9 and 10, which isn't expected to operate at 1.5kHz. \$\endgroup\$ – John Feb 25 at 20:59
  • \$\begingroup\$ After a quick glance at the source code of the RF24Audio library, it changes the frequency of the PWM, but to a frequency of 24kHz: github.com/nRF24/RF24Audio/blob/master/userConfig.h#L10 \$\endgroup\$ – user2233709 Feb 25 at 21:15
0
\$\begingroup\$

Jan?

issues:

  • Electric Mic uses open drain with 10K pull-up which then becomes the source impedance.
  • so the Feedback of 1M to Q1 reduces the gain to 1M/10k =100 Perhaps it should be 100k like the Youtube demo
  • 2nd stage gain may be unnecessary =10 and causing saturation, thus square waves.
  • you have no Nyquist LPF so your ADC sampling rate takes the square wave harmonics and results in aliasing or heterodyne distortion with +/- frequencies below sampling rate.

This results is high distortion.

So a LPF is essential at about 1/3 your sampling rate. Make it a Nyquist filter. Look that up.

Listen to aliasing noise and learn.

https://dspillustrations.com/pages/posts/misc/aliasing-and-anti-aliasing-filter.html

Suggestion bypass Op Amp and ensure sampling rate is at least 3x your LPF

\$\endgroup\$
  • \$\begingroup\$ based on the first half of your statement, are you expecting terminal A0 to show a square wave? Because when I hook up my speakers to terminal A0, it sounds "perfect". And the oscilloscope does not show any wave form clipping at A0. Is it correct to say there is no saturation on 2nd stage gain and there are no square waves? \$\endgroup\$ – John Feb 25 at 17:06

Not the answer you're looking for? Browse other questions tagged or ask your own question.