RF product - moRFeus - frequency converter and signal generator



You are welcome to use the windows binary :slight_smile:

The links are provided for python 3.6 :

Download PyQt4`
My bad,that link expired.

Here is the page for PyQt : https://www.lfd.uci.edu/~gohlke/pythonlibs/

Please search PyQt4 :

that installs with pip3 install --user PyQt4-4.11.4-cp36-cp36m-win_amd64.whl

Thanks for the report



Good morning chaps

I yesterday got a Mac book pro to play with…

The cython hidapi that I am using in my tool, should work on Mac OS along with a upgraded Qt from v4 - v5.


The API works on Mac :sunny: :nerd_face:

I am in the process of implementing the required steps and UI to make it go.




I also finished my python implementation. It’s not a wrapper for the binaries provided by Abhishek, it uses the hid library available for Mac, Linux and Win (Installing the library can be a pain though). It has all the functionality the original binaries has plus a sweeper function. The program has been tested on MAC with High Sierra. It should work on Windows too if you add an additional byte when sending the command to the device. Haven’t tested it on Linux, (maybe someone can do that?). My motivation was that I could do much faster sweeps than with a shell script, but unfortunately the device needs quite a lot of time to set the frequency. Imagine what you could do with a fast conversation time (FSK etc).

To Do: Starting it via command line parameters.

I am a lousy coder, so be lenient :slight_smile:

You can download it here: moRFeus.py


Correct - the PLL has to re-lock for each frequency, so fast frequency switches are not possible.


I will use my ARBitrary function generator to make my FM, my sweeps, etc. and use moRFeus as a mixer to bring it up to microwave. I will let moRFeus do the coarse tuning. That will all work fine from there.

–Konrad, WA4OSH


Hi Bruno,
Your code looks very clear :clap:
I tried to run your script on RPi, but also stuck with HID error message. I’m still unlucky with HID on RPi.
FYI I’m using PyUSB module on RPi. Works well. Example for morse_code.py
Tomorrow I’ll try to reinstall Ohan’s GUI and your script on a fresh SDRAM (like every 3 days.)


HI, we all know moRFeus is not designed for fast sweeping ! It’s a single carrier, not modulated. And I’m sure the LCD may also slower the process :wink:
That’s why staying with official tools seems enough for me.
And keep in my mind you have to take “samples” during a “not-so-short” period time if you want to get accurate value of the signal sent by moRFeus.



So i made some major overhauls.

The process of installation and use has been simplified tenfold.

It also just works on a Mac

So that’s all major platforms that can now effortlessly talk to moRFeus.




Hi guys (and girls), summer time here but great moRFeus workshop last night (and the hight before) !
Using moRFeus generator as RF source to test devices. Result seems coherent.

Setup : moRFeus as step-generator sync to GQRX. Grabing signal level from GQRX through remote control. Step is 1MHz, duration 20 minutes… Then generate CSV file, and
plot it using GNUplot. Bash and GNUplot only.

Edit 08-june : : rtl-sdr.com blog published yesterday a very nice and detailed article explaining step by step how to measure filters and antenna performances with moRFeus running as generator.


you made a cheap scalar analyzer if I’m right, really nice! :+1::sunglasses:


Hi, just a quick update, seems we have newcomers on moRFeus/Outernet world (even from my area), welcome :grinning:

I released few days ago moRFeus_listener on github. I have to say it was initially scheduled for next 18th of June :wink:

Hard to describe in few words… let’s say it’s a basic CLI to control moRFeus from shell or remotely from network using a telnet connection. Several connection allowed at the same time.
Here in my place moRFeus-listener is running on background on my RPi and I can control moRFeus from my other computers, or using scripting.

Live (and quick) preview on real moRFeus device : telnet morfeus.lamableu.net port 7778
moRFeus status : http://morfeus.lamableu.net:7780

Just 400 lines of code, including readme.txt


On mode 1,it tried to enter thé following frequency:5760MHZ
And I got :Frequency out of range
What is the real frequency range of MorFeus as frequency generator mode ?


LO Frequency: 85MHz–5400MHz


Hi, I’m new here. I don’t have an RF background or training so go easy on me. I just received the really nice MoRFeus device that I ordered recently. The first thing I tried was to try and receive some sats on S-Band (2,200 to 2,300 MHz). I hooked up an omni helical antenna, suitable LNA and a bandpass filter for that band… then to an AirspyR2 via the MoRFeus. I set the LO to 1 Ghz and tried different Mixer Current figures (whatever they are ?). I get nothing but spurious signals slipping and sliding all over the place. Just when I see a ‘signal’ with a little ‘doppler’, thinking it’s a LEO sat… off it goes in the other direction :). I have a list of S-Band sats in my tracking program so I can see what ‘should’ be popping up. A little advice, a tutorial or video on this sort of usage would be much appreciated.
Many thanks.


E.g. Satellite 1
Fo = 2250 MHz (hypothetical)
IF = 1000 MHZ (hypothetical)
LO = 2250-1000 MHz = 1250 MHz

F1 in RTL/SDR = 1000 MHz

Ant --> LNA --> BP Filter --> Mixer —> LNA? —> IF Filter? --> RTL/SDR

You actually want to set your IF frequency at a constant so you can use a bandpass filter in your IF. The narrower, the better selectivity.

Remember, the mixer wants a pretty strong signal and will have a conversion loss. So you will need to set your LO gain appropriately to your RTL/SDR input. The RTL/SDR has a pretty sensitive receiver, but you can use an IF amp and IF filter to improve image rejection and selectivity.

Keep in mind your RTL/SDR runs out of poop right above 1500 MHz. So keep your IF low and let the mixer do the work for you.

By the way, your signal is not inverted, so as the satellite approaches, the doppler causes a higher frequency and then as the satellite flies over, it will “swish” over to a lower frequency (by the doppler shift).

–Konrad, WA4OSH


Thanks Konrad,

I’m using SDR# software with an AirSpyR2 (rx up to 1800 MHz).
I have the LO in the morfeus set to 1GHz (Does this shift the actual rx frequency both up and down by 1GHz ?) and also the ‘Shift’ in SDR# to 1GHz (so I ‘see’ the actual rx frequency on screen, instead of seeing say… 1,220 MHz when I’m actually rxing 2,220 MHz).

I can rx Inmarsat signals (and others) using the same LNA (it’s designed for 1.5 to 2.5 GHz approx) with an L-Band BPF pretty well… so, are the conversion losses in the morfeus such that a second LNA and BPF is needed ?

What exactly is the Mixer Current setting ?.. is it similar (in lay man’s terms) to ‘gain’ ?

I told you I’m an RF novice :).



From the spec sheet:
Continuous 24 – 1700 MHz native RX range, down to DC with the SpyVerter option
3.5 dB NF between 42 and 1002 MHz <–

Notice that RTL-SDRs get worse as frequency increases. The noise figure increases and the sensitivity decreases. Keep your IF at 1000 MHz or below.

The first thing I tried was to try and receive some sats on S-Band (2,200 to 2,300 MHz).

So if you want to tune at 2,200 to 2,300 MHz, and your IF is at 1,000 MHz, then your LO has to be from 1,200 to 1,300 MHz. Fin - LO = IF

Yes … But you really want to set your LO higher to 1200-1300 MHz so that you can get a better noise figure with your RTL-SDR.

Yes, exactly. Set the shift in your SDR# to match where you set your LO.

Yes, frequency conversion is not free. It typically cost you 15-20 dB. All mixers have conversion losses.

Try what you have. But if you want to improve your receiver, you want to narrow your IF. By filtering out signals you don’t want to hear, you can further improve your signal to noise.

10 MHz panoramic spectrum view with up to 9MHz alias/image free

If you can really only use a spectrum view of up to 9MHz,

I used 1000 MHz as the IF so that you would follow the math. So for example, an IF of 1090 MHz would allow you to use readily available SAW filter/LNA combinations available online. The RTL-SDR has a built-in LNA. You will want to trim that gain adjustment so that the A to D converter operates in the middle of ifs dynamic range.


Try figures in the middle.

I enjoy sharing things I know. I learn from listening to others.



Just an idea… make sure the power your lna matches what the moRFeus provides.

from the user guide:
Bias option. “ON” enables a [email protected] max DC
current to be supplied to the mixer input for powering active antennas, etc.


I made the same test 2 weeks ago. Same result.
Trying to get Inmarsat signal through moRFeus, using well tested devices on L-Band.
BtW, I know I don’t need to use moRFeus to receive Inmarsat signal :rofl:
Setting IF first to 1.000 MHz. No signal. I tried different settings, nothing.
As @Konrad_Roeder explained, with have a big loss, at least 20 dB in the downconverting process. Perhaps filtering may help.
Using local sources, or strong signals, the moRFeus mixer mode is working as expected.

You also have to know moRFeus bias-tee doesn’t drain enough power for Outernet active antenna patch.


ac8dg… My LNA requires 12V so I am using my own bias-T to power it, I have the moRFeus bias-T turned OFF. I don’t think the ‘Mixer Current’ has anything to do with the power being supplied to an LNA via the in-built bias-T. As I understand it it’s similar to an internal gain control… similar to what is present in RTL-SDRs and AirSpy etc. and controlled by a software slider control.

LamaBleu… My test setup is a 4 turn helix circa 2GHz, on a circular aluminium base approx 20cm diameter, an EME103B LNA (L and S Band) and approx 1 meter of coax cable. The antenna is resting outside on the window sill facing anywhere between 70 and 200 degrees. With that setup and the moRFeus not involved, I can receive very easily many inmarsat (and iridium) signals very well. The 4 prominent I-4F4 (Alphasat) Aero-I signals around 1545.125 MHz I get at approx 28db signal strength in SDR#.
When I introduce the moRFeus with a Freq of 1 GHz set, I can rx these channels quite OK (on 545.125 MHz)… so… the moRFeus is working fine (signal strength is down about a 1/4 to 1/2 depending on the Freq set in the moRFeus). I leave the mixer current setting at ‘2’. This also works for the iridium band on 1620 MHz. But I have yet to receive anything on S-Band.
I’ve been reliably told that the WGS-3 GEO satellite at 12degW should be booming in on my setup… but I get nothing. I have a list of LEO sats in my sat tracking program and listened for may of those so far… nothing. I’ve tried this with and without a BPF for 2170-2380 MHz, tried many different Freq settings but still nothing. I’ll keep trying :slight_smile: