Set up the receiver#
Plug in the dongle. Run Zadig, choose Bulk-In, Interface (Interface 0) and install the WinUSB driver.
Get a 64-bit
rtlsdr.dllwithlibusb-1.0.dllnext to it (for example the pair shipped with SDR#).Either copy both DLLs next to noesis-app.exe, or enter the full path to
rtlsdr.dllin librtlsdr path (below) and click Rescan RTL-SDR. TheNOESIS_RTLSDR_LIBRARYenvironment variable is used when the field is blank.Close SDR#, SatDump and any other SDR program — only one program can use the dongle at a time.
Install the library and udev rules (package
librtlsdr0and the rtl-sdr udev rules for your distribution).Blacklist the DVB-T kernel driver so it does not claim the dongle: add
blacklist dvb_usb_rtl28xxuto a file in /etc/modprobe.d/ and re-plug the receiver.Leave librtlsdr path blank to use the system library, or enter an absolute path.
Then open Recording, expand RTL-SDR survey & Synthesis settings and select the receiver in the device drop-down. Each detected receiver is listed with its status, tuner, HF branch information and any error.
Start a survey#
Tick Enable RTL-SDR survey. This ticks RTL-SDR Spectral Survey and RTL-SDR RF Features for recording and monitoring.
Click a profile — Fast Survey, Balanced Survey or High Resolution — or edit the values for a custom plan.
Set Minimum Hz and Maximum Hz (default 500 000 – 1 766 000 000).
Choose the scan order. Prefer
SerpentineorRandomizedwhen RF will be compared with other signals over time.Choose an IQ retention policy if raw IQ snippets are wanted.
Read the estimate line (windows, sweep time, MB/hour, budget duration), then start a Live Monitor or recording.
The dongle sees about 2 MHz at a time, so a full 0.5–1766 MHz plan is roughly 1 000 windows and takes several minutes. 100 MHz and 1.5 GHz in the same sweep were measured minutes apart; every window carries its own tune time, start, midpoint and end.
Settings are locked while a session runs; stop it before changing acquisition settings.
Survey settings#
Receiver#
| Setting | Use |
|---|---|
| Device drop-down | Selects a detected receiver (stores its serial and index). |
| librtlsdr path | Absolute path to a trusted librtlsdr build; blank uses NOESIS_RTLSDR_LIBRARY or the platform default. Rescan RTL-SDR reloads it. |
| Receiver is an RTL-SDR Blog V3 | Confirms the V3 HF Q-branch wiring when the USB strings do not name a V3 (many report “Realtek RTL2838UHIDIR”). Without it, HF windows below 24 MHz are skipped and logged. |
| Serial / Device index | Serial is preferred; blank serial uses the index. |
Profiles#
| Profile | FFT length | Target bin | Integration |
|---|---|---|---|
| Fast Survey | 2048 | 10 kHz | 50 ms |
| Balanced Survey (default) | 4096 | 2 kHz | 100 ms |
| High Resolution | 16384 | 500 Hz | 150 ms |
Plan and front end#
| Setting | Range (default) | Notes |
|---|---|---|
| Minimum / Maximum Hz | 1 Hz – 2.2 GHz (0.5 – 1766 MHz) | The plan must stay under 20 000 windows. |
| Sample rate Hz | 225 001–300 000 or 900 001–2 400 000 (2.4 MS/s) | Sets the window bandwidth. |
| FFT length | 256 – 65 536, power of two (4096) | Native resolution = sample rate ÷ FFT length. |
| Target bin Hz | ≥ native resolution, ≤ sample rate ÷ 8 (2000) | Native bins are grouped to this width. |
| Settling ms | 0 – 500 (5) | Discarded after each retune. |
| Integration ms | 10 – 1000 (100) | Dwell per window; must contain at least two FFTs. |
| Edge crop / side | 1 – 30 % (10 %) | Removes the filter roll-off at window edges. |
| Window overlap | 2 – 50 % (10 %) | Overlap between neighbouring windows. |
| Manual tuner gain | on (20.0 dB) | Gain in 0.1 dB steps; the nearest supported value is used. |
| PPM | ±1000 (0) | Frequency correction. |
Scan order#
| Order | Behaviour |
|---|---|
| Ascending / Descending | Low to high (or reverse) every sweep. Frequency is tied to time within the sweep. |
| Serpentine | Alternates direction each sweep. |
| Randomized | A seeded shuffle per sweep (Order seed) that decouples frequency from time. |
The exact acquisition order is recorded per window.
HF (below 24 MHz)#
| HF mode | Behaviour |
|---|---|
| V3QBranch (default) | Validates the V3 identity (or your confirmation) and uses direct sampling on the Q branch below 24 MHz. |
| DriverAutomatic | Lets the driver choose and records the read-back mode. |
| TunerOnly | Never uses direct sampling. |
| DirectI / DirectQ | Forces the I or Q direct-sampling ADC. |
Direct-sampling paths can contain mirror images and do not use tuner gain, so HF levels are not comparable with VHF/UHF. NOESIS never enables the bias tee.
IQ retention#
| Policy | Keeps a raw IQ snippet… |
|---|---|
| Disabled (default) | never. |
| Periodic | every N windows (Periodic IQ: every N windows). |
| SelectedRanges | for windows inside bookmarked ranges (Add range / Remove last range, up to 32). |
| ChangeTrigger | when a window changes by more than Change trigger dB (default 6) from its previous observation. |
| StrongestPeaks | for the N windows holding the strongest peaks of the previous sweep (1–64, default 4). |
Complex samples / snippet (default 16 384) sets the snippet length. Snippets are stored losslessly at 2 bytes per complex sample.
Budgets and estimate#
- IQ budget bytes (default 64 MiB) caps all IQ snippets.
- Total RF budget bytes (default 1 GiB) caps all RF data; when reached, RF stops and every other source continues.
- The estimate line shows windows × bins, seconds per sweep, spectrum and feature bytes per window, MB per sweep, kB/s and MB/hour, and how long the RF budget lasts. The Balanced default is about 210 MB per hour with IQ off.
Live RF views#
While a survey runs, the RF survey panel appears at the top of Live Monitor, Recording and Analysis:
| Element | Shows |
|---|---|
| Status line | Backend, sweep number, window position, order, actual centre frequency, direct-sampling branch. |
| Progress bar | Sweep progress and approximate time remaining. |
| Measurement line | Observed interval, noise floor (dBFS/Hz), peak frequency, occupancy, RF bytes written, observed PSD rate; acquisition drops and clipping percentage. |
| Strongest peaks | The strongest peaks in the current window. |
| Current spectrum | MHz vs dBFS/Hz for the latest window. |
| Wideband panorama | Every window of the current sweep (bright) over earlier sweeps (dim). Capped at 2048 windows on screen; the recording keeps all. |
| Sweep waterfall | Low frequency left, high right; one row per sweep; black is unobserved. |
| Delta | Change from the first observation of the same window. |
| Peak tracker | Peak frequency against acquisition time. |
| Activity / progress map | Occupancy per window index. |
| RF technical provenance | The full metadata of the latest window. |
What is recorded#
Per window: the PSD (FS²/Hz, uncalibrated), 17 features — window power, noise floor, peak frequency, peak prominence, centroid, spread, entropy, flatness, occupancy, significant peaks, crest, 99 % occupied bandwidth, kurtosis, delta vs previous sweep, delta vs first observation, persistent-peak fraction, transient peaks — and the timing and front-end read-backs. Progress, unavailable windows, skipped HF windows and budget events are logged.
Command-line survey tools#
noesis-app --rf-estimate # size/time of each profile for the default span
noesis-app --rf-sim # simulated survey session
noesis-app --rf-smoke --rf-library PATH --rf-min 88000000 --rf-max 108000000 --rf-seconds 30
noesis-app --rf-summary sessions/session-ID # JSON summary of a recorded survey
noesis-app --rf-export sessions/session-ID 0 sweep0.csv # assembled bins of sweep 0
See Command line for every RF option.
Troubleshooting#
| Message | Fix |
|---|---|
| library unavailable | Wrong path or a 32-bit DLL. Use a 64-bit rtlsdr.dll with libusb-1.0.dll beside it. |
| no compatible receiver | The WinUSB driver is not installed (Windows) or the DVB driver holds the device (Linux). |
| access denied / busy | Another SDR program is open. |
| HF windows skipped | Tick Receiver is an RTL-SDR Blog V3 or choose another HF mode. |
| RF plan exceeds 20000 windows | Increase sample rate or reduce the span. |