Close

Architecture of the box

A project log for SDR in a box

A simple box that will open airwaves for you

piranha32piranha32 08/21/2014 at 01:160 Comments

My goal in building The Box was to have a universal and portable platform for experiments with software radio. The other goal was to only use components that I had at home. These two conditions shaped the overall hardware architecture of the system.

Hardware design

At the center of the is the processing unit. Since I was going to use GnuRadio as the application building platform, and the system was supposed to be able to work unattended, linux was an obvious choice for the operating system.

I was going to use a low-power ARM board, however initial tests had shown that DSP applications will be too computationally intensive for a small processor. Since I had at home an Intel Atom micro-ATX motherboard, it become the heard of the system.

The radio interface contains two receivers: one is a cheap RTL dongle, the other is much more capable bladeRF

Since the system will not have external HMI devices (keyboard, mouse, monitor), there must be a way to access it remotely. First I was planning to use serial-to-bluetooth adapter to access the console running on serial port, however it quickly found it too limiting. Since data transfer over cell network was not an option (slow, expensive, limits on amount of transferred data, no incoming connections), use if wifi looked like the most promising idea.  Since I am going to use the system away from places with wired networks, I had to install an access point inside the box and allow other devices to connect to it. I could either install the access point as a separate box, or use hostapd to run the access point on the main system. After searching the web and confirming that my wifi dongle supports AP mode, I decided to use the latter method.

Software architecture

For a device that is supposed to be a universal platform, it's difficult to discuss software design in details. For me it is an RF sensing device, for somebody else it can be a wideband radio scanner or GSM base station. 

I started to describe details of configuration of the operating system and tricks I used to make life easier (installation of OS using Virtual Box, using non-standard configuration of GPS receiver with gpsd) and I will be adding in the future more tutorials summarizing what I learned while building the project.

Configuration files will be published in project's github repository.

Discussions