Course Information
See also
The information contained within this page is a subset of the information contained within the course syllabus. Please see the syllabus document for a comprehensive list of course information, polices, and grading information.
Faculty and Staff
- Instructors:
- Kyle Wilt, JEC-6004, wiltk2@rpi.edu
In-Person/Webex Office Hours: Tues./Wed. 2-4 PM
- James [Dylan] Rees, JEC-6046, reesj3@rpi.edu
In-Person Office Hours: Book with Calendly
- Prabhakar Neti, JEC-6038, netip@rpi.edu
In-Person Office Hours: Tues./Fri. 8-10 AM
- Teaching Assistants:
Amir Begovic, AB
Benjamin Lee, BL
Heshan Fernando, HF
John Higham, JH
Parisa Shiravani, PS
Zhouxu Duan, ZD
Zirui Yan, ZY
- Undergraduate Support Assistants:
James Luan, JL
Nicky Lin, NL
Chacrica [Rica] Pagadala, CP
John Spina, JS
Brody Waters, BW
Class and Open Shop Schedules
Section 1: [Wilt] JEC-4201, Monday/Thursday 10:00 AM - 11:50 AM
Section 2: [Rees] JEC-4201, Monday/Thursday 2:00 PM - 3:50 PM
Section 3: [Neti] JEC-4201, Tuesday/Friday 10:00 AM - 11:50 AM
Shared Lecture: Ricketts-203, Wednesday 10:00 AM - 11:50 AM
Open Shop:
Hour
Monday
Tuesday
Wednesday
Thursday
Friday
Sunday
10 AM
S1: AB PS
S3: AB ZD
Lecture
S1: AB PS
S3: BL ZD
11
S1: AB PS
S3: AB ZD
Lecture
S1: AB PS
S3: BL ZD
12 PM
AB PS
BL JH
ZY
AB PS
BL ZD
1
BL PS
BL JH
ZY
BL PS
ZD
2
S2: BL JH
ECSE-2010
S2: BL JL
3
S2: BL JH
ECSE-2010
S2: BL JL
JS ZD
4
ENGR-2300
ECSE-2010
ENGR-2300
JS ZD
5
ENGR-2300
BL CP
AR ZY
ENGR-2300
JS CP
6
BW ZY
BL CP HF
JH ZY
ZD ZY
CP NL
7
BW HF ZY
BL CP HF
JH HF
HF NL ZY
CP NL
8
BW HF ZY
HF JL
JH HF
NL HF
Students may attend other sections as needed; however, please do not take staff time away from students who need it in their official sections.
DO NOT Interrupt or attend other classes in JEC4201.
Holidays: Open shop hours will be cancelled on Holidays and the corresponding weekends.
There will be no Sunday open shop hours during vacations (Thanksgiving and Spring Break).
Pre-Requisite Courses and Programming Skills
CSCI-1100 Computer Science I (Preferred), OR
CSCI-1190 Beginning Programming for Engineers, OR
MANE-2110 Numerical Methods and Programming for Engineers
This course is not currently listed in catalog as a pre-requisite but is sufficient.
This course requires a substantial amount of programming. As such, it is necessary for incoming students to have a basic programming skill set. Two prerequisite courses are listed for this course (below); however, other courses and/or experiences may be used as a substitute.
The primary language that will be used in this course is C. It is not expected that any students have had experience in C; however, understanding of basic programming structures, such as if/else
statements, while
and for
loops, variables and functions from other languages (e.g., python or MATLAB) are easily translatable to C. Early Lectures, Activities, and Labs are designed to introduce the C syntax and other features of C that are necessary to understand.
Textbook and Hardware Tools
There is no required textbook for this course. All course content will be delivered through Lectures, Activities and Laboratory Exercises, with supplemental documentation provided through this website.
Each student is expected to have a USB multifunction instrument, such as:
ADALM1000 (NOT-PREFERRED - used in ECSE-1010 (formally), PHYS-1200),
ADALM2000 (PREFERRED - used in ECSE-1010 (current) ECSE-2010, ENGR-2300, etc.),
Analog Discovery (PREFERRED - previously used in ECSE-2010, ENGR-2300, etc.).
Laboratories will be completed using hardware provided within the laboratory. Students may optionally purchase these components (if they can be found).
MSP-EXP432P401R Launchpad Development Board, or “Launchpad Board”. * This board and contained microcontroller (MSP432P401R) have been discontinued, leading to extremely limited supply.
TI-RSLK Robotic Car, or “RSLK,” which has an MSP-EXP432P401R installed upon it.
Laboratories
There are five total laboratories required for completion of this course. Laboratories will either be completed upon a Launchpad Board or using a TI-RSLK Robotic Car. A description of each laboratory will be provided in the shared lecture or during the individual section meeting times. Students will be provided limited pseudocode within the laboratory document as guidance for implementing the lab. Laboratory documents will be posted here.
Each laboratory will require one or more “checkoffs” to demonstrate the required functionality; one checkoff per day of laboratory work. If a satisfactory checkoff is not obtained prior to the end off class, student teams will be able to receive a checkoff during Open Shop times prior to the next laboratory meeting.
The code produced for each lab must be submitted upon completion, and must be the final product; that is, working and unchanged from the final checkoff. Credit for the laboratory may be revoked if the submitted code is deemed unacceptable (for example: incomplete or does not compile).
Laboratories will be completed by teams of two students. Student Teams must satisfactorily complete all laboratories to receive a passing grade in the course with the exception that:
If a student or group fails to complete a single laboratory but has shown sufficient effort, a full letter grade penalty will be assessed as opposed to course failure.
If a student or group is unable to complete a laboratory due to extenuating circumstances beyond their control (e.g., class hardware faults), the instructor may grant leniency for the applicable laboratories if the affected students can show sufficient understanding of the required tasks.
Students are not prohibited from using AI tools in working on laboratories; however, the bulk of the development for the assignment must be done by the students, and students must understand any externally generated code. Further, appropriate attribution must be added for any such code
Final Project
The class will culminate in student teams building a comprehensive laboratory to complete the semester. The teams will select from predefined project descriptions or are free to propose their own final projects. The predefined final projects must be successfully complete by the end of the semester, however, a custom project will be granted leniency as unforeseen obstacles to a 100 % completion may arise. The final project must be documented with a thorough final report.
Activities and Homeworks
Most laboratory meetings will have class activities. These activities will be primarily individual based and are designed towards providing students with experience in using features of an embedded system that are introduced within the lecture. In-person activities should be completed priory to working on laboratories. Many activities will have additional tasks; for example, calculations, coding examples, etc., that will be completed as homeworks and submitted at a later time.
Quizzes and Exams
Short quizzes will be given periodically throughout the semester during laboratory times. These quizzes will focus on recent topics in the class. Two exams will be given during the semester during lecture time.
Rules Subject to Change:
Quizzes will be performed online, either through LMS or Gradescope; however, students are required to be in the classroom to take the quiz. The quizzes will be “open book”, e.g., any material provided in the class is accessible during the quiz. This include access to the Code Composer Studio IDE. No chat interactions or “AI” tools are allowed.
Exams will be performed on paper, with only a crib sheet provided. A practical exam portion may be scheduled for the laboratory class following the exam lecture. A decision on this will be announced well in advance. The practical session, if applicable, would test student’s embedded system knowledge, problem solving, and code understanding with small laboratory tasks.
Late Policy
Deadline extensions may be granted under exceptional circumstances and only with prior notification of the instructor or an official Dean’s excuse. Without an official extension granted:
Activity assignments will be accepted with a 50 % penalty if submitted late. Late activities must be submitted:
Prior to the semester “Catch-Up Day” if due prior to this day.
On the last day of classes if due on or after the “Catch-Up Day”.
Intermediate laboratory checkoffs are due as noted in the class calendar. No credit will be given for intermediate checkoffs after the due date.
Final laboratory checkoffs are due as noted in the class calendar and are required for satisfactory completion of the labs. A 25 % deduction on the checkoff credit will be assessed after the due date. Additional 25 % deductions will be added for each subsequent class
The final project report will not be accepted after the due date without exceptions granted by the instructor.
Quizzes and Exams must be taken in person and at the scheduled date and time.
Attendance and Participation Policy
Attendance during the laboratory classes is required. Explicit attendance will be taken randomly throughout the semester but will not be taken each class period. The means by which attendance is taken will be announced as applicable. A 1 point penalty on a students final grade will be assessed for each missed attendance, excluding excused absences.
Attendance during lectures is not strictly required.
As laboratories are completed in teams, it is expected that each group member contribute roughly equal contributions to the effort. After each laboratory is completed, each group member will be asked to submit a breakdown of member contributions. These breakdowns will be reviewed by the course staff to identify group balance issues and to intervene as necessary.
The submitted reviews, as well as staff observation and attendance, will be used to generate the associated grading component.
Partners, Teamwork, and The Learning Community
Students will either submit work individually or as a team as specified for each assessment. Interaction between students and/or teams is allowed and encouraged; however, all work completed by the student/team must be their own work. Students are expected to avoid collaboration on assignments, copying, and/or plagiarism. Please see the course Syllabus for more information.
Any assignments that have been identified as violating the Academic Integrity policy will be assigned a 0 for all parties involved, with multiple violations or egregious violations resulting in immediate student failure and referral to the Dean of Students.
Students in this course should be aware that the items emphasized above also apply to the source code generated by each student towards the completion of the laboratories and final project. Tools exist to detect similarities between source code files and the staff reserves the right to employ such tools to deter and detect source code based academic dishonesty.