C/C++ embedded code is probably the way you would go… 

But – before you start the journey – consider that fine tuning, debugging, understanding third-party libraries, testing DSP algorithms is the kind of dirty job we would love to do for you

RADIO hardware simplified

Beside the support of the SoapySDR API, we have native drivers for the LimeSDR, BladeRF families. Get in touch with us to have your own hardware supported.

memory management simplified

Automatic Garbage collection for all the data you store in the RAM. Stop looking for memory leaks.

GPU offloading

Automatic calls to GPU kernels when data size is big enough to have a significant gain.

Most of the CPU consuming functions are implemented both in plain C/C++ and CUDA with automatic decision (when GPU is available)

dsp toolboxes

Ready-to-use and optimized functions for the s typical uses cases (DDC, FIR, Spectrum,  Matched Filter, Statistics, satellite orbit prediction, …).

We will be happy to extend our DSP core with your needs if required.

Frequently Asked Questions about the SDR Virtual Machine

The SDR Virtual Machine

The virtual machine uses an embeddable Javascript engine, where CPU consuming functions are implemented in plain C/C++/CUDA code. This engine is then linked with different applications depending on the use-cases : as a Linux service (codenamed vmservice) for embedded devices or as a command-line application (codenamed sdrvm). The SDK also comes with an Integrated Development Environment (codename vmcli).

Licencing model

The basic licensing cost is a fee per running platform. Of course we have specific prices for large quantities, keeping in mind that at the end of the day the business model is to reduce your time to market and development costs. Get in touch with us to discuss your requirements.

Supported platforms

Our code is a plain C++ application targeting Linux platforms. We do have ready to use binary versions for x86 64 bits platforms, ARM 64 bits and NVIDIA Jetson family processors (TX2, Nano, Xavier NX) , or NVIDIA GPU boards (supporting CUDA 9 and above). We do support a wide range of systems, from the RPI like systems to high-end X86 servers with multiple NVIDIA GPU accelerators.

Source code

Basic licences do not come with source code. Our work is not released in the public domain as Open Source code. You can get a fully working copy of the source code if your business requires it, under specific conditions.

Get in touch with us for more details.

Learn more

Because examples are worth a thousands words, here are some examples from our cookbook

Receiving multiple subchannels from the same SDR device is simplified by using our GPU DDC Bank able to process several tens of Digital Down Converters simultaneously
Message passing between tasks The SDR Virtual Machine […]