Wireless Networks

CSE 122 / CSE 222C / WES 269 – Winter 2025

Home | Syllabus | Calendar | Agenda | Labs |


Syllabus

Note: This is a newer course, and is still somewhat experimental.

This syllabus is subject to change as-needed, and we ask that you are forgiving of any rough edges.

This class aims to be reasonably self-contained. The primary responsibilities are to

  1. Come to lectures ready to engage in the material.
  2. Come to the lab days prepared and ready to hack.

We will also have a few small homework assignments throughout the quarter. These are intended to be more fun and educational about the extant infrastructure in the world around you than a large amount of work. In lieu of a final exam, this course will feature a final design assignment.

Course Staff

Pat Pannuto is the instructor and their office is CSE 3202 (right in the corner). Their email is ppannuto@ucsd.edu; please remember to include CSE190 or CSE291 in the subject line for class issues.

What should you call me?

Most students call me Professor or Professor Pannuto or Dr. Pannuto. I also answer happily to “Prof[essor] P.”

What should I call you?

I should call you by your preferred name, with the correct pronunciation and any honorific or pronouns you choose. Please correct me (in the chat if there is one, out loud in class or in Zoom, or via email/Piazza/etc after the fact – however you are most comfortable) if I ever make a mistake.

TAs

Samir Rashid (s3rashid@ucsd.edu) and Anthony Tarbinian (atarbini@ucsd.edu) are the TAs for this course.

Prerequisites

CSE 101: Design and Analysis of Algorithms and CSE 110: Software Engineering (or equivalents) are required prerequisites for CSE 122.
Transitively, CSE 29: Systems Programming and Tools and CSE 30: Computer Organization (or equivalent) are thus also required. We expect that you are comfortable with C code and how computers represent data.

We expect that you are comfortable with the basics of software engineering, i.e., modular design, data structures, physical (in-memory) representation of data structures, code compilation, build systems, version control, and debuggers.

CSE 123: Computer Networks is not a prerequisite of this course. However, if you are able to take 123 in advance of this course or concurrently, it may help you get more out of this course.

Textbook & Other Resources

There is no textbook for this course.

For background and more depth in embedded system design and operation, we recommend Lee & Seshia's Introduction to Embedded Systems.

For debugging and lab support, stack overflow, electronics stack exchange, and vendor forums (e.g. Nordic DevZone) are good resources.

For specific topics, additional resources are linked in the course slides.

(A?)Synchronous?, Remote?, Recordings?

This course is designed for synchronous, in-person instruction.

You must attend the first lab. Anyone not present 15 minutes after the start of the first lab will be dropped from the course. There is no flexibility and no exceptions for any reason in this policy.

You are required to attend all lab sessions. Lectures also expect in-person attendance. For policy details, see the grading section below.

Grading

A quick reminder: Effective learning comes from active engagement and re-enforcement. Activities, assignments, and grading are designed to help with this.

You get out of class what you put into it.

I believe in mastery learning. My goal is to teach you the material and for everyone to learn it. I am most successful if everyone in class earns an A. This class will not be curved.

The course is divided into four (or five) categories. Your final grade is your minimum grade from any category.

To keep the math easy, every category has a total of 100 points. For each category, points translate to whole letter grades directly:

AA
>100
A
[90,100]
B
[80,90)
C
[70,80)
D
[60,70)
F
[0,60)
Range notation [80,90) means 80 is included and 90 is not.

In some categories, it is possible to earn more than 100 points (i.e., AA). One AA grade moves your final grade up one “modifier”, and two or more AAs moves your final grade up at-most two “modifiers”. To earn a final course grade of an A+, you must have at least two AA grades, one of which must be from the Final Design Report.

For some concrete examples of how this works:
[MinuteQuiz,Labs,Homework,FinalExam]
[A,A,B,A] → B, [C,AA,A,B] → C+, [C,AA,AA,B] → B-, [C,AA,AA,AA] → B-, [A,A,A,A] → A, [AA,AA,AA,A] → A, [AA,A,A,AA] → A+

Category I: Minute-Quizzes

Lecture (after the first meeting) will begin with a “minute-quiz.” These will be (very) short and will cover material from the prior lecture, or possibly pre-lab, lab, post-lab, homework, or other assignment. You should not need to study or worry about these – if you were there and paying attention, you'll be prepared.

Correct quizzes earn 10 points each, incorrect quizzes earn 5 points each, and missing quizzes are 0 points. Excluding the first day of class, and considering holidays, there are 19 lectures. This creates a natural, built-in makeup policy that allows you to miss many quizzes/questions without penalty. For this reason, there is no makeup opportunity for missed quizzes (even if you were there, but just a little late).

Depending on the needs of the day, some lectures may skip the minute quiz. There will be a minimum of 12 minute quizzes during the quarter.

Quizzes are released at 14:00 and collected at 14:02. No late quizzes are accepted.

Note: Category I does not apply for WES students.

Category II: Labs

Lab activities make up the bulk of the work for this course. Labs are where you will apply the concepts learned in lecture.

You will form lab groups of exactly three people during the first lab session. You may form a group with whomever you wish. The only constraint is that your group must have at least two different operating systems among its members (i.e., you cannot all have Macs, or all have Linux machines).

There are five total labs in this course. The first lab is slightly shorter.

Pre-Labs

Pre-labs are absolutely essential to your success during the lab session. You must have completed your pre-lab before the start of the lab session to make good use of the lab time.

For this reason, your pre-labs are due by the start of lab. There are no exceptions, and there is no late/makeup policy for pre-labs. If you have not completed the pre-lab by the start of the lab session you will receive no credit for that pre-lab (even though you will probably have to do the pre-lab work, during lab..., before you can actually start on the lab).

Post-Lab Reports

You will need to complete a post-lab report for each of the labs.

The report is a mixture of documentation of your in-lab activity as well as post-lab analysis questions or extra experimentation you may have to perform.

Lab reports are generally due at before the start of lecture, one week after the final in-class session for that lab.

Category III: Homework

There are only two homework assignments in this course, one at the beginning of the term (before the first lab) and one at the end of the term (after the last lab).

Generally, lab reports include homework-like questions and activities. These homeworks cover topics that do not have associated labs.

Category IV: Final Exam (Design Assignment)

Take-home 'final', this is an end-to-end pencil-and-paper design task.

Loosely, this will be an exercise of: “You're an engineer at startup X, who's building Y, with requirements 1,2,3,4. What do you design and why.”

[CSE 222C / WES 269 only] Category V: Paper Responses

This category will be skipped this term.

Resources for Students

Getting Help

First, try to make sure you help yourself by staying up to date with course activities. Half the grade is participation and labs, which are not meant to be tricky, but rather to give you real-world experience, practice, and confidence with the material.

Office hours are the perfect place for one-on-one support and asking specific questions. Office hours are most useful after you have worked on the problem for a little while yourself (I usually say that you should struggle with a problem for fifteen full minutes, but not more than fifteen minutes before seeking help). You are not interrupting course staff (TAs or the professors) when you come to office hours. It is literally our job to be available to help you during those times. Office hours are also not restricted to content from class. Folks have asked about research / grad school in CS, how to get jobs in embedded or mobile systems or computer architecture or [...], what other classes to take if they like (or hate!) this stuff, the best coffee shops for working accessible by light rail, tips for developing fruit-bearing trees in San Diego, or anything else that you would like to know about.

The IDEA Engineering Student Center, located just off the lobby of Jacobs Hall, is a hub for student engagement, academic enrichment, personal/professional development, leadership, community involvement, and a respectful learning environment for all. The Center offers a variety of programs, listed in the IDEA Center Facebook page and the Center web site. The IDEA Center programs support both undergraduate students and graduate students.

Diversity and Inclusion

We are committed to fostering a learning environment for this course that supports a diversity of thoughts, perspectives and experiences, and respects your identities (including race, ethnicity, heritage, gender, sex, class, sexuality, religion, ability, age, educational background, etc.). Our goal is to create a diverse and inclusive learning environment where all students feel comfortable and can thrive.

Our instructional staff will make a concerted effort to be welcoming and inclusive to the wide diversity of students in this course. If there is a way we can make you feel more included please let one of the course staff know, either in person, via email/discussion board, or even in a note under the door. Our learning about diverse perspectives and identities is an ongoing process, and we welcome your perspectives and input.

We also expect that you, as a student in this course, will honor and respect your classmates, abiding by the UCSD Principles of Community. Please understand that others’ backgrounds, perspectives and experiences may be different than your own, and help us to build an environment where everyone is respected and feels comfortable. If you experience any sort of harassment or discrimination, please contact the instructor as soon as possible. If you prefer to speak with someone outside of the course, please contact the Office of Prevention of Harassment and Discrimination.

Students with Disabilities

We aim to create an environment in which all students can succeed in this course. If you have a disability, please contact the Office for Students with Disability (OSD), which is located in University Center 202 behind Center Hall, to discuss appropriate accommodations right away. We will work to provide you with the accommodations you need, but you must first provide a current Authorization for Accommodation (AFA) letter issued by the OSD. You are required to present their AFA letters to Faculty (please make arrangements to contact me privately) and to the OSD Liaison in the department in advance so that accommodations may be arranged.

Basic Needs/Food Insecurities

If you are experiencing any basic needs insecurities (food, housing, financial resources), there are resources available on campus to help, including The Hub and the Triton Food Pantry.

Please visit thehub.ucsd.edu for more information.


Creative Commons License

This work is licensed under a Creative Commons Attribution 4.0 International License. Copyright Pat Pannuto, 2025.