element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products & Partners
    Products & Partners
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
RoadTests & Reviews
  • Products & Partners
  • More
RoadTests & Reviews
Review Blogs Blog 5 – Software defined radio with the Red Pitaya STEMlab 125-14 PRO Gen 2
  • Blogs
  • Forum
  • Documents
  • RoadTests
  • Reviews
  • Polls
  • Files
  • Members
  • Sub-Groups
  • More
  • Cancel
  • New
Join RoadTests & Reviews to participate - click to join for free!
  • Share
  • More
  • Cancel
  • Author Author: obones
  • Date Created: 30 Oct 2026 5:00 PM Date Created
  • Views 98 views
  • Likes 5 likes
  • Comments 9 comments
Related
Recommended
  • RoadTest
  • red pitaya

Blog 5 – Software defined radio with the Red Pitaya STEMlab 125-14 PRO Gen 2

obones
obones
30 Oct 2026

Before applying for this roadtest, I read the documentation, in particular the sections related to SDR as it’s one of my pet peeves.

What I found is that the SDR applications are imported from a dedicated developer named Pavel Demin who is offering their work on GitHub here: https://github.com/pavel-demin/red-pitaya-notes

One of these applications, SDR receiver (https://pavel-demin.github.io/red-pitaya-notes/sdr-receiver/), announces these features:

The tunable frequency range covers from 0 Hz to 490 MHz.

Which is right into my usual 433.92MHz ballpark that I listen to with my RTLSDR Blog dongle and tools like SDR# and rtl_433.

This is why I said in my application that I would deeply test the SDR parts, both visually and using rtl_433.

One thing that I did not anticipate is that not all SDR apps offer the same tunable frequency and that the one discovered above is actually NOT present on the SD card image.

The communication between the software and the RedPitaya happens over the TCP/IP link and as such needs a standard protocol application. I went with the one I know best, which is Soapy.

The required support files are installed on Windows via PothosSDR which offers a very versatile platform for testing all things SDR related.

The most basic one is creating a waterfall visualization:

image

One thing that I noted is that PothosSDR keeps sending error messages in its log pane, complaining about SDR Play service being missing. Thing is, I don’t own a SDR Play device, so I don’t need to install any of their support software, but I sill don’t want to see all those error messages. The solution is to rename/remove the sdrPlaySupport.dll file in the Pothos SDR installation folder (C:\Program Files\PothosSDR\lib\SoapySDR\)

To find out which values to use for the device parameters, one has to use the SoapySDRUtil.exe binary from the bin folder like so:

SoapySDRUtil.exe --args="driver=redpitaya,addr=1.2.3.4" --rate=1250000 --direction=RX

If this gives you samples at near the required rate, you are all setup.

But another strange thing is that the Sps field in Pothos could not go above 125000 when the command line clearly allows for more!

The next step was to use rtl_433 which required downloading the specific “Soapy enabled” version from the project releases and placing it inside the PothosSDR bin folder.

You can use the same device string as before with rtl_433 like so:

rtl_433-rtlsdr-soapysdr.exe -d driver=redpitaya,addr=1.2.3.4 -f 40000000 -Y classic -s 125000 -vv

You will notice that one must use the IP address because none of these programs are actually mDNS enabled. The easiest method to get the address from the name, is to simply ping it:

ping -4 rp1234.local

Sadly, initial tests did not work because the RedPitaya Soapy plugin only supports CF32 format where CU8 is the one expected as discussed here: https://github.com/merbanan/rtl_433/discussions/3701

Converters appear not to kick in, so it was suggested to use SoapyRemote with a split approach:

In a first window, start

SoapySDRServer.exe --bind=127.0.0.1

In a second one, start the test command line:

SoapySDRUtil.exe --args=" driver=remote,remote=127.0.0.1, remote:driver=redpitaya, remote:addr=10.10.10.165" --rate=1250000 --direction=RX

If that works, move to rtl_433:

rtl_433-rtlsdr-soapysdr.exe -d driver=remote,remote=127.0.0.1,remote:driver=redpitaya,remote:addr=1.2.3.4

Sadly, this did not help either because it all comes down to the fact that the RedPitaya SDR Soapy module only advertises and supports the CF32 format for the I/Q stream, when rtl_433 did not know what to do with it.

The rtl_433 author was kind enough to create the needed patch and it now accepts the CF32 format just fine. It just needed refinement with the real device at hand, as it seems the Soapy driver immediately returns when the buffers are empty, instead of respecting the configured timeout. That patch has been submitted for review and might land in the future.

However, no signal could be seen which I suppose is due to the 60MHz maximum frequency which is way lower than the default 433.92MHz frequency for rtl_433.

I thus ordered a MB506 frequency divider eval board so that I could “bring” the frequency of interest down into the RP supported range. Note that I would have preferred a “divide by 8” setup but the MB506 was the only one coming up at a reasonable price. 433.92 divided 64 gives 6.78 so this is the frequency to use later on.

As this board needs a +5V supply, I looked at the documentation for the E1 and E2 connectors, and sure enough, there is such a power source here. However, the diagram inside the documentation is of so poor quality that I had to double check the signals position:

image

Even a Teensy++ 2.0 documentation that dates from over 10 years ago is better at aligning pin descriptions:

image

 Once hooked up, there is something else that is also missing from the documentation: the recommended LV or HV jumper position. I mean, how do I know what’s needed here?

The MB506 datasheet talks about 1.6V peak to peak so I guess it’s HV but if I was not to use that board, what value could I expect from a regular antenna?

Here is the setup that I ended up with:

image

And using PothosFlow, here is what I see every time I press the transmit button on the temperature sensor:

image

So, it seems there is something perceived by the SDR part, but sadly, this is not picked up by rtl_433, which is most likely because its too distorted. Note that I tried with LV and HV, the LV setting gives a stronger “color” on the graph but no change from rtl_433 point of view.
It does not come as a big surprise as it was hinted to me that the MB506 chip acts on the strongest signal it sees in its range, which in my case might well be the zigbee or wifi networks used in the house. I would thus need to add a passband filter in front of it, which, well, is a bit illogical if one is aiming at using an SDR that should do all this in software. At least now, I have RMA connectors!

I will not describe transmit here because colporteur already did it just fine, and also because its max frequency is 60MHz which once again is totally not usable for me. I understand that with a 125MHz core, it can only recreate up to 62.5MHz signals (Nyquist/Shannon laws) but that’s not suitable for my original intent of emitting on 433MHz to see if I could overcome my own legitimate sensors.
One thing that should be doable is to have an external carrier frequency generator, and use the signal from the RedPitaya to modulate that carrier. But what’s the point of a SDR if you have to process the signal with external addons?


This blog is part of 7-part series for my Red Pitaya STEMlab 125-14 PRO Gen 2 Starter Kit roadtest:

Blog 1 – Unboxing the Red Pitaya STEMlab 125-14 PRO Gen 2 Starter Kit
Blog 2 – First contact with the Red Pitaya STEMlab 125-14 PRO Gen 2
Blog 3 – Oscilloscope application in the Red Pitaya STEMlab 125-14 PRO Gen 2
Blog 4 – Logic analyzer application in the Red Pitaya STEMlab 125-14 PRO Gen 2
Blog 5 – Software defined radio with the Red Pitaya STEMlab 125-14 PRO Gen 2
Blog 6 – Developing for the Red Pitaya STEMlab 125-14 PRO Gen 2
Red Pitaya STEMlab 125-14 PRO Gen 2 roadtest report

  • Sign in to reply
  • shabaz
    shabaz 1 day ago in reply to shabaz

    Thinking about it more.. in theory a CC1101 could be used as a frequency generator : ) It can be programmed to generate a continuous tone in the region of 400 MHz. I think it might be the cheapest way to get a decent signal in that frequency ballpark (the modules are extremely low-cost). 

    Or, perhaps even better, CMT2300A looks super interesting. I'm tempted to try to obtain a few CMT2300A, just to experiment for other purposes.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • shabaz
    shabaz 1 day ago

    I find all the SDR apps to be pretty low quality and badly documented : ( Pothos SDR doesn't have any documentation regarding what each block does (and not all are intuitive) plus the UI could be better. I never look forward to using any SDR as a result, but it's a necessary evil sometimes, especially when needed for reverse-engineering radio protocols. If you know the modulation (or are willing to spend time experimenting), then it's a lot easier to use something like CC1101 instead of an SDR device, but that of course isn't helpful if you're actually trying to review the SDR itself of course.

    Regarding the down-conversion, I think the frequency divider would be very difficult to get success with, it's a lot easier with a mixer (and a frequency generator source of some kind to drive it). A DIY mixer would work really well (NE602 would have been awesome but it's very obsolete, but there are some other possibilities), but you'd still need the 400 MHz-ish signal generation (I can't think of an easy solution for that, other than an off-the-shelf generator or module [or could use a diy oscillator and live with the drift]). 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • DAB
    DAB 2 days ago

    Nice update.

    I like your persistence.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Qbit
    Qbit 3 days ago

    Great deep-dive into the SDR capabilities and limitations of the Red Pitaya! It's impressive to see how you systematically tracked down the format mismatch issues with rtl_433 and the CF32 stream handling.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
<
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube