V3.1 Release Notes

Links to kits, all release notes 💾
User avatar
Simon G4ELI
Posts: 2037
Joined: Thu Aug 06, 2020 7:27 am
Location: Mawnan Smith

V3.1 Release Notes


Unread post by Simon G4ELI »

Build 2547
Build 2547 is available as a public beta. The kits are here.

Audio Waterfall
  • Should fix Contrast control in the Audio Waterfall.
  • Half-Duplex now sets the RX LO to the TX LO while in receive, this seems to be the only way to guarantee a spur-free transmission. Some other RX LO frequencies also result in an almost spur-free transmission but this is just chance.
  • Finally got the higher rates working. Please use 768 kHz and 2.304 MHz and look for the spurs. There’s a magic ADC value in Pluto, this value is 2.083 MHz (25 MHz / 12). When using a sample rate < this value the AD9364 must decimate (rx) and interpolate (tx), but when above this value there’s no decimation / interpolation. So the comparison will show whether the spurs are caused by the decimation / interpolation in the AD9364. Note: The output is a bit higher at 2.304 MHz than 768 kHz.
  • Added the powerdown option Self Reception on the ADALM-PLUTO [Analog Devices Wiki] , this really works, is very fast. I can always make this optional, but my tests show it’s working.

    • In full duplex the TX will not cause problems for the RX.
    • In half duplex the RX will not cause problems for the TX.

    • In half duplex mode the receiver is powered off during transmit.
    • When not transmitting the transmitter is powered off.
    • Added power status in the radio pane.
    • When not transmitting the TX gain is also set to -89.75dB (lowest supported), was -40.0dB. As the TX is powered off this change will have no effect.
Frequency Window
Selected from the status bar, right-hand side.
  • Fixed a bug in the Frequency window when selecting an entry from the Previous list.
  • Any problems please add a screenshot.
  • Fixed error when user connected with incorrect server credentials
  • Enabled support for exclusive mode access to the microphone. The advantage is lowest possible latency of 3ms, not a big deal with QO-100 or long-winded waffling but for playing in contests or using VOX this will help. This is all part of my attempt to reduce transmit and receive latency. In the Transmit Options select Exclusive and restart. If the microphone can’t be opened in exclusive mode it will be opened in shared mode. I’ve tested this on a couple of PCs with difference microphones.
User Interface
  • Updated and cleaned up the logic for idle updates with floating panes, thanks for finding this, a bug from at least five years ago.
  • Very, very minor improvement in performance (windows messages replaced with callbacks).
  • My NVIDIA 1650 Super’s CUDA cores are running at what I think is the maximum they can.
  • Max height now 100,000 entries.
  • Clicking in the playback navigator while a radio is running should no longer cause a problem.
DX Cluster
  • Fixed a n error when adding a spot and the list was updated - the input window focus was lost.

Build 2496
Build 2496 is available as a public beta. The kits are here.

External Radio
  • Finally found a fatal bug with external radio support, been working with a user direct. Able to reproduce it myself, so fixed!
  • ELAD S2: added another buffering option to set minimum possible buffer size.
  • ELAD FDM DUO: minor change in buffering to reduce latency.
  • Changed default Transmit Microphone filter length to reduce latency as the previous default filter size was far larger than needed. In the transmit filter dropdown select the last option to define new filters. The easiest option is to just click Defaults in the Filter Definitions window.
  • Updated the filter definition window with correct latency calculation.
Spectrum Smoothing
  • The default algorithm speed is now user selectable, the window has been reworked. Try adjusting the speed…
Spectrum Smooting.jpeg
CPU Load
  • Very minor reduction in idle load.
Signal History
  • Export – period can now be selected, for example one value per second.
Favourites Tree Pane
  • Now tracks the Favourites Definitions selection.
Recording Playback
  • Tuning while playing a file – if you tune outside the display the display is adjusted to make the current RX visible. For some reason this wasn’t working ~5 years ago but is now so I’ve enabled it for file playback.
  • Playback Navigator window, Display and Bitmap have been merged into Display, Fast Forward and Rewind buttons added.
  • The filtering is now correctly applied when starting, this error was causing spurs at 0.5 and 1.0 MHz. as there was effectively no wideband filtering in either RX or TX.
  • Enabling Boost TX gain now displays a popup warning that it may cause distortion.
  • Maximum bandwidth supporting TX is now 1.5 MHz, I can’t get TX working at 2.1MHz and above ☹ , this has been a problem for quite some time.
  • TX bandpass filter increased from 20kHz to 48kHz, I’ve checked and don’t see any ‘badness’ creeping through.
  • Minor reduction in latency.
  • Logfile entry for FIR filter tidied up (below).
20:26:56.960: Radio PlutoSDR> Apply FIR filter
20:26:56.960: Radio PlutoSDR> Set Filter
20:26:56.960: Radio PlutoSDR> (1) Current FIR filter = FIR Rx: 128,2 Tx: 128,2
20:26:56.960: Radio PlutoSDR> (2) Setting FIR filter = RX 3 GAIN 0 DEC 2 TX 3 GAIN 0 INT 2 -3, 0 2, 0 7, 0 27, 0 49...
20:26:56.960: Radio PlutoSDR> (2) OK, 1162 bytes written
20:26:56.960: Radio PlutoSDR> (3) Reading FIR filter = FIR Rx: 128,2 Tx: 128,2
20:26:56.961: Radio PlutoSDR> Enable Filter
20:26:56.961: Radio PlutoSDR> Read voltage_filter_fir_en, value = 1, status = 0, No error
20:26:56.961: Radio PlutoSDR> Write voltage_filter_fir_en, value = 1, status = 0, No error
20:26:56.961: Radio PlutoSDR> -

- + - + - + -

Build 2470
Build 2470 is available as a public beta. The kits are here.

Data Recording Playback
  • Added a bitmap display.
  • Vertical and Horizontal grid display now resizes to use as much space as is available.
  • Fixed playback positioning with WAV RF64 format files.
Data Recording playback, bitmap option
Data Recording playback, bitmap option
Data Recording playback, vertical grid option
Data Recording playback, vertical grid option
- + - + - + -

Build 2446
Build 2446 is available as a public beta. The kits are here.

Transmit Tones
Bug found, the first tone will now be enabled.

- + - + - + -

Build 2444
Build 2444 is available as a public beta. The kits are here.

TX Equalisation
Fixed an error with the equalisation filter values (IIR filter), this caused instability.

Moved the Auto-Mute indication from the status bar to the main waterfall as it was often overlooked. Auto-Mute setting is in the Ribbon Bar, Home, Wideband DSP panel.

Hermes-Lite 2
Reduced the fixed visual gain as this was too high, compensate as needed with the Visual Gain slider in the radio options. Visual gain is a value applied to samples after they are returned from the radio.

Transmit Tones
In some situations the first tone could be lost, this should now be fixed.

- + - + - + -

Build 2431
Build 2431 is available as a public beta. The kits are here.

DX Cluster
Now supports sending spots, more information.

Improved MIDI support more information.

Slow Down
Solved a problem with the program slowing down as the receiver frequency was changed.

Server Settings
Some users leave publicly accessible servers with odd settings, for example no AGC and maximum visible gain. This update starts the SDR with the default settings.
  • SDR-IQ now resets IF gain and RF gain when closing whether connected direct to console or when accessed via server. This avoids the overload LED flashing if the user left it that way.
  • Airspy HF+ (all flavours), SDRplay (all flavours), Perseus, ELAD S1 & S2 do not restore previous user settings when accessed via the server, instead the program defaults are used.
- + - + - + -

Build 2418
Build 2418 is available as a public beta. The kits are here.

:arrow: Big improvements in resource leaks and performance.
:arrow: Multi-Band display.

Updated support DLL.

Added voice keyer options.

Updated Transmit support page with advice to set the Line Level to 100.

Voice Keyer
Changed defaults to more sensible values.

Added Default option for high and low shelf filters.
Shelf Filters.jpg
Converter Defns
Updated the page where converter definitions are set - now more user friendly and a list of defaults is available.
Converter Defns New Window.jpg
Resource Leak
Found a leak of GDI objects - after a lot of mouse activity the UI would slow down due to the GDI object count increasing.
GDI Objects.jpg
Multi-Band Display
Added: Ribbon Bar, Receive, View, Multi-Band.

Thread Mutexes
All code now uses Microsoft classes.

Added demodulation audio and recording background queue sanity checks.

More sanity checks for ELAD S3 buffering to avoid lockups.
Fixed ELAD S3 32-bit buffer size bug.

Mouse Wheel
Added option to reverse direction.

Shader files now memory resident.

Reduce latency.

Fix problem streaming data at 10Msps.

Digital S-Meter
Changed resolution from 1dB to 0.1dB.

Band Plan
Fixed logic re: database location.

Added optional automatic save of project after analysis/drawing complete.

DX Cluster
Reduce list size to 500 entries, history still contains all data received since program start.

Organiser now much faster.

Microsoft's MSXML 6.0 replaced with pugixml to remove handle and memory leaks.

Transmit USB Relays
Replaced legacy support with new, clean and correct code which works with dcttech.com and ucreatefun.com boards. Both are HID devices but with own idiosyncrasies.

CW Skimmer
Replaced downconverter and NCO classes with the DSPFunctions dll.

TX/RX Delay
Range increased to 100ms.

- + - + - + -

Build 2365

Resource Slowdown
If the DX Cluster was active and spots were displayed as markers the result was the software got slower over time (Direct2D resources were being allocated and not released). This has taken many weeks to find.

Matrix View
Fixed error with signal level display in a multi-page layout.

CPU / GPU Display
Now updated every second, was every 250 milliseconds.

S-Meter Accuracy
As a result of a post by Everett N4CY I added a new signal level option, Accuracy Best. This applies cubic spline interpolation to the FFT bins where the peak is detected and returns a more accurate (higher) value. On medium wave AM stations I’ve seen as much as 2.5dB increase. This is something I’ve been meaning to do for a long time, writing a good cubic spline implementation is not trivial!
S Meter Accuracy.jpg
Better receive buffer control for Pluto – a big buffer of unplayed IQ can no longer build up when starting the Pluto. This kit should reduce the delay considerably when selecting [TX] for the first time and also have less delay when selecting [TX] thereafter.

Receive buffer threshold set to 50ms with maximum set to 100ms (was 100ms and 300ms).

TX calibration improved, the current drive level is used for the calibration. Extensive diagnostics added to the logfile.

Updated the Save / Restore option (bet you never knew it existed). Now found on Ribbon bar, Tools, Settings, Backup. Still some work to do here, but a few hours has made this much better.

Major resource leak / slowdown found! Over time the software would get slower and less responsive, due to a leak (bad code) in the Direct2D buttons, used in the Modes, Filters windows and many other places besides.
Display of Cluster spots as Markers: Over time this would slow the updates to the Spectrum display, slowly using more CPU.
Refined Direct2D render target resources.

Signal Level
Added a new signal level option, Accuracy Best (Ribbon bar, View, Spectrum, Signal Meter). This applies cubic spline interpolation to the FFT bins where the peak is detected and returns a more accurate (higher) value. On medium wave AM stations I’ve seen as much as 2.5dB increase. This is something I’ve been meaning to do for a long time, writing a good cubic spline implementation is not trivial!

Transmit Meters
Finally fixed the Transmit meters not being displayed correctly.

DX Cluster
Spots not added if already expired, faster startup

Cursor Bars
A lot of the code is 6+ years old and I’m now finding and fixing subtle bugs. It was possible to delete a receiver but still have the cursor bar logic think the receiver existed.

Waterfall Resolution
Added x16 waterfall resolution – for observing very weak signals. A specialised window is really needed for this.

Taskbar Jump List
Updated error handling with the jump list code.

Scheduled Recordings
Added a 'Repeat every..' option when adding a new recording, this makes it very easy to add repeated recordings, for example hourly (top of the hour) and daily.

- + - + - + -

Build 2346
  • Fixed spectrum display bug in Matrix window.
  • ICOM IC-r8600 settings now preserved between sessions.
  • Updated voice keyer to support either 4 playback buttons or a dropdown with up to 50 (yes, 50) playback files.
- + - + - + -

Build 2340

SDRplay API 3.08
This kit supports SDRuno 1.40.2 (Nov 16, 2020) up to SDRuno 1.41 Beta 1 (Aug 4, 2021).

- + - + - + -

Build 2338

Fixed obscure problem with FM Stereo audio and USB external soundcards.

Band Plan
Added a Band plan and a band-plan editor. To display band plans and select data: Ribbon Bar, View, Spectrum, Band Plan. You can display the default band plan, import a plan in the SDR# format (as an XML file) and / or create a new plan.

SDRplay Latency
Reduced latency in the SDRplay support. Due to poor code in SDR Console which had not been revisited since the early days of SDRplay the latency could be many 100's of ms.

Transmit Meters
Resolved a timing error which resulted in unused transmit meters not being hidden.
Shelf Filters.jpg
Data Recording playback, bitmap option
Data Recording playback, bitmap option
Spectrum Smooting.jpeg
Simon Brown :shock:

Do not send me direct e-mail, thank-you!