SDR with arduino

Hi all,

Is it possible to do a software defined radio using Arduino Uno board.

This is a random idea I got.

Please tell me your suggestions and comments.

I don't know enough about SDR to say it's impossible but I don't think the ATmega has the A/D bandwidth or signal processing capability suitable for an SDR.

johnwasser,

Thank you.I also dont know much about SDR.I hope I can learn more about it.

Hi Myfaithnka,

I'm also interested in building a SDR, preferably using arduino.

I'm a fairly new HAM and being a student son't have $1000+ to spend on a HF rig.

I would be interested to hear if you have gotten any further in your search for information.

Olly

With only 2k of RAM and a A/D that can only (practically) sample about 10ksamples/s, you aren't going to get much "radio" out of it. The Arduino really isn't even fast enough to record human speech with decent quality and that's a relatively narrow bandwidth.

SDRs rely on digital signal processing, better suited for Digital Signal Processors (DSPs).

Yes, it is possible.
However, as others say, the standard Arduino won't do a great job, so you will need to get (or even design) a Shield card to do most of the work.
In that sense, the PC becomes a radio keypad, display, and speakers. The Shield card is the actual "Radio" and the Arduino is the interface between them.

So, what do you nned from your shield? It depends on what you want from the SDR.

A basic SDR is the "SoftRock" series. You plug in an antenna, send it a frequency over an I2C interface, and it spits out (over audio) a section of RF around the frequncy you specified. Relying on the Arduino to convert that will run up aginst the ADC limits mentioned. You a get a functional, but weak, radio. Note: the actual conversion of signals to audio will happen in the PC...

What if you have your own ADC? Yes, you can sample faster, and the Arduino acts like an external sound card. It pumps more signal to your PC, where fancy software steps in and selects a station from all the guff coming in.

You can do better - but here's where it gets REALLY challenging.
If you have a Really Fast ADC you can sample at RF. Then you need something to cut it down, before you send it to the PC. We're talking DSP processor, or an FPGA chip.
This chip will do a FFT (Fourier Transform) on the RF. Presumably, the result gets shown on your PC. You pick a band of interest, and the Arduino tells the chip to throw away everything EXCEPT the bit around that band. Then the chip does an Inverse FFT, and the Arduino pipes that section to the PC for final decoding.

The Arduino becomes the USB interface to the ADC / FPGA. If that's what you want, there are better and cheaper USB interfaces out there. There may be some value to all this as a learning process, but I wouldn't consider it practical.

I am building soon the LIMA-SDR (tx and rx). Ofcourse it runs over I2C to control
your bandsettings and Si570 crystal oscillator. In first instance I want to control
and readout the frequency and the bandpassfilters. This by replace the EEprom
with the Arduino Mega as controller. For this I have already a LCD screen (for
the frequency readout) and a TFT 3'2" touchscreen. Normally you use for LIMA-SDR
the software where the PC controls your software. But you can also only use the
audio input on the PC. Like I now doing with my analog TS-690s. In a later stadium
I want to build a small audio card directly connected to the LIMA-SDR. This can
gives me a 96Khz bandwidth. But more important I can easier doing the A/D
conversion for the waterfall on the TFT display.

By the way: For connection and to doing galvanic separation for my tranceiver
for WSPR and FSK on my TS-690s I am using the FTDI-MOD-4232HUB.

Just look at my video about Arduino controlling SDR tranceiver: SDR Radio - YouTube

Some stuff might interest you at GanymedeHam.blogspot.com

All stuff to build an Arduino Uno controlled SDR for amateur radio at Github.com/M6KWH

  • VFO shield
  • SDR Shield
  • Sketches
  • Eagle files for schematics and PCBs

I have a similar problem. Perhaps a different Microcontroller could be used? An ARM or a PICAXE?

Cyberman112:
I have a similar problem. Perhaps a different Microcontroller could be used? An ARM or a PICAXE?

Yes.

There's a project doing this sort of thing on a Raspberry Pi

RF transmitter for Raspberry Pi

Hello everyone,
I am also interested in using an SDR with an Arduino. I am following this discussion with great interest.

I understand that the Arduino is not powerful enough to handle full SDR reception (ex: demolulation of FM signals, etc.). But could it be used to do easy or simple stuff ?

I would like to use it to display as an "S-meter". For exemple, tune an FM broadcast signal on 100.1 MHz with a bandwidth of 200 KHz, read the relative signal strength, and display this signal strength as a numeric value on a display attached to the Arduino. I suppose this needs much less processing power than a demodulation or spectral display... is it possible to implement this on an Arduino???

See my conceptual schematic on the .JPG file attached to this posting.

  1. Daniel VE2BAP.

1 Like

ddufault:
See my conceptual schematic on the .JPG file attached to this posting.

Arduino - SDR.jpg
Sorry, but like the others here, it seems you do not comprehend what an Arduino is. At least when we are talking about the basic Arduinox - the UNO/ Mega/ Leonardo/ Nano/ Pro Mini.

These are simple microcontrollers - substantially more powerful than the 6502 in the Commodore 64 but do remember that all the fancy stuff that it did was in the support chips.

If you want to interface with a SDR, you need a PC-grade microcomputer that can at least handle full Linux. Some of the more novel Arduinox approach this, but you also want the audio interface and preferably, video display. The minimum system would probably be a Raspberry Pi which already has those interfaces - including the USB ports.

You have illustrated two devices which are both USB attachments - no USB ports. Kind of like attempting to plug your USB stick into your pocket hard drive. :roll_eyes:

olly333:
Hi Myfaithnka,

I'm also interested in building a SDR, preferably using arduino.

I'm a fairly new HAM and being a student son't have $1000+ to spend on a HF rig.

I would be interested to hear if you have gotten any further in your search for information.

Olly

I know this is an old thread, but there is an arduino based HF radio. It's not an SDR, but the arduino controls the radio and provides the interface. It's also a way to get an low power (QRP) HF radio for a lot cheaper. $150 or the complete kit with case is $199 and everything else you need besides a 12v power supply and an antenna (you can easily build your own antenna with a little bit of wire. It's the uBitx. https://www.hfsignals.com/

It uses an arduino nano. The new version (v6) comes with a color touchscreen. I have the v5 and added a 3.5" Nextion display and a second arduino nano to get a S-meter.

73 de N9FC

g1gabyt3:
I know this is an old thread, but there is an Arduino based HF radio. It's not an SDR

Well you are absolutely correct there. :grinning:

It is an old thread.

What you describe is not in any way related to Software Defined Radio. :roll_eyes:

Which is in turn, not related to Arduino. :astonished:

The µBITX boards are hand-assembled by a collective of women.

Why is the gender of the people who do the work significant?

Yo acabo de realizar un prototipo de transceptor para 4 metros "70 MHz", totalmente controlado con Arduino. Naturalmente no es con un SDR, por lo que hay que currarse las cosas a mano. Para el que le interese, lo puede ver aquí: Proyectos electrónicos creados y diseñados por mermelado para BEVE - Biblioteca electrónica virtual española