a-radio: a web virtual reality radio power spectrum analyser


This is a humble experiment to inspire real engineers and graphical designers to do something professional and beautiful from this idea. This is a simple integration of another experiment («Radioprint», see Radio fingerprinting, and «rfside«) into a-frame webVR framework, made for a Windows server and to be used with any smartphone. Remember this is the gross result of a boring morning, so do not expect anything professional.

View of a-radio fast radio sweep between 88 and 130 MHz from a smartphone (cardboard)

Surrounded by radio spectrum

A-radio is the mix of rtl_power + heatmap.py + a-frame in an artistic way. To make it work, you will need:

  • Software Defined Radio device (using RTL-SDR v. 3) ready to be used with rtl_power
  • Python
  • Imagemagick
  • HTTP(s) server (I’m using Apache with XAMPP)
  • Rtl_power windows binaries and DLLs, a modified heatmap.py to avoid put legends on image, a-frame custom scene HTML file, a script .bat to make it all work together (download here)
  • Cardboard glasses + your smartphone (optional)
  • Dependencies related to heatmap.py script (see imports)
View from PC

How to use a-radio

  • Download and install Imagemagick for Windows. Download and install XAMPP. Start Apache service. Extract all .rar files to htdocs (i. ex. C:/XAMPP/htdocs/).
  • Start «script.bat» and wait about 20 seconds to get the first snapshot. Go to your web browser (in your PC, or in your smartphone if you are going to use the VR function) and navigate to your parent folder using HTTPS in the URL (i.ex. https://localhost). The script will continue getting new snapshots every 30 seconds, so if you refresh (F5) you will get new results on the VR.
  • Start exploring the radio snapshot in the VR scene, where you are surrounded by active frequencies.
Le puede interesar también:   Radio signal identification "by ear": Discrete Fast Fourier audio hashes comparison in Python

Some comments

  • A-frame requires to be used over https to work properly with sensors. Is a lot of work for a test, so we just add https in the beginning of the URL and press «ok I understand the risks«. This bypass a-frame restrictions.
  • For a custom radio range, edit «script.bat» and give rtl_power the interval you want.
  • To-do: Having a lot of problems to make automatic refresh of spectrum image each X seconds. Tried a lot of javascript DOM, but having problems with cached images (tried the trick of adding random url parameters to make it appear different: not working).
  • To-do 2: Now I am working in openwebrx + aframe integration for real-time waterfalls.

Copyright, 2020. José Carlos Rueda, abogado.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *