Universal Radio Grabber: the USRP
Nethemas the Great writes "The Universal Software Radio Peripheral or USRP created by Matt Ettus and Eric Blossom gives a new perspective on the radio spectrum, as in just about all of it from DC to 2.9Ghz. With the right software and daughterboards, their USRPs can capture FM, read GPS, decode HDTV, transmit over emergency bands, track peoples movement via their mobile phones, and much, much more. With prices starting at just $550 this new toy is accessible by most anyone."
My first thought on seeing this is, if it can simultaneously recieve and transmit, couldn't you create a truely decentralized telephone system? With the NSA wiretapping everything, isn't a simple solution to just take away the wires?
Aren't radio transmitters/receivers legally required to not be able to access certain bands without proper licenses?
If it's for-profit but free, you're not the customer -- you're the product (e.g., the Slashdot Beta's "audience").
Imagine a not-quite-Beowulf cluster of these -- your own homebrewed VLA. It'll receive in the "waterhole band", and VLBI ain't too hard to figure out. Set up enough ground stations and switch between them as-needed to compensate for what you're viewing and the rotation of the Earth, and you've got a fulltime radio telescope with a dish effectively as large as the earth, whenever you want it...
Open source radio astronomy anyone?
blog |
Ok, I must be missing here (the details of HDTV were not very specific). Do other people NOT decode HDTV, and is that milestone? Any product by DVICO will also decode HDTV. My Dvico USB unit decodes it. All you need is an antenna. Granted, only local stations are picked up. But it doesnt matter, you can copy everything else too using other methods. Is he referring to cracking the RCE broadcast flag that certain HDTV channels have (INHD/INHD2 in certain areas?). Does my comcast box not already decode HDTV? I guess I don't fully understand the issue. Even if the RCE broadcast flag is set in the HDTV content, you can still plug in a firewire cable (at least in the Motorola/comcast boxes), and output to your workstation, capturing the raw .ts HDTV streams. All the ports are already open (as required by law), just no firmware for the boxes. YOu can even verify the active firewire using the command power-select-select, then going to section 11 and verifying the active ports changed from 0 to 1. Once you have these .ts streams saved, you can output back to your HDTV using DVI if you have it.
And doesnt the RCE flag (again, required by law) require you be able to save it at least ONCE (common for pay-per-view on demand). In that case you capture it while it is playing, and you still get it. You don't have to respect the flag, it's up to the client (comcast). If they didn't though, they would loose all their advertising money. However, I don't know why a client on a workstation would need to repsect the broadcast flag. And if you are that interested in saving your HDTV content: http://www.avsforum.com/avs-vb/showthread.php?s=&t hreadid=353608&highlight=windows+xp+firewire
From http://www.privacyrights.org/fs/fs2-wire.htm:
The important part is the "readily altered to receive such frequencies." This product seems to receive the entire spectrum by default. I guess you could apply bandpass filters to limit the user, but it would be trivial to bypass those filters.
Think again...
http://www.afn.org/~afn09444/scanlaws/
Let freedom ring...
People, keep in mind, this is a dangerous tool. A simple software patch could make this into a GPS jammer or satellite distress beacon spoofer. Or, it could jam cell phones, emergency frequencies, listen in on cell phone conversations (I read something about the encryption being cracked years ago?), ignore the HDTV broadcast flag, allow you to emulate someone else's cell phone, send the cops away on another call by jamming or overriding dispatch, jam 802.1 networks or allow you to wardrive from extreme distances (since the tranceiver is NOT subject to the power limitations of standard network cards, combined with the right antennae you could break into any network within line of sight). You could start a pirate HDTV station on an unused piece of spectrum that broadcasts 100% porn.
Phrasing it that way, this sounds kind of cool, but you bet your ass they will make these illegal
Sorry, GPS location requirements don't rely on the timing on the board, all of the timing and position is derived from the received signal. You need to be able to receive 3 or more satellites for a fix. There are several folks working on GPS receive applications for the USRP right now.
Dave
Surely these guys should give acknowledgement to WinRadio? I first played with one of these around 1995. That particular model was a PCI card able to receive from close to DC through to 3GHz.
In the U.S., at least, we believe that there are rights that are "automatic." The U.S. Constitution, which too few people read, defines these as inalienable rights that no governement or other entity can take away.
I'm just intending to clarify things, as your social contract statement seems to indicate that you believe that authority can grant or take away rights at whim, as long as it's written down somewhere, or otherwise generally agreed upon. I'm assuming this is a European idea.
The ramifications are that U.S. citizens have a basis for determining when a government has overstepped its bounds (whether they actually do is a different story), where the social contract idea seems to provide little justification for being critical of authority. I'm sure in either case it doesn't make much difference practically speaking, but we're coming from fundamentally opposed viewpoints. (i.e. humans have certain rights no matter what, vs. the only rights you have are what society agrees on.)
But, you're right, there's no inalienable right to receive RF signals and decode them, as far as I'm aware, in the U.S. Constitution or otherwise.
If moderation could change anything, it would be illegal.
For those that are curious, I looked up the cost of the components.
Buying the chips in small quantities leads to about $100 just for the 4 main chips (two analog interface chips, one FPGA, one USB microcontroller). The PCB is likely to be around $20 if it's more than a two layer and in small quantities. The labor to assemble just a few of them is likely $50-$100.
$550 isn't a bad price. But there's a reason the PCB isn't open sourced like all the other design files - the company wants (needs) to make money and recoup its investment.
Still, one sufficiently motivated could reduce the cost of the entire board and probably include the popular generic modules to the $200 range if they were able to get a comitment to purchase from say 100 people.
It's a neat concept, and one I'd like to get into, but right now it's not something that you use so much as tinker with. It's for researchers and hobbyists. Once there is real time hdtv decoder software in linux that runs with this, and a good tv/radio record/pause/skip program, as well as a nice simple scanner application then it will become something worth having for the general linux hacker.
I think someone could make a good bit of money if they made a small module that just had one A/D interface, the FPGA, a cable modem tuner, and the usb microcontroller. It could sell for $100, which would be cheap enough for regular hackers to get it and start making really cool tv/radio applications for.
-Adam
Certainly all things have limitations. But, catch this:
1.) The hardware design (schematics, layouts, etc) are OPEN;
2.) The FPGA Verilog code is OPEN;
3.) The software is GPL.
As to the computational power of the CPU, I'm thinking an FPGA coprocessor could be used to great effect; something like a DRC coprocessor in a socket 940 (Opteron socket): see http://www.drccomputer.com/pages/modules.html for details. Run the correlation and other functions in the FPGA and offload the grunt work of the algorithm to the hardware logic you blow into the FPGA.
In my own experience, a continuum analysis (power spectrum integration using cascaded FIR filters) and a simultaneous FFT can run with 65% of a 3GHz Xeon, with all the X11 overhead taking 50% of a second 3GHz Xeon. The hard part is sustaining continuous 32MB/s writes over a period of hours (I have a Dell 2850 here with hardware RAID that can do 150MB/s writes in theory; in practice even that can skip samples). And that is using the GNUradio Python framework; tuned C would likely be less taxing on the CPU.
In contrast, we are working on other projects that are running an order or two of magnitude higher sample rates; one with be sampling 12 channels at 1.5GS/s 8 bits and performing a correlation for probing the interstellar medium using compact extragalactic sources at 2.1 and 8.5GHz. That will require the equivalent of an 800GHz Xeon; only hardware FPGA correlation is anywhere close to fast enough, and even then we're talking $10K high end Xilinx Virtex 4's.
Coprocessing FPGA's are basically required for real-time processing of this sort.
I'll bet it's not long before the USRP/GnuRadio people hook up with the graphics card as a compute engine folks. Graphics cards are well suited for high-speed signal processing, and would give you the ability to process high-bandwidth signals in realtime even on an ordinary PC.
GPGPU: General-Purpose computation on GPUs
The FFT on a GPU
GPU-FFTlib - Graphics Card based Implementation of the Fast Fourier Transform
--Pat