HDSDR With Digital Modes Advanced Topics.

There are several methods to synchronise HDSDR with other programs depending on the digimode program and the receiver(s) setup. It mainly depends on the digimode program's capabilities.

These additional items may be required:-

Table showing different ways of controlling HDSDR and some programs that use each way. Some links to show each way.
This list is not complete. See http://www.rv3apm.com/ for a list with many digimode programs.
Some programs that accept IQ input like WSPR-IQ,  CWskimmer, Dream may be used without HDSDR. You must decide what suits your needs. Read each program's help files. 
 Legend Used Below:-  Output Channel Mode to be set in HDSDR
 Examples of Some Applicable Programs

Demodulated Audio.
"AF to Both channels"
Has the output of a "good old table (T)RX"

Unprocessed I/Q
"IF as I/Q"
or "IF as Q/I"
Has the output of an I/Q receiver
FM demodulated IF
"FM discriminator output"
Has the output of a receiver's discriminator tap
Serial CAT interface:
Fldigi, MixW, RCKskimmer,
"CAT to Radio"
DDE Interface:

Satellite trackers like Orbitron adjust for doppler. Ham Radio Deluxe (HRD)
Not Synchronized (HDSDR tunes the radio).
Listed programs are capable of decoding

DSD(Digital Speech Decoder),
RDS Spy,

Output Channel Mode
to be set in HDSDR
These output channel modes will require a way to send audio to another program. . See Intermediate Sound Interface.

The mode to be set in HDSDR depends on the digimode program. There are a few programs which may process several channel modes. Read the digimode program's manual for which mode is appropriate.

Check the the output samplerate! This is mode dependent in HDSDR.
   "AF to Both channels"
"AF to Left channel"
"AF to Right channel"
These options will output the demodulated audio (what you hear) to the output soundcard. All DSP processing like NB, bandpass filters, NR and AGC will be applied, when activated.
Most digimode programs expect USB demodulated signal.

For digital decoding most DSP functions will degrade decoding quality. This is why you should use the following parameters:
  • NR  should be off
  • NB RF + IF should also be off
  • AGC:
    • with hardware using 16 bits or less, AGC should be off
    • if AGC is used then it should be set to Slow
    • when using AGC, the AGC Threshold should be used to minimize lifting of the noise floor
  • Filtering: Many recommend that the digimode is best left to do it's own filtering. Even reducing the bandwidth might affect decoding. But this all depends on individual software and receive circumstances.
  • Squelch should be turned off.

The output sample rate will primarily effect the output bandwidth of HDSDR and the maximum usable HiCut frequency. Of course the output bandwidth is the maximum input bandwidth for the digimode program.
Use the same output samplerate in HDSDR as the input samplerate in the digimode program. If there is a mismatch in the samplerates, Windows or the Soundcard will try to interpolate. But this interpolation usually will degrade the signal!

It usually will not matter on which channels of the soundcard the demodulated output goes. Left/Right may be useful for monitoring 2 HDSDR instances at same time. Most digimode programs will read their input from Left or Right, because "old style" table receivers also have just a mono output.
  IF as I/Q
IF is the unprocessed input signal - except for NCO mixing Tune to 0 and downsampling.
None of the mode or DSP functions will affect this signal.
Only output samplerate, tune frequency and "NB RF" will have an effect.

Up from HDSDR v2.75 an additional gain can be configured. This is useful for receivers, with higher than 16 Bit dynamic range. The I/Q gain slider gets visible with the {Ctrl + G} keyboard shortcut.
   AM/FM discriminator
with "AF to .."
One of the AM/FM modes has to be set in HDSDR.
AM/FM bandwidh has to be set on FM, appropriate for the digimode. Usually this is 12500 Hz or 16000 Hz.
With keyboard shortcut {W} you can set the mode's bandwidth directly in kHz.

The AM/FM demodulated signal is output to the soundcard channel(s).
With keyboard shortcut {Ctrl + H} you can de/activate the highpass and DC filter.
On fast (baudrate) signals always transmitting different symbols, there is almost no difference to using the highpass. You'll notice the difference when using slow signals, especially when containing time periods without any change.
The existence of the red line in the left of the audio (AF) spectrum will indicate if the highpass is active.
Frequency Control/
 Many programs control a radio by CAT. HDSDR and it's associated radio may be tuned by these programs.
  CAT to Radio
 A second radio may be controlled by HDSDR. Various options for synchronising a radio with HDSDR are available.
   DDE  Tuning information may be passed from a program to HDSDR. Typically this is for satellite doppler correction.
Examples of some
Applicable Programs

Some Working Examples of These Techniques

Most of these setups require different configurations. You may wish to make start-up profiles for modes you use regularly. See how to do this here.

This is one of the digimodes where one does not need VAC when used with a soundcard-based receiver, like a SoftRock. Any software that accepts IQ input may be used this way.

Here are some examples of digimode setups using SDR Sharp and the RTL dongle.
 Of course, you may use SDR# but HDSDR and your radio can be setup similarly and may suit your purposes.
These are at  rtl-sdr.com/  

rtl-sdr.com/rtl-sdr-tutorial-receiving-noaa-weather-satellite-images/ Using WXtoImg and Orbitron for doppler correction.
rtl-sdr.com/rtl-sdr-tutorial-cheap-ais-ship-tracking/ Using ShipPlotter or free AISmon + OpenCPN. 
rtl-sdr.com/rtl-sdr-tutorial-pocsag-pager-decoding/   Using PDW Paging Decoder Software

Sigmira™  www.saharlow.com/technology/sigmira/  includes Demodulation of HFDL, PSK31, FSK, SITOR-B, CW, NATO STANAG 4285 and NFM modes. Demodulation of the "Japanese Navy Slot Machine". It is a SDR program that operates with with an external conventional receiver, RFSpace SDR-IQ™, RPSpace SDR-14™, or SDR-RADIO.com networked receiver. It also may be used in conjunction with HDSDR to demodulate various military, utility, and "ham" radio signals.

These could be two "real" ports, either on the motherboard, extension board or a USB adaptor. A null-modem cable would be required to connect the two.

Or, "virtual" ports using an emulator like Com0com 
 free to radio amateurs, Virtual Serial Port Manager http://k5fr.com/DDUtilV3wiki/index.php?title=VSP_Manager a 64 bit version available.

Setup for com0com - changing the  port name may require a restart. Some Software will not recognise ports above COM8. You have the choice of numbering, sometimes it will be necessary to rearrange them within Device Manager.
  Read the information files here and download  http://com0com.sourceforge.net/ In the picture COM 7 and 17 are selected. These are a pair, one end of the "cable" is COM7, the other end COM17. As the diagram shows they are "connected" in null-modem configuration.

The picture below shows the VSP Manager's Control Panel after I created COM3 and COM4. And ready to create a second pair. As with Com0com I have found the default settings work. 

1)Stereo Mix 

For passing audio in one direction from one program to another:- Many soundcards have a "Stereo Mix" , "What You Hear" , maybe some other name in their mixer settings. This is said to be often available but hidden.

A lengthy description and discussion about "Stereo Mix" here.

And here http://www.rtl-sdr.com/tutorial-how-to-enable-stereo-mix-in-windows-7/ finding Stereo Mix. Note it is not always available.

2) VB Cable
 http://vb-audio.pagesperso-orange.fr/Cable/index.htm One cable free, more by donation. Two are normally required for transmit. I have not read too many reports about this but some have suggested it does not always work.

"Donationware" Voicemeeter is said to be able to stream audio from one source to two others so the received audio can be heard. http://vb-audio.pagesperso-orange.fr/Voicemeeter/index.htm

3) Another possibility is to link two soundcards by  real cables. I have not tried this. Although it is not usually recommended some have reported good results.

4) Virtual Audio Cable

Virtual Audio Cable is used to send audio streams between HSDR and another program  http://software.muzychenko.net/eng/vac.html This is not free. There is a demonstration for initial testing but DO NOT USE THIS FOR TRANSMITTING.
 NOTE some time ago when I was first setting up Virtual Cable it took several seconds, the screen blanked, I thought there were serious problems! However, no damage was done! 
Select two cables, Click "Set" to install. (Or more cables if you have a specific requirement) The default settings above have always worked with me but you may find it necessary to increase the Sample Rate (SR) range for applications that require higher, or lower, rates.
I have found this program able to be set and forgotten.
VAC appears as a soundcard in Windows and HDSDR's sound menu.

In the Windows Start Menu is the "VAC Audio Repeater" which enables the VAC stream to be passed to a speaker output.

Here two versions of WSPR
Below Fldigi

This uses CAT to control HDSDR which uses the Kenwood protocol. HDSDR has already been set to control a radio.
After setting the required COM port and baud rate go back and Click "activated"

And this is WSPRX set up so it tunes HDSDR and puts a Softrock to TX.
HDSDR's audio in/out is connected to WSPRX via VAC an intermediate sound interface
And the CAT is connected by a Virtual Serial port. (COM10/11)  Two serial ports
WSPRX is available on wsprnet.org Windows v0.7r2960 19 Jan 2013.

  Here WSPR is set to control HDSDR which will be set to COM17 using the cables example below.
WSPR-X does not (Yet?) have an IQ mode so something like HDSDR must be used. You may wish to use WSPR alone in IQ mode. This may seem easier but I've noticed a marginal improvement by using it in audio mode.

1) CAT to HDSDR Fldigi

Using Fldigi with HDSDR and SoftrocRXTX Radios  https://sites.google.com/site/g4zfqradio/hdsdr-fldigi merge?

  So COM7 in Fldigi goes to COM17 in HDSDR.

JT65-HF configuration for using HDSDR for CAT/PTT control

Here Hamlib is set to control HDSDR from HB9HQX's JT9 TXRX program.
A CAT rate of 4800 passed via a virtual serial port works with just the settings shown below.

3- DDE interface    (Dynamic Data Exchange) 
A method used to send data between programs. Different DDEs are used, the picture below shows the various DDEs that may connect with HDSDR.

Satellite tracking with Orbitron.    Read here for satellite tracking with HRD.

The Orbitron DDE is an extra, "mydde" found on the Orbitron site. http://www.stoff.pl/ download this and unzip the contents to a folder. I put it in a Mydde folder inside the Orbitron program folder. When you first select Mydde and click the start button you are asked where you have put it.

HDSDR just needs Orbitron to be selected in the DDE option. 
Usually for decoding data Sync Type "Tune" is best selected. Then the tuning is in software and no possible jumps as the tuner locks. But Orbitron will have to be set to the exact frequency required.
For voice and CW on a wide transponder then Sync Type "LO" is best selected. HDSDR will follow any tuned signal.

Now HDSDR follows Orbitron's doppler correction. 

 A List of Current Amateur Satellites and Their Frequencies http://www.dk3wn.info/p/?page_id=29535 and http://www.ne.jp/asahi/hamradio/je9pel/satslist.htm

WX Track http://www.satsignal.eu/software/wxtrack.htm The general DLL will also add doppler correction. 

When the data program has no control feature. HDSDR tunes the radio, data is sent and, maybe, received from the digital program. If the program has transmit capabilities then usually PTT may be sent to HDSDR by a COM port.
An example:- When the output sample rate is set to 192 kHz .. and having VAC configured right .. one may use RDSspy for  broadcast FM stations, click on thumbnail for full size picture.
 RDSSpy has got a new function in version 1.01 since July, 1st 2013:

http://rdsspy.com/index.php/category/news/ RDS Spy finally supports RDS decoding from MPX or RDS signal connected directly to the sound card.

* configure VAC for upper samplerate limit of 192 kHz
* just install RDS spy
* select input source to MPX from VAC in RDSSpy
* in HDSDR you need FM with the audio output sample rate set to 192 kHz, and the output to VAC
* for hearing audio, you need Audio repeater
* sensitive ears will hear the 19 kHz pilot tone.
to avoid this one may start a 2nd HDSDR (replacing Audio Repeater) with lowpass filtering.

Many other modes may be simply connected like this.

DRM, Dream  This is one of the digimodes where one does not need VAC when used with a soundcard-based receiver, like a SoftRock.

I have used version 1.17qt4 for my description, it is easiest to setup. May 2014, there are later versions here http://sourceforge.net/projects/drm/files/dream/  Be aware different versions may not all behave in the same way.
This version is at Sourceforge but note the need to compile (or find) libfaad2 dll  for it to decode audio. Read the legal information on the Sourceforge pages. http://sourceforge.net/projects/drm/files/dream/1.17/Dream-1.17-qt4.zip/download 

Libfaad2 dll. may be found in Sodira (Note this has embedded DRM, this makes DRM easy but some prefer Dream) and in other, earlier, compilations of Dream. There is a version here http://www.rarewares.org/aac-decoders.php I have not tried this.

Some older versions, try them with HDSDR but the setup will be different from what I describe. (Or one may be useful for extracting   libfaad2 dll for version 1.17).  http://www.df9cy.de/download.htm  an older version. 

Other links:- Try http://www.elexs.de/drm.htm (This is not an installation, the package needs to be extracted to a suitable folder and shortcuts made. (Or just extract libfaad2 dll?) Maybe... http://xoomer.virgilio.it/i5xww/drm.htm and www.b-kainka.de/  You may find something here..[ .http://www.sat-schneider.de/DRM/DRM.htm mainly commercial]

12 kHz IF receivers
Among the first SDR hardware were 12 kHz IF receivers suited for DRM reception. Some of these "old style" SDR receivers still exist, and the "RadioJet" (Bonito) is a modern example using a 12 KHz IF. All DRM decoders are able to use this 12KHz IF.
To use HDSDR  in this way it is just set to tune the radio, the decoder is set to use the same sound input as HDSDR.
To make the signals at the required 12KHz set the "Tune Offset" to 12000 Hz in Misc Options / set LO <-> Tune Offset. Always press 'C' to center the Tune frequency to 12 kHz audio frequency. (When using the option Misc Options / Tune fixed to 'LO <-> Tune Offset' HDSDR always centers the Tune automatically.)

If the receiver is not soundcard-based, e.g. ELAD FDM-S1, HPSDR, microtelecom Perseus, QS1R, RTL2832-Dongles then VAC will be required to send the stream to the DRM program.
Soundcard SDR receivers may use DRM in this way and also would need VAC to connect HDSDR's output to the DRM program.   

Setup for IQ receivers
Use Dream in IQ mode. 
No "Flip Input Spectrum". 
HDSDR Output mode = I/Q 
HDSDR Output rate 48KHz. 
Use AM mode so tuning/bandwidth are correct. Note:- With HDSDR set to IQ output this is only for setting the visual tuning indication. The actual mode has no effect on the IQ output. You should recheck output samplerate after switching to AM mode as samplerates in HDSDR are per mode.
If the DRM program accepts IQ input, (Dream has an IQ mode) then Dream may be set to the same sound input as HDSDR with HDSDR only tuning the SDR receiver. 

Below, HDSDR setup to tune a Softrock soundcard receiver. Set Dream v 1.17 to the same sample rate. Below I show 48KHz.
In Dream version1.17 you'll need to set 
* Sound Card / Signal Input / Channel: I/Q Pos Zero 
* Sound Card / Signal Input / Sample Rate: 24000 Hz

These are my settings, you may need to use other values if it does not work with your radio.  
HDSDR - Swap I/Q. Tune offset minus 12000.
Dream - Flip Input Spectrum. 

DRM schedules http://www.wwdxc.de/drm.htm the integral schedule in version 1.17 was good, but in another version it was NOT up to date.
OR use the keyboard to scan, looking for the characteristic spectrum.
Increase LO frequency by visible spectrum bandwidth Ctrl+PageUp
Decrease LO frequency by visible spectrum bandwidth  Ctrl+PageDown

DX? Possible, I once heard two seconds of the New Zealand Bell Bird...

Using HDSDR with a RTL dongle 
https://sites.google.com/site/g4zfqradio/hdsdr-use-with-rtl-dongle And using the dongle as an IF panadaptor with a conventional rig.
As a Panadaper with Tuneable SDR:- Using with a conventional receiver or transceiver.   Using an Ensemble with a conventional transceiver as a panadaptorIdeally take the Ensemble antenna connection from the transceiver.
Autocorrelation (and Cepstrum), new features November 2013. If you want to use this feature you probably know more about it than I! https://sites.google.com/site/g4zfqradio/hdsdr-autocorrelation

G4ZFQ November 2013

Below:- Incomplete snips, maybe will be incorporated later.

Notes about HDSDR setup.

sort in the other programs, which are referenced: HRD, 
> Orbitron, WXtrack, JT65-HF, WSPR-X, PDW
> but also some more non referened ones like MixW, MultiPSK, ..
Also good candidates are:
SoDiRa, Sigmira, MultimonNG,
[ WXtoImg, SondeMonitor, Ship Plotter, AISMon, Plane Plotter ]

On VHF and UHF FM mode is used for some digimodes. FM mode is the equivalent of a discriminator output  On VHF Examples: 
Paging decoder like PDW (http://www.discriminator.nl/pdw/index-en.html) for modes POGSAG and FLEX 
Digital Speech Decoder (http://wiki.radioreference.com/index.php/DSDfor modes P25, DMR/MOTOTRBO,
All FSK (like RTTY) may be sent and decoded this way. 

For analog setups, not all modes are suitable for just connecting the receiver's discriminator output (http://wiki.radioreference.com/index.php/Discriminator_output) to the soundcard's LineIn. These modes require a discriminator tap, because a soundcard will filter DC.
When using HDSDR with such a digimode program, you will need to use FM, usually with a bandwith of 12 - 15 kHz depending on the digimode. 

Some digimode programs can directly process received signal in parallel to HDSDR. This removes the necessity for VAC.  
As an example the FCDpro+ has a built-in 192 kHz soundcard delivering I/Q. if a digimode program can process I/Q, then there is no need for VAC. HDSDR would then just be used for frequency control - not necessarily for demodulation.  

Home page:- multimonNG   The Zip file:- (precompiled for Win32)