Skip to content

What's new

2.4.2: lower hosted VM memory residency

The public Studio VM reports unused guest pages back to the host and uses direct disk I/O to avoid duplicate host/guest disk caching. The guest retains 8 GiB of addressable RAM, the API keeps its 6 GiB limit and the GPU worker keeps its existing resources. Waveform generation, numerical precision, model training and session admission limits are unchanged. See the release notes.

2.4.1: NR standard test models in the Signal Generator

The 5G NR tab now opens on the NR FR1 test models of 3GPP TS 38.141-1 clause 4.9.2: NR-FR1-TM1.1, 1.2, 2, 2a, 2b, 3.1, 3.1a, 3.1b, 3.2, 3.3 and NR-N-TM. Choose FDD or TDD, one to sixteen carriers, subcarrier spacing (15, 30, 60 kHz) and channel bandwidth (3–100 MHz) per carrier, gaps between carriers, rank for TM1.1, the PN23 reading, NB-IoT position and boost, oversampling and capture length, and, as a Studio extension, the cell identities. What the standard fixes is listed read-only; the open parameters that Studio does not offer are listed in the guide. The old preset matrix is behind Generic numerology matrix… and is still not a set of standard test models.

With the data convention set to MATLAB's, the resource grids agree with MATLAB R2026a's 5G Toolbox in all 438 compared configurations (414 bit-identical, the rest within 3.2e-16); the default convention follows the standard's text and differs from MATLAB's random bits for TDD, TM2/2a/2b and captures longer than one frame. The signals are uncoded baseband stimuli with PDCCH, PDSCH and DM-RS only. At default settings 35 of the 80 combinations of duplex mode, subcarrier spacing and bandwidth of a single carrier (10 of 40 FDD, 25 of 40 TDD) are shorter than the standard's 10 or 20 ms, because a capture holds at most 1,000,000 samples. The EVM shown is a known-grid diagnostic, not a conformance measurement, and no instrument was involved. Signals that are not test models keep their identifiers, and a workspace that contains test-model signals cannot be opened again by 2.4.0. On the hosted Studio the Signal Generator's generate routes now count a request against the per-network rate limit before they validate it, so a client that keeps sending invalid requests receives 429 sooner. Restart a running workspace service after upgrading.

NR standard test models · 2.4.1 release notes

2.4.0: MATLAB toolbox and versioned LTE validation

Train PA and DPD models through MATLINK or the MATLAB script API, use fit to train a pair from a capture, and export portable packages that run in plain MATLAB. Generate standalone classes for Simulink and MATLAB Coder, or replay fixed-point packages against their golden vectors. The Python SDK shares the same workspace and queue as Studio.

Two new LTE EVM/ACLR profiles use explicitly matched spectral settings and frequency-tolerant timing acquisition. All 115 registered digital comparisons pass against MATLAB at the original tolerances. The original v1 profile and its failed validation record remain unchanged; this is not a standards conformance or hardware measurement claim. Existing Arena results retain their frozen source identity.

MATLAB toolbox · LTE v2 evidence · 2.4.0 release notes

2.3.1: Select individual local GPUs

PA and DPD Training and Testing now list each detected NVIDIA GPU by index and name. Select cuda:0, cuda:1, or another available card per run. Jobs on different local GPUs run concurrently; jobs on the same card keep their queue. Validation rejects unavailable indices, and run records and reports identify the selected GPU. Existing JSON configurations remain compatible.

GPU selection guide · 2.3.1 release notes

2.3.0: DPD Arena on APA_200MHz_b

DPD Arena compares DPD configurations through one frozen TRes-GRU PA on the APA_200MHz_b measured dataset: 23 model entries and 233 test cases (83 configurations from 218 fitted checkpoints; the two streaming entries re-evaluate fitted weights). Quality is complete-symbol EVM and actual output ACLR, and the score is a fixed-reference FoM: Q − 5 log10(P/1000) − 5 log10(OPs/2000). Every size uses the same costs; seed variability is shown separately. PA and DPD inputs come only from the original measured capture, which is repartitioned before PA/DPD training to retain complete held-out symbols. PA and neural DPD configurations receive 240 full-window epochs with batch 64. DPD checkpoints are chosen on validation in-band error and worse-side ACLR; final scores use complete-symbol test EVM and output ACLR. Training loads only train/validation arrays, and all checkpoints are frozen before test evaluation. ILC entries are excluded; MP/GMP use training-only PA feedback, without ILC-generated data.

Rank shows a configuration table and four EVM/ACLR-versus-parameters/operations plots with separate Pareto fronts and seed error bars, alongside the PA's parameter count, validation NMSE and test NMSE. Cascade outputs are predictions from the frozen PA, not new predistorted hardware measurements.

Safe backbone templates, classical PA fitting and hosted Arena execution (off by default) are also included. Arena guide · Protocol · Validation record

2.2.18: safer imports, sessions and hosted execution

Validated import metadata and portable paths, transactional experiment imports, single-use desktop login links, bounded NumPy input, safer GPU transfers and per-workspace export caching. Release notes · Security review.

2.2.17: custom waveforms for Virtual PA

Upload a CSV waveform from Signal Generator or PA Library, select its I/Q, complex or real sample columns, and enter the actual sample rate and bandwidth. Import preserves the full capture without normalization, filtering or resampling. Virtual PA produces a paired dataset with the uploaded input’s provenance and simulated output, ready for PA/DPD training. Available locally and in hosted Studio.

Release notes

2.2.16: named datasets and clearer Studio workflows

Signal Generator separates Generate and Preview, with dataset naming and generation at the top of setup. Named input/output collections feed searchable Analyzer and Virtual PA selectors. Dataset pages emphasize model training; navigation, saved-run context, plot legends, dark mode and narrow-screen layouts are clearer. Short DPD captures are checked before training, and comparison plots show the correct signal traces and carrier integration bands.

Release notes

2.2.15: focused training waveforms

Output and reference now appear in separate I and Q charts, with two curves per chart, a short initial sample window and larger legends above the axes. Inputs and baselines remain available through individual signal selection. Completed results use the same view; training spectra have more room.

Release notes

2.2.14: valid-sample ACLR and TRes-GRU defaults

Removes validation/test preview metrics and the artificial spectral leakage caused by padded evaluation tails. The new default protocol uses real samples for training metrics, checkpoint selection and final results. PA/DPD defaults are TRes-GRU with batch size 16. Validation covers NR/Wi-Fi synthetic signals, measured DPA captures and APA at −55.61 dBc carrier ACLR through the trained PA model.

Release notes · Measurement validation

2.2.13: clearer PA output plots

Larger spectrum legends sit above the axes. With/without-DPD predictions are labeled PA model, and the PA output plot explains how the trained model is used. Measured and synthetic dataset curves retain their own labels.

Release notes · Reading signal-chain plots

2.2.12: reliable DeltaGRU CUDA training

Fixes PA training failing when Triton cannot find a C compiler. Local installations continue with PyTorch on the same device; hosted GPU workers include the required toolchain and verify real DeltaGRU forward/backward execution before accepting jobs.

Release notes

2.2.11: matrix presets and automatic PA datasets

Select multiple compact presets by bandwidth, QAM and OFDMA channel count. The catalog contains 1,186 NR, Wi-Fi 6/7 and custom engineering presets, with optional ideal input filtering. Virtual PA simulation now creates the dataset and opens its details in one action. Switch subdatasets to inspect different sample rates and lengths; download a CSV or a ZIP with all captures, metadata and a standalone PA replay script. Wi-Fi 8 generation and the separate pairing step are removed.

Release notes · Preset reference

2.2.10: security and reliability

Faster built-in dataset browsing, resilient worker failures, safe upload cancellation, strict API inputs, explicit Python training arguments and hardened hosted deployment. Desktop dependencies and offline built-in data remain included.

Release notes · Review disposition

2.2.9: signal generation and analysis

Signal Analyzer accepts real or complex CSV and opens generated signals, Virtual PA outputs and dataset captures directly. Configurable PSD, spectrograms, time traces, raw I/Q, CCDF, eyes and aligned reference errors share explicit sample ranges and exportable measurement definitions.

Signal Generator adds Gray-labeled PSK/QAM payloads, PRBS and editable bit sequences, FSK/GFSK, band-limited noise, DFT spreading, burst envelopes, phase jitter and EVM trends. RRC span now means total filter span. Standard presets remain continuous uncoded stimuli.

Release notes · Signal Analyzer · Signal Generator

2.2.8: lighter pages and trial inactivity cleanup

Studio loads tools when you open their page, cancels obsolete reads when you navigate away and polls idle run lists every 30 seconds. Active runs retain their existing live updates. Empty workspaces no longer trigger individual SQLite job-count queries.

During the trial, 2 hours without user activity clears the temporary workspaces created from that IP. Foreground interaction renews the group; background polling and running jobs do not. The top bar shows the earlier of inactivity expiry and the existing scheduled cutoff.

Release notes · Performance measurements · Cleanup details

2.2.7: more workspaces and an automatic waiting room

Hosted capacity grows from 16 to 256 workspaces with up to 1,024 waiting tickets. A full service shows a position and admits visitors automatically. One shared scheduler replaces per-visitor background loops, while GPU jobs keep their own bounded FIFO queue. Workspaces now expire at 11:55 and 23:55 UTC; Server load includes waiting visitors and an explicit End workspace action.

Release notes · Waiting room and cleanup · Capacity validation

2.2.6: server load and stronger isolation

  • Live aggregate CPU, RAM, GPU and queue status, with an active-session estimate and clear stale-data handling.
  • One persistent UTC cleanup timestamp, including a compact mobile layout.
  • Stricter filesystem identifiers and request boundaries, serialized workspace writes, bounded shared analysis and reserved temporary storage.
  • Updated runtime dependencies and GPU image, with dependency audits in CI.

Release notes · Server load · Security review

2.2.5: ILC, interactive LaTeX and simpler installation

  • ILC + ILA DPD with a separate waveform-specific Ideal test reference, configurable bounds and convergence evidence.
  • LaTeX Virtual PA equations with linked controls, and LaTeX metric definitions.
  • Shared/per-channel OFDMA controls, explicit-only input generation and reversible input removal.
  • Next-step controls above settings; clearer metric calculation labels; About without GitHub activity.
  • Default PyTorch/Studio/pywebview dependencies, uv environment instructions, MPS selection and clearer localhost/SSH diagnostics.

Release notes · Installation · ILC guide

2.2.4: Virtual PA Library and signal-chain PSD views

Signal Generator exports input-only I/Q. PA Library provides nine mathematical Virtual PAs, parameter-linked formulas, explicit output simulation and paired dataset creation. The expandable workflow diagram separates dataset making from PA/DPD model training and recognizes existing paired datasets.

PSD views now separate DPD input, DPD output / PA input, and PA output throughout inspection, live previews, results, comparisons and exported figures/reports. Compact legends retain synthetic/measured provenance, output baselines remain together, and saved views preserve per-position zoom.

Release notes · PA Library · Signal-chain spectra

2.2.3: Signal Generator and research workflows

Start with Signal Generator, an existing dataset or your own CSV. PA Model and DPD Model each bring training and testing together, with exact test-set I/Q counts. The generator combines twenty presets, advanced waveform controls, signal plots and metrics, exact I/Q export and synthetic PA datasets. The standards-based presets are uncoded engineering stimuli; Wi-Fi 8 remains experimental.

Local Studio adds research review, saved publication figures, full reproduction bundles, measurement sessions, condition sweeps, qualified hardware costs and optional dataset PRs that await human review. See the 2.2.3 release notes, generator guide and research review guide.

2.2: OpenDPD Studio

Studio provides a packaged desktop/browser workbench with guided PA and DPD experiments, live plots and terminals, reusable configurations, result comparisons and export packages. CSV upload, shared hosted CUDA compute and checkpoint downloads are available. Version 2.2.1 improved training speed; 2.2.2 added bug reporting from Studio.

Install Studio or start with the walkthrough. Verification evidence is tracked in the support matrix.

2.1: visualization

The original CLI and Python API gained per-epoch figures, animated GIFs, a training dashboard, training curves and without/with-DPD comparison plots. The visualization guide is the maintained reference for commands and options.

Research generations: OpenDPDv1 and OpenDPDv2

The research names below describe algorithms and their paper experiments; they are separate from the Python package's release number. The performance values are historical paper results under their respective settings, not a ranking of every model available in Studio. See the benchmark for comparable evidence and the reproduction guide for scripts.

OpenDPDv2 embeds a new temporal residual (TRes)-DeltaGRU NN DPD algorithm and a new TM3.1a 5-channel x 40 MHz (200 MHz) test signal dataset, measured from a 3.5 GHz Ampleon GaN PA at 41.5 dBm average output power, named APA_200MHz, enabling fast prototyping of accurate and power-efficient NN-based DPD algorithms by streamlining learning and optimization through DPD quantization and temporal sparsity exploitation.

Version Related Papers Dataset Supported Backbones Performance
on APA_200MHz
OpenDPDv1 Algorithms
paper
paper
paper
paper
Hardware paper
paper
Collected from a 40nm CMOS DTX @ 2.4 GHz
DPA_100MHz,
DPA_160MHz,
DPA_200MHz
GRU,
LSTM,
GMP,
RVTDCNN,
VDLSTM,
DGRU,
TCN
DGRU with 1041 params:
ACPR of -58.4 dBc,
EVM of -39.1 dB
OpenDPDv2 paper Collected from a GaN Doherty @ 3.5 GHz
APA_200MHz,
APA_200MHz_b
PGJANET,
DVRJANET,
TRes-DeltaGRU
TRes-DeltaGRU with 996 params:
ACPR of -59.4 dBc,
EVM of -42.1 dB
Experiment code paperpaper Controlling,
I/Q data upload/download MATLAB code
Rohde & Schwarz SMW200A,
Keysight N9042B,
Matlab/.m