ECE 443 – Distributed Processing and Control Networks (Fall 2023)
Policies
All assignments are due at the start of class on the specified due date. Late assignments will not
be accepted without prior approval. Each assignment should have your
name,
the course number, the date, and the assignment designation (e.g., HW1,
etc.).
Attendance is mandatory. Students who miss
five or more class periods
will automatically receive a final grade of F.
Electronic Submission
Assignments will specify a particular submission format. These
are generally either (a) a single PDF file and/or (b) a zip archive.
PDF submisions should be uploaded as a single PDF file to the
appropriate assignment in Canvas. MPLAB projects and other submissions
involving binary files should be shared via your UI OneDrive account as
a single zip file using the following naming convention (all lowercase): vandalusername_course_assigment.zip.
For example, vand1234_443_p1.zip would
be shared from Joe Vandal's OneDrive account, representing his MPLAB
project folder for Project 1 in ECE443. Assignment designators are
"h#" for homeworkor "p#" for projects.
Reading
Homework and Quizzes (10%)
Homework will be collected and graded throughout the semester. Students
may
work together on homework and should check their answers against the
posted
solutions. There may also be unannounced quizzes periodically, perhaps
even
daily! It is your responsibility to make sure you are prepared for
every
class.
- Aug 28 - Develop a software system (see ECE 341
Lab 4)
on the ECE 341 Lab Platform that toggles LEDA and LEDB at different
intervals, depending upon buttons 1 and 2 and specified as
follows : No buttons pressed - both LED off; only BTN1 - LEDA
toggles every 10 ms, LEDB every 15 ms; only BTN2 - LEDA every
20
ms, LEDB every 5 ms; both buttons - both LED every 10 ms.
Capture
appropriate waveforms using the logic analyzer and submit as a single PDF file with
a one paragraph report summarizing your experience. The PDF is submitted via Canvas. No need to share the MPLAB project.
- Sep 1 - Download the FreeRTOS zip archive from the FreeRTOS section of the 443 Handouts directory and download the "blinky" repository
into the "Projects" folder and follow the instructions on packaging
your project below. Execute
the MPLAB project and observe the behavior on LEDA and LEDB: What does
this “instrumentation” say about the task execution behavior? Following
the naming instructions under "Electronic Submission" above, submit a single PDF file summarizing your findings via Canvas.
- Oct 3 - CRC calculation
- Oct 11 - Download the CAN repository into
your FreeRTOS "Projects" folder and run the demo. Use Digilent
Waveforms to capture the LED behavior and CAN message exchange by
monitoring CAN1 RX on Pin 1 on connector JF on the Cerebot board. Please submit via Canvas a PDF with your captured waveforms. No discussion required - unless you encountered a problem!
- Nov 7 - Wireshark. Upload a PDF to Canvas by 10 pm PT
- Nov 17 - Download the tcp_timer repo as a zip file and build in the Projects folder under FreeRTOSv202104.00. Configure PuTTY
appropiately and connect via TCP to the PIC32. Upoload a single PDF to
Canvas by 10 pm showing Wireshark capture and the PuTTY window during
execution.
Projects (65%)
There will be projects throughout the semester, selected to complement
the
lectures. Students are to work independently unless specified
otherwise, and contact the instructor if
they have questions. Project packaging instructions.
- Sep 5 - Project 1.
Code due by10 pm PT. Report (single
PDF file!) due before the next class period
- Sep 11 - Project 2. Share code via OneDrive by 10 pm PT. Upload single PDF report to Canvas before the next class period
- Sep 20 - Project 3. Share code via OneDrive by 10 pm PT. Upload single PDF report to Canvas before the next class period
- Oct 5 - Project 4. Share code via OneDrive by 10 pm PT. Upload single PDF report to Canvas before the next class period
- Oct 29 - Project 5. Share
your project folder via OneDrive by 10 pm PT. No report, Doxygen, or
Tracealyzer requested! :-) Demo in lab during class on Oct 30.
- Nov 15 - Enhancements to Web-Vending Machine. Share code via OneDrive by 2:30 pm.
- Dec 1 - Remote Control via TCP. Demo in lab during class. Share code via OneDrive beforehand.
- Dec 7 - Download
the mqtt_demo.zip file from the Handouts/MQTT folder of my OneDrive,
make the modifications specified in main.c, build, and run. Upload a
single PDF to Canvas by 10 pm of a screenshot of the HiveMQ web client
with your subscription data published by the PIC32.
Exams (25%)
There will be two exams: a midterm and a comprehensive final,
weighted equally. Handwritten
material permitted, but no
printed material unless otherwise specified, i.e., open notes/closed "book". Please bring
your own paper,
pencils,
and an eraser to each exam.
- Oct 16. Topics list
- Final Exam. Mon, Dec 11, 3-5 pm. Topics list
Grading
Course grades will be available through Canvas. Final grades will be
calculated using the traditional scale (90%=A, 80%=B, etc.).
Handouts
Available on OneDrive.
Reference Material