Gnu Radio and the Universal Software Radio Peripheral

  • 11,468 views
Uploaded on

Presentation given at the 2010 AMSAT UK Space Colloquium. Video recording of the presentation is available from http://batc.tv/

Presentation given at the 2010 AMSAT UK Space Colloquium. Video recording of the presentation is available from http://batc.tv/

More in: Self Improvement
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • PUSHKKUUU KI JAYYYYYYY .............................
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
11,468
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
541
Comments
1
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • SDR platform different from other SDRs
    It lets you build your own software defined radios.
  • Looking for new radio to learn and explore SDR
    Consider consumer devices
    I found what I was looking for

  • GR & USRP as SDR
    Both HW and SW to get on the air with SDR
    Open source HW & SW
  • FPGA does the hard for of DDC and DUC
    This is USRP V1 for $700
    V2 uses gigE
  • Good all round transceiver for $450
    Other DBs for DC to 6 GHz
    Open source => create own RF boards
  • A library of DSP blocks
    A framework for connecting the blocks
    Think of block diagrams for a radio
  • Apps can be written at any level
    Each level with pros/cons
    Examples at all levels
  • How a GR app can look like in Python.
    Note the 5 lines that actually build the flowgraph
  • Great for beginners and for education/demo
    Idea -> Create Dia -> Generate code -> Run -> Examine code (learn)
    Has limitations compared to Python and C++
  • Quick walkthrough
    The NBFM block is a composite block
  • A slightly extended version of the FM receiver (GUI)
    Receives packet radio from the ISS
    Decodes using multimon. Note VO-52

  • Creating an FM transmitter is easy too!
    What happens if we copy and paste this block into the receiver?
  • Warning! GNU Radio is dangerous! It will inspire you to get crazy ideas
    e.g. building a transponder.
  • Fully functional TRSP.
  • Not a flight ready transponder
    Good simulator
  • Hook up a webcam and the USRP?
    New generation of webcams can do HD for 100 EUR
    A new PC should be able to compress 720p and run the SDR. Is this possible?
  • It is possible.
    Was it difficult? Not really...
  • Could use BPSK, QPSK, QAM, OFDM...
    There are also blocks for FEC
    For now I just keep it simple
  • Gstreamer video processing pipeline created using command line.
    SDR TX built in GRC
  • Actually, we used mplayer due to the “mixed” bitrate
  • Broad topic
    I hope I did provide an overview to motivate people
    Tips for experts and newbies.

Transcript

  • 1. GNU Radio and the Universal Software Radio Peripheral Alexandru Csete OZ9AEC An open source platform for experimenting with Software Defined Radios
  • 2. I want a radio which... ? Lets me experiment with SDR Not limited to audio bandwidth On the air from DC to “many” GHz Affordable
  • 3. SDR with GNU Radio & USRP RF front end analog digital software • Converts RF to/from • Digital baseband analog baseband • ADC and DAC • Low rate (16 Msps) • Direct conversion using • Resampling quadrature mod/demod • Defines functionality
  • 4. Universal Software Radio Peripheral FEATURES • Four 12 bit ADC (64 Msps) • Four 14 bit DAC (128 Msps) • Two RX and two TX • Up to 8 MHz bandwidth • USB 2.0 interface • Auxiliary analog & digi I/O
  • 5. WBX transceiver board FEATURES • 50 MHz – 2.2 GHz • Full duplex • Direct conversion • 5-6 dB noise figure • 50-100mW TX power RF boards available between DC and 6 GHz
  • 6. GNU Radio DSP library Execution framework Modulation Filters I/O GUI Other blocks...
  • 7. Programming Levels GRC Graphical design tool Composite blocks Python Applications C++ Low level functions
  • 8. Python example
  • 9. Generate Code Execute GNU Radio Companion
  • 10. Simple FM Receiver
  • 11. The FM receiver on the air USRP with WBX and Arrow II Demo video: http://www.slideshare.net/csete/packet-radio-form-iss-and-vo52-downlink
  • 12. Simple FM Transmitter
  • 13. FM Transceiver Full Duplex!
  • 14. The simplest transponder 1.265 GHz → 2.415 GHz → 500 kHz bandwidth
  • 15. Transponder with TM/TC Transponder at ∆f = 50 ... 150 kHz from centre TM and TC at ∆f = -50kHz from centre
  • 16. DVB with webcam UVC webcam Linux Gstreamer USRP High Definition GNU Radio
  • 17. DVB with webcam Video demo: http://www.slideshare.net/csete/dvb-transmitter-fiorst-signals
  • 18. The DVB system Webcam USRP Text H.264 MPEG-TS Packet GMSK Gain overlay encode muxer encoder modulator Gstreamer GNU Radio Unix pipe Transmitter Receiver USRP Display Channel GMSK Packet MPEG-TS H.264 filter demod decoder demux decode Unix pipe GNU Radio Gstreamer
  • 19. Video transmitter gst-launch -e -v v4l2src device="/dev/video1" ! video/x-raw-yuv, framerate=25/1, width=640, height=360 ! timeoverlay halign=right valign=bottom shaded-background=true ! textoverlay text="Test Video 640x360 25fps" halign=left valign=bottom shaded-background=true ! x264enc bitrate=1000 ! mpegtsmux ! filesink location=myfifo.raw
  • 20. Video receiver gst-launch -v playbin uri=file:///home/alexc/gnuradio/GST/video2.ts
  • 21. Summary GNU
Radio USRP • Great for experimenting with SDR • Modular HW for DC to 6 GHz • Free & open source • Good receivers • Can use HW other than USRP • Full duplex transceivers • Works great on Linux • ∼100mW TX power • With some effort on Mac and Win • Does not require GNU Radio
  • 22. Explore GNU Radio GNU Radio website: http://gnuradio.org GNU Radio Python tutorial: http://gnuradio.org/redmine/wiki/gnuradio/TutorialsWritePythonApplications GNU Radio Companion tutorial: http://gnuradio.org/redmine/wiki/gnuradio/GNURadioCompanion The Comprehensive GNU Radio Archive Network (projects): https://www.cgran.org/ Ettus Research (USRP and daughterboards): http://ettus.com USRP FAQ: http://gnuradio.org/redmine/wiki/gnuradio/UsrpFAQ My GNU Radio projects, blog, etc: http://www.oz9aec.net/index.php/gnu-radio My simple GRC examples: http://www.oz9aec.net/index.php/gnu-radio/grc-examples I have many videos with GNU Radio in action: http://www.youtube.com/oz9aec Ubuntu Linux (great OS for GNU Radio): http://www.ubuntu.com