Electronics project notes / SDR notes

From Helpful
Jump to: navigation, search
This is for beginners and very much by a beginner / hobbyist.

It's intended to get an intuitive overview for hobbyist needs. It may get you started, but to be able to do anything remotely clever, follow a proper course or read a good book.

Some basics and reference: Volts, amps, energy, power · batteries · resistors · transistors · fuses · diodes · capacitors · inductors · ground

Slightly less basic: amplifier notes · varistors · changing voltage · transformers · baluns · frequency generation · Transmission lines · skin effect

And some more applied stuff:

IO: Input and output pins · wired local IO · wired local-ish IO · ·  Various wireless · 802.11 (WiFi) · cell phone

Sensors: General sensor notes, voltage and current sensing · Knobs and dials · Pressure sensing · Temperature sensing · humidity sensing · Light sensing · Movement sensing · Capacitive sensing · Touch screen notes

Actuators: General actuator notes, circuit protection · Motors and servos · Solenoids

Noise stuff: Stray signals and noise · sound-related noise names · electronic non-coupled noise names · electronic coupled noise · ground loop · strategies to avoid coupled noise · Sampling, reproduction, and transmission distortions

Audio notes: See avnotes

Platform specific

Arduino and AVR notes · (Ethernet)
Microcontroller and computer platforms ··· ESP series notes · STM32 series notes

Less sorted: Ground · device voltage and impedance, audio and otherwise · electricity and humans · power supply considerations · Common terms, useful basics, soldering · PLL · pulse modulation · signal reflection · resource metering · SDR · Project boxes · vacuum tubes · Unsorted stuff

Some stuff I've messed with: Avrusb500v2 · GPS · Hilo GPRS · JY-MCU · DMX · Thermal printer ·

See also Category:Electronics.


The discovery that many DVB-T TV receiver dongles are actually Software Defined Radios (SDRs), covering both (digital) radio and (digital) TV so ranging something like ranging 64MHz through 1.7GHz (for the commonly-seen RTL2832U) allows them to be nice toys receiveing everything in that range, for as little as EUR15 or so.

(That range also includes 315/433/868/915MHz signals, a whole bunch of amateur and commercial radio, and more. It stops short of 2.4GHz communication, though.)

How well a given dongle deals with a particular frequency still depends on the design around it. Radio/TV dongles tend have filters designed for the frequencies they are aimed at, and care less about the others, though because of the wide range this may not affect you too much(verify).

There are better-designed, better-behaved, more capable variants on this theme for on the order of EUR150-300, FUNcube Dongle Pro+ or HackRF, though more capable variants (BladeRF, USRP B200) quickly cost closer to EUR1000.

(...because SDRs are in general quite niche devices, the reason DVB-T is so much cheaper is both the fairly specific and smallish frequency range, and mass production)

See also:

Getting started

  • plug it in
  • windows: fiddle with driver stuff
  • optional: do a RTL-SDR benchmark to make sure it does what you think it does
  • run a tuner program and have fun



This article/section is a stub — probably a pile of half-sorted notes, is not well-checked so may have incorrect bits. (Feel free to ignore, or tell me)


  • gnuradio
  • rtl-sdr tools
  • SDR# apparently works under Mono



This article/section is a stub — probably a pile of half-sorted notes, is not well-checked so may have incorrect bits. (Feel free to ignore, or tell me)


The below focuses on having a Realtek dongle, meaning RTL-SDR via USB.


Windows tries to be automatic about drivers, meaning it will probably install either generic drivers or the ones intended to do only video capture (as the product is intended for).

We want our own control of the tuner, and for it to just hand the raw samples to us. (the realtek chip is mostly just used as an ADC).

You probably want to use Zadig to replace the driver.

For the realtek, the process is proably:

  • Run Zadig
  • Click OptionsList All Devices'
  • The device you want is probably called "Bulk-In, Interface (Interface 0)". To be certain, look at the current driver name and/or check that the VID/PID are your device's (against its Properties in Device Management, or against a known list)
  • You usually want the "WinUSB" driver (not libusb or libusbk?), and that should be default
  • click "Replace Driver" / "Reinstall Driver". It may ask you to reboot.

https://github.com/pbatard/libwdi/wiki/Zadig http://wiki.spench.net/wiki/USRP_Zadig


  • SDR# - a GUI
    • The RTLSDR-via-USB support is not in the current stable version. There is a plugin for what is currently the nightly build, but it takes a bunch of steps to figure out manually.
      • The easiest way is to find something called "sdr-install.zip", which contains a script that fetches the nightly, the plugin, some more supporting files, and does everything for you.
      • If you already had a SDR# setup and added plugins to its config, then you probably do want to things manually. (TODO: mention details here)
    • "RTL-SDR / USB is either not connected or its driver is not working properly" seems to happen when you use a USB3 port. Use a USB2 port instead.
  • Winrad and its forks, HDSDR and WRplus
    • HDSDR picks up on .dll files in its directory. If you have none, it will only offer sound card input and output
  • Zadig - replaces USB drivers. Initially for USRP, also for RTL2832 and a few others

  • gnuradio (windows build)
  • BorIP
    • the idea is that it allows you to connect to a remote reveiver via the network, so you don't have to be right next to your reveiver / antenna (gives you remote control, you receive baseband data)(verify)
    • programs don't have to have to know how to talk to specific hardware, just to BorIP (...so it's also useful on the same host)
    • Made for USRP (v1) hardware, also supports others
    • for RTL2832U you'll need
      for the device hint, and sometimes further options
    • for the Funcube your'll need to hint
    • http://wiki.spench.net/wiki/BorIP

  • ExtIO are plugins for Winrad and its forks, HDSDR and WRplus
    • ExtIO_USRP connects to a local USRP, or a BorIP server - effectively using whatever that supports
  • UHD - USRP Hardware Driver, the new-style driver for USRP. The old one is often referred to as Legacy


Interesting frequencies