SDRIO: A hardware abstraction layer for SDR devices

Discussions related to embedded firmware, driver, and user mode application software development
Post Reply
spcutler
Posts: 28
Joined: Fri Mar 01, 2013 3:12 am

SDRIO: A hardware abstraction layer for SDR devices

Post by spcutler »

In the course of various development efforts, I found the need for a SDR hardware abstraction layer that went beyond the capabilities of ExtIO (the only other abstraction layer I know of). Specifically, I wanted transmit support, as well as better handling for gain and other controls.

I call what I came up with SDRIO. It's a C API, LGPL licensed. I currently support RTL-SDR, Funcube Dongle, and bladeRF (of course, only bladeRF has TX support). It is currently Windows-only, though the API is OS-agnostic and it should not be difficult to port to other systems.

The code and a binary build is available here:
https://github.com/spcutler/SDRIO

I have worked with the RTL-SDR developers to ensure that the library may legally be used by non-GPL programs. The SDRIO library as a whole is LGPL licensed, but certain parts (specifically the SDRIO_RTLSDR module) must be considered true GPL since it references GPL code. The SDRIO_RTLSDR module must therefore not be bundled with non-GPL software (or even auto-downloaded), though as long as SDRIO is installed separately there is no problem. The SDRIO_bladeRF and SDRIO_FUNcube modules do not have this problem.

Let me know if you have questions! I plan on adding additional HW support as soon as I get my hands on more devices.
cwiener
Posts: 11
Joined: Sat Mar 15, 2014 4:52 pm

Re: SDRIO: A hardware abstraction layer for SDR devices

Post by cwiener »

Are there any programs which currently support this API?
Chris Wiener N2CR
Morris Plains, NJ
spcutler
Posts: 28
Joined: Fri Mar 01, 2013 3:12 am

Re: SDRIO: A hardware abstraction layer for SDR devices

Post by spcutler »

Just one, so far: my program SeeDeR, still in beta, which you can get here.

I've recently added Mirics MSi3103 chipset support.
Post Reply