Wednesday, 3 March 2010
2 Msps DATV using a USRP2 and WBX transceiver
I am now experimenting with DATV. The picture shows my first DATV transmission on 24 cms using Fedora 12, a USRP2 and a Hauppauge PVR500 MPEGII encoder card. The transmit rate is 2 Msps. The Linux box is a Core 2 Quad clocked at 2.8 GHz.
Most of the code I am using was written by others. I only had to write about 15 lines of Python to get it all going.
The receiver is a standard Fortec Star DVB-S set top box (STB). The small 5" screen on the left is the received signal and shows the transmitter's spectrum. The signal was local leakage picked up with a bit of wire plugged into the STB.
To get 4 Msps however I am going to have to change the interpolator and RRC filters. To get the speed I will be using MMX assembler. Which is proving more difficult than I first thought because to get maximum efficiency the code has to be arranged to reduce the number of pipeline stalls. This can involve some really strange ordering of the instructions. I have already re-written the code 4 times each time dropping another stall. I don't think there is much more I can do.
I am currently waiting for a surplus DirecTV B Band converter I bought on eBay to be delivered. This will be modified to allow the STB to receive 436 MHz transmissions. The USRP2/WBX can already transmit at 436 MHz if required.
A GH Engineering 1.3 GHz PA kit is also on order. I have not decided on an antenna yet.
I think I am going to have my work cut out to gather any viewers!