Monday, April 23, 2012

Radios

GNU Radio is a software package that allows you to broadcast any signal you want, at any frequency and/or power And it interfaces with almost any available radio through several means, the coolest one is using an wire plugged into a sound card.

So the cheapest and most common vendor Ettus, charges $700 minimum, for a tunable radio that covers 1 Mhz to 3 Ghz. It has like ~8 Mhz of bandwidth. Meaning it can modulate a carrier frequency by that much. I.e. if you tune to 10 Mhz, you can receive / transmit any type of signal that covers 6 to 14 Mhz.

Wifi uses 30 Mhz of bandwidth per channel. So there are some other factors that affects the actual rate of data streaming in Mbps related to the frequency and other stuff but as an estimate it's close enough to be analogous.

Ok so that's a high barrier of entry right? Well there are two pages I've found (will link later but they don't contain much information that is interesting) that indicate you can build a very similar board for around ~$50 - 100, with the most expensive component being the USB bus! (And with a cheaper / slower bus mechanism / slower ADC the price might be as low as $10 TOTAL)

The ADC[analogue to digital converter] (Rx) / DAC (Tx) each cost about $5! The only problem was the boards are both still in development. There is firmware written for the Rx module for both projects (they use different companies daughterboards.) But one project is lacking a Tx board entirely, and the other project has software but it literally just isn't finished yet. But the GNU Radio contains some really simple and straightforward python modules for connecting ANY radio device, so it's definitely possible. One of the more expensive ADCs (like $20+ or something) was demonstrated to push like 40 Mbps. So high data rates have already been accomplished.

The $5 ADC / DAC's can only push ~.5 to 1-2 Mhz of bandwidth (there's some more expensive ones too, it's unbelievable how cheap they are getting.) If you bought a $3000 one like those oscilloscopes by Ti at any university, which samples at like 2500 Msps+, you could get Ghz of bandwidth.

Okay so there's some other ripoff card for like $150 that is basically just a modified Tv Tuner that can do 0.1 Mhz bandwidth tuned to 1-1.6Ghz. Some blog posted indicated the guy was buying a board that retailed for <$10 and reselling it with some crappy modified firmware for an enormous profit. There are several cheaper attempts at an Rx module via TV tuner as seen here: http://www.reddit.com/r/programming/comments/r5cwa/pretty_awesome_turn_a_20_usb_tv_tuner_into_a_64/


Of course, in order to use that high bandwidth you have to stay within the FCC guidelines, but they actually allow transmission at like 150 Mhz, ~250, 360, 450, and 915. So if you're only using like ~2 Mhz of spectrum it would actually be legal. (Below 4 watts Tx)

Apparently also, the price drop / development of such cheap ADC's / DAC's coincides with the development of super-wideband ADC's. I couldn't see if they were available for purchase, but I saw many academic papers indicating there have been recent advances in super-cheap multi-Ghz bandwidth ADC's/DAC's. Couldn't find any exact prices since it's so new but it's really cool in principle.
 
Okay so now for the hilarious part. You how know your sound card samples an incoming electrical audio signal at like 96kHz? Well that means fundamentally it is capable of sampling any signal below ~24 kHz (half 96 via Nyquist minus losses due to noise.) So if I take ANY radio whatsoever and jack it's audio line into a soundcard, I can get 24 kHz worth of bandwidth at whatever frequency that radio is tuned to! (Since most radios downconvert to audio signals anyways for voice communication.)

So if you had an old cell phone with service, you could make a connection to a server with a phone, and send data over the ~24Khz of audio! Hah. Crappy bit rate but it would still work.

Ok so the best part of all. You can take a bunch of old wires and soldier them together into a 30 meter+ ~ VLF antenna. Then you solder that antenna to a $2 pre-amp covering the freq of interest, and solder that to an audio connector to your sound-cards line-in. (You can duplex by time for the antenna so half Rx half Tx too by connecting the speaker-out to the same antenna, there are software packages that generate audio tones that automatically decode with GNU radio! You can have full Rx/Tx without anything special)

So that ~24 kHz of bandwidth is roughly equivalent to a 56k connection. So you buy 20 $2 sound cards refurbished or whatever, hook em together and you can stream video over VLF.

The FCC limits the bandwidth of VLF drastically though, so you could only legally probably get a few connections. Also they have some ridiculous laws about packet radio that basically make it impossible to set up anything other than a small-link (for personal data transmission) without registering a call-sign with your SSN. Some limited personal links are ok without a license. (So long as it's basically like a low-power Wifi ethernet bridge and is not interfering / taking up too much bandwidth.)

There are also a TON of projects that allow you to build/buy a $10-20 board that downconverts HF / VHF / UHF to VLF s.t. the soundcard can receive ~24 kHz of sampling instead of using an old radio for that purpose. Obviously the tuner is better cuz of Msps and not using the soundcard interface, but soundcard Tx is super easy. There's probably a Msps Tx card though that is sub<$50 and that would beat all the soundcard stuff.

Additionally the drop in price in ADC's will impact the market in EEG's, as all they are is a wire probe hooked up to an ADC. They require far less bandwidth though for normal operation.