The Open Source OVI-40 SDR Transceiver

Thanks to various contributors for letting us know about the OVI-40, a new open source DIY SDR ham radio transceiver project that is now available for ordering. The OVI-40 appears to be a German project that is based on the mcHF transceiver. It is a standalone SDR transceiver (no PC required) with a frequency range of DC - 75 MHz. Most discussion appears to be happening in German on their forums, so it is a little difficult to get English information about it.

The kit has recently been released for preorder. The transceiver is a kit involving SMD soldering, but can be ordered fully soldered for 202 Euros (~$240 US) + taxes. The LCD screen is an additional 24 - 27 Euros. The kit without soldering done costs 112 Euros (~$132 US) + taxes.

The advertised details and specs are listed below:

OVI40-SDR is a transceiver which covers VLF...75MHz. It is mainly a DIY project - but all PCBs will also be available as soldered, aligned / programmed PCBs for all those, who do not have the skill to build a complex SMD project by themself or do not want it. OVI40-SDR will also be available as "only RX" and can be expanded with TX stages later.

Developer team takes inspirations from all existing commercial and DIY projects to get a SDR which combines possibly the best of all of them. But OVI40-SDR is not only a TRX - it is a philosophy. A community based working together, regardless of different countries, languages, religions, political systems - all are working together to get a very nice transceiver for themselfes and for others who are coming to the project later - wants to show, what people can reach if they are working together and do not struggle against each other. HAM radio always has connected the world - using the possibilities of the internet adds much more power for community working.

  • RX from VLF (~ a few KHz) ... 4m, possibly 2m Including
  • TX 160m ... 4m: 50W, 2200m, 630m and 4m (2m if Implemented): 10 ... 20mW SMA Out
  • continuosly tuned preselection
  • PA works using double LDMOSFET, independent BIAS adjusted. BIAS is internally Measured via A / D and can be set in menu Directly in [mA].
  • TX and RX mixer with very low capacity to minimize LO leakage
  • true RX QSD mixer using instrumental amplifiers
  • all internal Voltages (8V, 5V) are generated using well-shielded switching regulators. Additionally switching frequency is shifted via firmware so that never harmonics are present in the RX spectrum
  • included hardware for measuring antenna (sweep) using logarithmic amplifier
  • output of an independent selectable rf to SMA plug. I am experimenting to use this as a beacon WSPR Which can run parallel to radio
  • usage as possible network analyzer
The OVI-40 Kit Assembled
The OVI-40 Kit Assembled

RFSim99 for Modern Windows Versions: Free RF Simulation Tool

RFSim99 is an old but still very useful piece of free software for designing and simulating RF circuits such as filters, attenuators, matching circuits, RF components with S-parameters and so on. It is not a high end tool, but is more than good enough for hobbyist and ham level designs.

One issue up until recently with RFSim99 was that it was so old that it would only run on Windows XP computers. To run on a modern PC you needed to use a virtual machine, or the Windows built in XP emulation, which was only available on Professional/Ultimate Windows versions and has since been discontinued in Windows 10.

However, we have just found AD5GG's blog where earlier in the year he posted a standalone version that actually works in modern Windows versions (7, 8, 10) without the need for any virtual machines.

RFSim99 is fairly simple to learn. Just place down two measurement ports (in/out) and lay down your RF components on the grid. Then connect them up with a wire and place grounds. Click on the simulate button to see a graph of the response and return loss. There are even built in calculators in the Tools menu which can automatically design and simulate filters for you.

Designing a simple filter in RFSim99
Designing a simple filter in RFSim99

XTRX SDR Campaign Now Live: Mini PCIE Based TX/RX SDR for $199

Back in early November we posted about the upcoming XTRX SDR, which is a small form factor 2 x 2 MIMO TX and RX capable SDR that is designed to fit into laptop Mini PCIE card slots. It is based on the LimeSDR RF chips, and has a tuning range of 10 MHz - 3.7 GHz, with a sample rate of up to 120 MSPS. It is also has some interesting additional features such as a built in GPSDO and an onboard FPGA which can be used to accelerate DSP tasks as well. The Mini PCIE interface was chosen for it's low latency transfer rates.

The card is designed for use cases such as creating LTE cellular networks, creating software defined 2G/3G/4G modems and using on board drones and in embedded systems. It can also be used for standard wideband monitoring and of course any other SDR applications compatible with Lime chips.

Today the crowdfunding campaign for the XTRX has begun. The early bird pricing is $179 USD (with 71 left at the time of this post - going down fast!), and the regular price is $199 USD. There are accessories available as well such as antenna and cable kits, a PCIe x2 adapter and a USB 3.0 adapter kit with enclosure. The XTRX team are hoping to raise 90k USD, with already 8k USD having been raised at the time of this post.

The XTRX Board
The XTRX Board

Exploring Vulnerabilities in Tire Pressure Monitoring Systems (TPMS) with a HackRF

Over on YouTube the channel "Lead Cyber Solutions" has uploaded a video presentation for the Cyber Skills Competition. In the video Christopher Flatley, James Pak and Thomas Vaccaro discuss a man-in-the-middle attack that can be performed on vehicle Tire Pressure Monitoring Systems (TPMS) with a transmit capable SDR such as a HackRF.

A TPMS system consists of small battery powered wireless sensors placed on a vehicles wheels which automatically monitor tire pressure. An LCD basestation usually exists on the dashboard of the car indicating live tire pressure. Most modern cars come with this feature, and it is simple to retrofit an older car with an aftermarket TPMS system.

The idea behind the vulnerability is that a HackRF can be used to reverse engineer the TMPS signal, and then re-transmit a new fake signal that causes the base station to read the tire pressure as low. This can set off an alarm in the car and possibly cause someone to pull over. More alarmingly, they discuss how tractors have automatic tire inflation systems which work using similar sensors. A false low pressure reading could cause the tractor tires to over inflate and be damaged.

Vulnerabilities in Vehicle TPMS (Exploit & Hacking)

In the past we have also posted about Jared Boon's work on TPMS where he shows how privacy could be breached by monitoring and tracking TPMS identifiers.

Testing out SDRAngel with an RTL-SDR

SDRAngel is a general purpose SDR program similar to other programs like SDR#, HDSDR and SDR-Console. It is compatible with Windows and Linux systems. However, SDRAngel has certain features that make it a good program to have in your SDR software arsenal.

One good feature is that if you have a TX capable SDR like a HackRF, PlutoSDR, BladeRF or LimeSDR then SDRAngel can also be used for TXing. Marty Wittrock has done a lot of previous work figuring out how to TX with LimeSDR and SDRAngel.

If you're only interested in RXing then SDRAngel also has some convenient features such as a built in DSD decoder which can be used to easily decode DMR/MOTOTRBO, dPMR, D-STAR and Yaesu System Fusion (YSF). The decoder is based on the DSDcc library which is a complete rewrite of the original open source DSD software.  It is not quite as developed and feature rich as DSD+, but still does the job decently. SDRAngel also has LoRa and analogue TV (ATV) decoders built in as well, although the ATV decoder kept crashing the software for us.

SDRAngel also supports multiple VFO's on the same bandwidth, has built in decimation, a nice phosphor effect RF spectrum display and a frequency manager. There is also the ability to run multiple SDRs in the same software instance at the same time.

We gave SDRAngel a try on Windows and were able to easily get it up and running with an RTL-SDR. Regular WFM, FM, AM, SSB etc modes all work fine and so does the DSD decoder which we tested on a DMR signal. Getting it to decode was extremely simple, just add a DSD Demodulator channel, then click on the signal and you should be instantly decoding. It is probably the easiest way to get started on decoding a non-trunking digital voice channel, but for trunking channels and P25 signals you should probably still use Unitrunker and DSD+ or SDRTrunk.

SDRAngel Screenshot
SDRAngel Screenshot

Below is a brief tutorial on getting up an running with SDRAngel on Windows with an RTL-SDR:

  1. Download the latest version of SDRAngel from the releases section of the GitHub. Only a build for Windows x64 is available and this has the filename sdrangel64_v3.8.4.7z (version number may change in the future). Linux .deb files are also available for various Ubuntu versions.
     
  2. Using 7zip, extract the 7z file to a folder on your PC.
     
  3. Plug in your RTL-SDR dongle, and run sdrangel.exe. We assume zadig has already been previously run to install the RTL-SDR drivers.
     
  4. On the left under 'sampling devices control' click on the small hand icon. A drop down box will pop up, and from here you should be able to select the RTL-SDR. Press ok.
     
  5. Now you can click the green play button on the top left to start the SDR.
     
  6. By default the display bandwidth is zoomed in very closely with x16 decimation and a sample rate of 1 MSPS. So in the top left box change "Dec" to 1, and increase the sample rate to 2 or 2.4 MSPS if you like.
     
  7. We suggest also clicking on the 'DC' button in the top left to remove the DC spike.
     
  8. Now you can tune around just like in other software by using the frequency numbers in the top left.
  9. If you want a spectrum analyzer display, go to the bottom left box, and click on the blue spectrum icon.
     
  10. Unlike most other software you need to add a demodulator first before you can click on a signal and listen to it. The list of available demodulators can be found in the second box on the left, just below the hand icon which you used to add the RTL-SDR.
     
  11. Select the correct demodulator for your signal of interest (e.g. WFM, NFM, AM, DSD, LoRa etc...), and then click the "+" icon. This will add the demodulator to the right of the SDRAngel window. You may want to drag the right window a little large if you cannot see all of the demodulator option as well.
     
  12. Now you can click on the signal in the spectrum window to move the VFO and begin demodulating the signal. You can explore the demodulator options on the right.
     
  13. Multiple demodulators can be added if desired, just repeat steps 8 - 10. If you add more than one demodulator, the VFO's will need to be dragged.
     
  14. If you're having trouble getting a digital voice signal with DSD to be recognized, try zooming in with the decimation feature or reducing the sample rate. It doesn't seem to work too well with higher bandwidths.

Leif Compares various SDRs including the RSP1, Airspy with SpyVerter, Airspy HF+, FDM-S1, IC706, Perseus

Over on YouTube Leif 'sm5bsz' has uploaded a video that does a lab comparison of various SDRs on the market now including the new Airspy HF+. Leif is known for providing excellent lab based technical reviews of various SDR products on his YouTube channel.

The first video compares the Airspy HF+ with the Perseus SDR. The Airspy HF+ is a new high performance yet low cost ($199 USD) HF/VHF specialty SDR. The Perseus is an older high performance direct sampling HF only SDR, although it comes at the high price of about $1000 USD.

In his tests Leif tests both units at 14 MHz and finds that the HF+ has about 15 dB better sensitivity compared to the Perseus (NF = 7dB vs 22dB). On the other hand the Perseus has about 23 dB better dynamic range compared to the HF+ (Dynamic Range = 127 dBc/Hz vs 150 dBc/Hz), although he notes that a blocking transmitter needs to have a very clean signal to be able to notice this difference which would be unlikely from Amateur transmitters. 

In the next two videos Leif compares multiple SDRs including the SDRplay RSP1, FUNcube Pro+, Airspy with Spyverter, Airspy HF+, Afedri SDR-Net, ELAD FDM-S1, ICOM IC-706MKIIG and Microtelecom Perseus at 7 MHz.

In the RX4 video Leif compares each SDR on dynamic range at 7 MHz. If you want to skip the testing parts, then the discussion of the results in the RX4 tests start at 1:03:00. A screenshot of the results is also shown below. The SDRs are ranked based on their average results over multiple measurements at different times which is shown in the last column. A lower value is better, and the value represents how much attenuation needed to be added to prevent the SDR from overloading and causing interference in his setup.

Dynamic Range Test Rankings
Dynamic Range Test Rankings

In the RX5 video the results start at 54:20:00. In this video he compares the SDRs with real signals coming in from his antenna at 7 MHz. He tests with the antenna signal wide open, with a 4.5 MHz LPF (to test out of band blocking performance), and with a bandpass filter at 7 MHz. Again lower values are better and the values indicate the amount of attenuation required to prevent overload. The Perseus is used as the reference benchmark. He also tests reciprocal mixing later in the video.

RX5 Results
RX5 Results

TempestSDR: An SDR tool for Eavesdropping on Computer Screens via Unintentionally Radiated RF

Thanks to RTL-SDR.com reader 'flatflyfish' for submitting information on how to get Martin Marinov's TempestSDR up and running on a Windows system. If you didn't already know by definition "TEMPEST" refers to techniques used by some spy agencies to eavesdrop on electronic equipment via their unintentional radio emissions (as well as via sounds and vibrations). All electronics emit some sort of unintentional RF signals, and by capturing and processing those signals some data can be recovered. For example the unintentional signals from a computer screen could be captured, and converted back into a live image of what the screen is displaying.

TempestSDR is an open source tool that allows you to use any SDR that has a supporting ExtIO (such as RTL-SDR, Airspy, SDRplay, HackRF) to receive the unintentional signal radiation from a screen, and turn that signal back into a live image. This can let you view what is on a screen without any physical connections. If a high gain directional antenna is used then it may be possible to receive images from several meters away as well.

TempestSDR showing what's on the screen via unintentional RF radiation from the monitor.
TempestSDR showing what's on the screen via unintentional RF radiation from the monitor.

Although TempestSDR has been released now for a number of years it hasn't worked properly in Windows with ExtIO interfaces. In his email flatflyfish showed us how to compile a new version that does work.

1. You need to install a 32-bit version of the Java runtime. The 64-bit version won't work with extio's possibly because they are all 32-bit. Also install the JDK.

2. You need to install MingW32 and MSYS and put their bin folders in your Windows PATH.

3. Then when compiling I was seeing a lot of CC command unknown errors. To fix that I just added CC=gcc to the top of all makefiles. I also removed the Mirics compilation line from the JavaGUI makefile to make things easier as we're not using that sdr.

4. Originally my JDK folder was in Program Files. The makefile didn't like the spaces in the folder, so I moved it to a folder without spaces and it fixed the errors.

5. Lastly to compile it you need to specify the ARCHNAME as x86 eg "make all JAVA_HOME=F:/Java/jdk1.7.0_45 ARCHNAME=X86"

After doing all that it compiled and I had a working JAR file. The extio's that are used normally with HDSDR work fine now and I get some images from my test monitor with an rtlsdr.

We tested compilation ourselves and were successful at getting a working program. To help others we've just uploaded a fork of the code with the makefile changes done, as well as a precompiled release ZIP available on the releases page so no compilation should be required to just use it. Note that to use the precompiled JAR you still need to install MingW32, and also don't forget to install the MingW /bin and msys /1.0/bin folders into the Windows PATH. You also do need to have the 32-bit Java runtime installed as the 64-bit version doesn't seem to work. On at least one Win 10 machine we also had to manually add a 'Prefs' folder to the Java path in the registry.

We've tested the software with the ExtIO for RTL-SDRs (available on the HDSDR downloads page) and confirmed that it works. Images from one of our older DELL monitors using DVI are received nicely, although they are a bit blurry. We also tried using an Airspy or SDRplay unit and this significantly improved the quality of the images a lot due to the larger bandwidth. The quality was good enough to make out large text on the screens. ExtIO's for the Airspy are available on this page, and for the SDRplay on the official SDRplay website. Note that for the SDRplay we were unable to go above 6 MHz, and on the RTL-SDR 2.8 MHz was the limit - anything higher on these SDRs did not produce an image possibly due to dropped samples.

To use the software you should ideally know the resolution and refresh rate of your target monitor. But if you don't there are auto-correlation graphs which actually help to predict the detected resolution and frame rate. Just click on the peaks. Also, you will need to know the frequency that your monitor unintentionally emits at. If you don't know you can browse around in SDR# looking for interference peaks that change depending on what the image of the screen is showing. For example in the image below we show what the interference might look like. A tip to improving images is to increase the "Lpass" option and to watch that the auto FPS search doesn't deviate too far from your expected frame rate. If it goes too far, reset it by re-selecting your screen resolution.

Unintentionally radiated RF signal from computer screen shown in SDR#
Unintentionally radiated RF signal from computer screen shown in SDR#

The best results were had with the Airspy listening to an older 19" DELL monitor connected via DVI. A newer Phillips 1080p monitor connected via HDMI had much weaker unintentional signals but images were still able to be recovered. A third AOC 1080p monitor produced no emissions that we could find.

Clear images were obtained with an antenna used in the same room as the monitor. In a neighboring room the images on the DELL monitor could still be received, but they were too blurry to make anything out. Possibly a higher gain directional antenna could improve that.

An example set up with RTL-SDR antenna and monitors
An example set up with RTL-SDR antenna and monitors

Below we've uploaded a video to YouTube showing our results with TempestSDR.

TempestSDR - Remotely Eavesdropping on Monitors via Unintentionally Radiated RF

If you want to learn more about TEMPEST and TempestSDR Martin Marinovs dissertation on this software might be a good read (pdf).

Airspy Black Friday Deal – 15% off Airspy Mini/R2

Airspy have just tweeted a Black Friday deal for their products sold on iTead Studio. Simply use the coupon "AIRSPYBLACK" when checking out. It looks like the coupon is giving 15% off the Airspy Mini and Airspy R2. No discounts yet for the Airspy HF+ or SpyVerters.