Page 1 of 1

Entropy gathering with SDR

Posted: Wed Jan 15, 2014 2:48 am
by pwarren
Hi all,

With a kind donation of hardware from Nuand, I've updated my rtl-entropy code to include a brf_entropy program. It's available as GPLv3 code at

Currently, I'm using the bladrf_rx() function, and it works well on USB2 ports providing around 14 MBits/s of entropy.

On USB 3 ports I get libusb errors:

Code: Select all

[ERROR] Error reading samples (-1): LIBUSB_ERROR_IO
Failed to read samples: File or device I/O failure
I'm not sure if that's my code, a problem with my setup, or a bladerf library bug :)

Other apps that use bladerf_stream() to get the data (such as gqrx/osmo_fft) work ok on my USB3 ports, and I'm attempting to recall my threading and async programming stuff to use that function in brf_entropy :)

Hope it's useful!

Re: Entropy gathering with SDR

Posted: Tue Jan 21, 2014 9:52 pm
by pwarren
Well, I've made a release that uses the bladerf_stream() call, and it goes a bit faster, at ~20Mbits/s of entropy and works fine with USB3 ports.

Over the next few weeks, I'll be refactoring to make things a bit more modular, and hopefully improve the performance!

Code available at:

Release at:

And I also set up a website with mailing lists at:

Have fun :)