Course Syllabus

ECE398MA - Sp25:

Introduction to Modern Communication with Python and SDR


Course Overview

In this course, students will discover the foundational concepts behind modern wireless communication systems and get hands-on experience with cutting-edge software-defined radio (SDR) technology. Students learn how Python can be used to simulate and decode real-world communication protocols such as Bluetooth, WiFi, and FM Radio. This course aims at junior ECE students who are interested in wireless technologies and curious about practical implementations of communication theory.

 

Students will Learn:

  • Basics of analog and digital communication systems
  • Introduction to wireless communication protocols (Bluetooth, GPS, WiFi, FM Radio)
  • How to use Python to model, analyze, and simulate communication systems
  • Hands-on projects with software-defined radios (SDR)
  • Industry-driven case studies to apply knowledge in real-world contexts

 

Instructors: Thomas Moon (tmoon@) and Juan Alvarez (alvarez@)

Prerequisites: ECE 210

PlutoSDR Rental: This course requires a PlutoSDR device for lab work. You can rent the device from the ECE shop. Please visit the following link to check out the device.


Course Timing

Lectures: MTW, 9-9:50 am @ECEB 4070Links to an external site.Links to an external site.

Office Hour (starting 2nd week)

  • Juan: TBD
  • Thomas: Monday 11am-noon @ECEB-5080, Wednesday 1-2pm Zoom
    • 1/29, Wednesday OH will move to 3:30-4:30pm via Zoom

Course Schedule

The course schedules are subject to change.

Analog Communication

Digital Communication

Application

 

Week of

Lecture Topic (MW)

Lab (F)

Note

1/20

Review: Fourier Transform and LTI system response

review slides 01/22

Lab1: Setup python/SDR

slides

MLK 1/20

1/27

DSB-SC, DSB-TC, Envelope detection, coherent demodulation

review slides 01/27

review slide 01/29

Lab2: DSB-SC, AM

Quiz1

Lab1 due

2/3

Baseband representation of bandpass signals, Hilbert transform

SDR project1

Quiz2

Lab2 due

2/10

SSB, VSB, QAM

Lab3: SSB

Quiz3

SDR project1 due

2/17

FM/PM

Lab4: FM

Quiz4

Lab3 due

2/24

Basic Probability (Gaussian, ML)

SDR project2 + Lab5 (Random variables/noise)

Quiz5

Lab4 due

3/3

Intro to Digital comm

BPSK, QAM

Lab6: mod/demod BPSK, 4/16 QAM

Quiz6

SDR project2+Lab5 due

3/10

Symbol/Pulse-shaping

Matched-filter/Symbol-timing recovery

Lab7: Pulse-shaping

Quiz7

Lab6 due

3/17

 

Spring break

3/24

Channel

DBPSK

Preamble, Frame-sync

Lab8: Frame-sync

Quiz8

Lab7 due

3/31

ASK

FSK

Lab9: OOK and CPFSK

Quiz9

Lab8 due

4/7

CFO

Channel EQ

Lab10: Channel EQ (single-tap)

and CFO

Quiz10

Lab9 due

4/14

SNR vs BER

M-ary QAM and PSK

Lab11: SNR vs BER curve

QAM

Quiz11

Lab10 due

4/21

OFDM, WiFi

SDR project3

Quiz12

Lab11 due

4/28

Bluetooth, RFID

SDR project3

Quiz13

 

5/5

LoRa

Last day 5/7

5/12

SDR project3 demo

SDR project3 due


Grading Breakdown

Lab Reports SDR Projects Lecture Quizzes
50% 30% 20%

 


 

1. Lab Reports (50%):

  •    Weekly lab assignments will be worth 100 points each.  
  •    No extensions will be granted for COVID-related or other medical/non-medical circumstances. Instead, the lowest lab score will be dropped.  
  •    Lab assignments will be distributed on Thursdays and are due the following Thursday at 10:00 PM.  
  •    All submissions must be made via Gradescope, where grades will also be published once ready.
  •    Lab report is required to use this Latex Template

 

2. SDR Projects (30%):

   There will be 3 SDR projects focusing on hands-on exploration of real-world communication systems:  

  •    SDR Scanner: Scanning real communication signals in an outdoor environment.  
  •    AM/FM Radio Demodulation: Demodulating AM/FM radio signals and playing audio outputs.  
  •    Digital Communication (TBD): Implementation and analysis of a digital communication system.  

 

3. Lecture Quizzes (20%):

  •    Paper-based quizzes will be administered during the first 10 minutes of each Friday lab session.  
  •    Quizzes will test students’ understanding of concepts covered in lectures.  
  •    The lowest two quiz scores will be dropped.

Lectures and Lab Sessions

Lectures (Monday and Wednesday):  

Lectures will cover the theory and concepts of communication systems. The course will be divided into three parts:  

  1. Analog Communication and Basics of Signal Processing (5-6 weeks): Introduction to analog communication techniques and foundational signal processing concepts.  
  2. Digital Communication (5-6 weeks): Key principles of digital communication, including modulation schemes, synchronization, channel equalization, etc.  
  3. Applications of Modern Communication (3-4 weeks): Exploration of modern communication technologies and IoT.

 

Lab Sessions (Friday):

  Each lab session will begin with a 10-minute lecture quiz to assess students’ understanding of the week's concepts. Following the quiz, the session will include a discussion of the upcoming lab, along with demonstrations of relevant examples.


Important Course Policies

  • Individual Work:  All lab reports, lecture quizzes, and SDR projects must be completed individually. Collaboration or sharing of work is strictly prohibited.  
  • Academic Integrity: Students are expected to adhere to the university’s policies on academic integrity. Any violations will result in disciplinary action.
  • Late Work Policy:  As the lowest lab score and quiz scores are dropped, no further accommodations for late submissions will be provided. Please plan your time accordingly.

Recommended textbook:

J. G. Proakis and M. Salehi, Fundamentals of Communication Systems, 2nd edition, Prentice-Hall, ISBN: 978-0133354850.

Course Summary:

Date Details Due