SdrDx Docs -> opreqs
         Previous <—> Next                  HomeContentsIndex                  Guide                 BETA DOCUMENTATION

Beta Address:

2.0 - SdrDx Operational Requirements

1/5: OS X 10.6 (Snow Leopard) or, 10.7 (Lion) or, 10.8 (Mountain Lion) or, 10.9 (Mavericks) or, 10.10 (Yosemite) or, 10.11 (El Capitan) or, 10.12 (Sierra) or, 10.12 (High Sierra) or, Windows XP or, Windows 7.

2/5: A Mac or Windows PC, dual-core Intel, 2 GHz or faster.

Note: SdrDx uses threads -- usually about 9 or 10 of them, but it can be as many as 14 -- to divide up the various jobs it does into bite-sized units, and keep the load balanced between those tasks. Because of this, it takes excellent advantage of multicore CPUs as long as they have FPUs as well, and it makes excellent use of a single core with an FPU, if that's what you have -- assuming it is fast enough.

At this point in time, SdrDx consumes about one CPU+FPU core at 3 GHz, or two at 1.5 GHz with the FFT running as fast as possible on all modes but WFM, where it can use up to 1.4 cores.

If you have a dual core running at 3 GHz, you can usually expect to have about half your CPU capacity left over when SdrDx is running. The dual core, 2 GHz suggestion for a minimum with the FFT update rate maxed out leaves you about 25% capacity remaining, enough to fuss with a web browser, etc., more, no doubt, is better — and that's not going to demodulate WFM, either.

You can reduce CPU utilization, often considerably, by dropping the Max Display Rate setting in the display dialog (accessed with DSP) down to a lower one. For instance, on my laptop, in SSB mode, I go from 80% CPU utilization to about 55% when I drop the Max Display Rate from 30 down to 10 per second. In WFM, I got from 140% at 20 FPS to about 125% at ten.

I usually run SdrDx on my desktop, which is 8 CPU+FPU cores at 2.8 GHz. I don't really notice that it's running -- I have almost 7 cores left over to do work for me. But I also run it on my old 17" Macbook Pro, which is a core two duo running at 2.33 GHz, and that makes a perfectly satisfactory radio platform, using the Max Display Rate setting described previously.

You can figure out about how much of your system you can expect SdrDx to use by multiplying your number of system CPU+FPU cores by the system clock speed in GHz to get your FPU factor. Flat out (about 30 updates/second) SdrDx uses about factor 3; so if you have a 6 core, 2.5 GHz CPU+FPU system, that's a 15 (6 x 2.5), and so SdrDx will consume about 3/15ths, or 20%.

These numbers are approximate, but I've found them to be usable. The faster/better your FPU is, and the more of them you have available, the more headroom you'll have left over for other interesting things, like decoding SSTV, RTTY, digital shortwave and so on. Likewise, drop your display rate, and you'll have more CPU available as well.

Note that virtual cores -- those achieved by hyper-threading -- don't really count, because they don't have their own floating point units. SdrDx isn't limited by data transfer or integer instruction streams, it runs up against the limits of the floating point units first, so hyper-threading really doesn't help.

3/5: An SDR-IQ, An SDR-IQ connected to USB 2.0 port and/or, FUNcube Dongle Pro w/18j firmware on USB 1.1 (or better) port or, a Soundcard-based SDR, or, nothing (you can play back recorded spectrum files this way), and/or an SDR-14, SDR-IP or NET-SDR by RFSPACE, an AFEDRI SDR, or an Andrus MK 1.5 SDR.

Caution: Windows? Sadly, Qt 4.7 ... 4.8 for Windows has a sample rate limitation of 48 KHz when using its QAudioInput class. This limits what we can do with the FUNcube Dongle Pro to half the bandwidth it is actually capable of. I'm looking for ways to work around the problem, but for the moment, be aware that under Windows, the FUNcube Dongle Pro can only operate up to 48 KHz bandwidth / sample rate.
Warning: Leopard and SDR-IQ? While I have taken care to see that SdrDx can operate under 10.5 (Leopard), the server software that converts the SDR-IQ from a lame and annoying USB 2.0 device to a powerful Ethernet device cannot. As the server software is not something I wrote, there is nothing I can do about this. So if you're looking to fire up an SDR-IQ, you'll need am OS X 10.6.8 or later system to run the server (or a Windows XP or later machine running the Windows server.) Sorry about that.
Warning: Notice x 2

1 Before you can successfully run SDR-xx (the USB-to-TCP server for the SDR-IQ) under Mavericks and later OS X versions, you will first have to open a terminal and enter the following bit of highly user-unfriendly esoterica:

     sudo kextunload -b 

That unloads Apple's new (and completely broken) driver for the FTDI chip and allows the one in the SDR-xx server to function as designed.

2 When running OS X Mavericks and the SDR-IQ, be sure to locate the application icons for SdrDx and SDR-xx (the USB-to-TCP server), right click on each one, select show info, and CHECK Prevent App Nap, the idea being that you do not want these applications to nap.

App Nap is a known source of repeated loss of data from the SDR-IQ.

4/5: If you're going to be using an RFSPACE SDR-IQ SDR, you'll need a running SDR-xx server application under OS X 10.6 (Snow Leopard) or later or, running SDRxxserver.exe application under Windows XP or later.

5/5: Ethernet (or really good WiFi) connection to SDR-XX server if you have an ethernet-connected SDR and it is running on a different machine.

...and (obviously) you need a monitor.

Not so obviously, SdrDx will look a lot better and present itself as visually a lot more friendly in display space that allows the automatically expanding control panel and signal display area to come to a good agreement about which component gets how how much space.

In testing, I've found (and so have some users) that a larger 4:3 monitor set to 1280 x 1024 provides the best compromise for low resolution displays. With most computers, adding a second monitor (highly recommended) is just a matter of plugging it in and setting it up in the appropriate system preferences / control panel area. The standard configuration provides a keystroke command to set the window to 1280 x 1024: ^ B

You can set the amount of space the spectrum and waterfall are given as compared to the control panel by clicking DSP and setting the 2D Screen Size % control. I use 60% myself; you might want to start with that and experiment from there.

SdrDx will work on any single monitor with 1280 or more horizontal resolution and 1024 vertical resolution, it's just that you may find that the control arrangement can become less usable when the program window is dragged to certain (wider) aspect ratios or if the window is shorter than 1024 pixels high. If you have a high-resolution monitor, you should be able to find the most usable configurations by dragging the program window into various shapes that are nearly square and as large as, or larger than, 1280 x 1024. So in this circumstance, I recommend using ^ B

Having said that, you can also split SdrDx into a control window and separate RF spectrum / waterfall window using RFV

In this mode of operation, you'll probably want to utilize (at least) two monitors. Doing so allows you to obtain a very large spectrum / waterfall display. You can only split or unsplit when SdrDx is not running. Otherwise, you'll see RFV.

Note: SdrDx can be successfully operated with anything from a trackpad to a trackball to various kinds of mice, but it was designed to be operated with a two-button (or more) mouse. There are numerous right-click commands that are issued through the main panel; if you have a single-button mouse, you're going to have problems. Without assuming I'm being snooty, please accept my advice on this matter and get (at least) a two-button mouse -- or one that can simulate two buttons, such as Apple's "Magic Mouse".

toc    index    guide    changes    keyboard    , previous    . next
Please consider supporting my SdrDx development efforts via a small donation.

         Previous <—> Next                  HomeContentsIndex                  Guide                 BETA DOCUMENTATION