Course Description

The goal of this course is to give students hands-on experience in the design, configuration and evaluation of digital communication systems through software defined radios. The course will introduce students to various components of a digital transceiver. It will also cover various Internet of Things (IoT) communication technologies used today. Students will learn through lab driven experiments on USRP software defined radios.


Lectures: Wednesday, 2:00pm - 2:50pm, ECEB 3013

Labs: ECEB 5080 [ECEB 5080 room schedule]
  • AB2 Thursday, 1:00pm - 3:50pm
  • AB3 Monday, 1:00pm - 3:50pm
  • AB4 Friday, 1:00pm - 3:50pm
Instructor: Thomas Moon (tmoon@)

Office Hours: Thursday 1-2pm, ECEB 5080

Prerequisites: Basic knowledge of communications or ECE 361 or 461 or 459

Recommended Textbooks: (available in reserves at Grainger Library)
  • Signal Processing Techniques for Software Radio by Behrouz Farhang- Boroujeny. 2nd Edition.
  • Software Receiver Design: Build your Own Digital Communication System in Five Easy Steps, 1st ed., by Johnson, Sethares & Klein, Cambridge Univ. Press publisher.

Lecture Attendance Policy: We invite relevant questions and comments during lectures. Address your questions and comments to the entire class; avoid disruptive behavior such as talking to neighbors, unless the instructor invites you to form discussion groups. Kindly turn off or mute cell phones, laptop computers, and other electronic devices during lectures.


Grading policy

  • Labs: 55%
  • Quiz 1: 20%
  • Quiz 2: 20%
  • Lecture attendance: 5%


A late penalty of 50% will be assessed for assignments less than a week late; assignments more than a week late will receive no credit. However, all graded assignments must be submitted to receive a passing grade in the course.

Gradescope Entry Code: 6ZG6Z4

Schedule

Week Date Lectures Labs
1 8/24 Lecture #1: Introduction - Overview & Logistics [Lec 1] Lab #1: Introduction to LabView [Lab 1]
2 8/31 Lecture #2: Software Defined Radios & Up/Down Conversion [Lec 2] Labor day break
3 9/7 Lecture #3: Pulse Shapping and Matched Filtering [Lec 3] Lab #2: Introduction to USRP [Lab 2]
4 9/14 No Lecture Lab #3: Pulse Shapping and Matched Filtering [Lab 3]
5 9/21 Lecture #4: Modulation I: Coherent & Non-coherent modulation, Channel distortion, DBPSK, Frame Synchronization [Lec 4] Lab #4: Modulation Part I: DBPSK & Frame Synchronization [Lab 4]
6 9/28 Lecture #5: Modulations II: ASK, FSK [Lec 5] Lab #5: Modulation Part II: ASK, FSK
[Lab 5]
7 10/5 Lecture #6: Channel Equalization [Lec 6]
Quiz1 Preview [Preview]
Quiz1 sol [sol]
Lab #6: Channel Estimation & Correction [Lab 6]
8 10/12 Quiz1 Lab #6 continued
9 10/19 Lecture #7: Carrier Recovery, CFO Estimation and Correction, Phase Tracking [Lec 7]
Lab #7: CFO Estimation & Correction
[Lab 7]
10 10/26 Lecture #8: Modulation III: PSK, QAM, ML, BER vs. SNR, AGC & Quantization [Lec 8] Lab #8: Modulation III : QAM, PSK, BER vs SNR [Lab 8]
11 11/2 Lecture #9: OFDM I [Lec 9] Lab #9: OFDM [Lab 9]
12 11/9 Lecture #10: OFDM II [Lec 10] Lab #9 continued
14 11/16 Lecture #11: IoT I: LoRa and CSS [Lec 11] Lab #10: IoT [Lab 10]
13 11/23 Thanksgiving break No lab
15 11/30 Lecture #12: IoT II: Backscatter Communication & Bluetooth, FHSS, DSSS [Lec 12] Lab #10 continued
16 12/7 Quiz2