ECE350: Communications Theory and Systems I

Laboratory Manual

Revision History
Revision 1.008 Mar 2013
Updated for GNU Radio 3.6.3.
Revision 1.127 Jun 2013
Updated for GNU Radio 3.6.5. The category structure was revised quite a bit from earlier versions so the text has been updated to reflect that.
Revision 1.24 Jul 2013
Updated for GNU Radio 3.7.0. The category structure was revised yet again, text updated.
Revision 2.01 Sept 2014
Updated for 2014 deleting Softrock, retaining 4 labs only
Revision 3.01 Jan 2017
Updated text references to 2016 edition, clarified lab procedures and reformatted for readability
Revision 3.129 May 2019
Updating course text to reflect changes from elec350 to ece350


This lab is meant to be a supplement to your ECE350 class. It will provide you with a way to explore the concepts and techniques discussed in class in a more hands on way. In order to do this, we will be using GNU Radio Companion, a graphical tool used to create and execute signal processing flow graphs for Software Defined Radio. This is a very useful tool, not only for demonstrating existing communication methods, but also for experimenting and developing new methods, both in the academic and professional worlds. For more information on Software Defined Radio, have a look at this Wikipedia page, or speak to your professor or TA.

The lab component of this course consists of several components:

  • Lab 1. GNU Radio Tutorials.

  • Lab 2. USRP Tutorials and FM Receiver.

  • Lab 3. Finding frame synchronization on the FLEX pager network using the USRP and GNU Radio.

  • Lab 4. Pulse shaping and PSK

  • Optional activity

    • Pass the amateur radio basic and advanced exams (contact Dr. Driessen)

    • Decoding off-air signals not covered in the other lab activities.

The deliverables are described at the beginning of each section.

PLEASE NOTE: You are encouraged to work at your own pace, using the scheduled lab period as a time to get assistance from a TA or the course instructor.