MicroPs Final Project Requirements

Overview

The E155 Final Project is a chance for you to apply your new skills in digital design to a moderately-sized problem as part of a two- or three-person team. You should begin thinking about a project and teammate right away. Your project has the following deliverables.

Date Deliverable Notes
10/27 Project Proposal Due via Canvas
10/31 & 11/2 Proposal Debriefs During lab checkoff times
11/7 & 11/9 Presentations During class
11/16 Midpoint Report & Demo During class time and lab slot
12/5 & 12/7 Final Checkoffs During lab checkoff times
12/7 Final Report Website Due by end of day
12/8 @ 2 pm Demo Day Public event to show off projects

Project Scope

Be creative when selecting your project. Your project should be bigger than a 1-week lab assignment, but small enough to be doable. If in doubt, err on the side of smaller. You will fail the class if you undertake a project that is too big and produce no completed work.

A successful project will use both the FPGA and MCU and will perform a function that is useful or interesting. You also must use a new piece of hardware in your final project (various sensors or displays are popular choices). You can find examples of past final projects on the class web page. Examples include games, electromechanical systems, prototypes for a startup company, or elements of a Clinic project (with your advisor’s permission).

Budget

If your team needs parts that are not available in the stockroom, you may spend up to $50 to purchase them. You will need to save your receipts, fill out a reimbursement form available from the department website, and have me approve the reimbursement (list me as the faculty advisor on the form). You may exceed this budget, but you must pay the remainder out of your own pocket.

Deliverables

Your team is responsible for the following deliverables at the dates described above:

Project Proposal

A 2-page proposal describing what you plan to build. It must be specific enough that I can tell when you demonstrate your project that it meets the specs of the proposal. Do not list stretch goals or wiggle words; simply state what you are committing to deliver. You may need to do some preliminary technical work to gain confidence you can deliver what you promise. Include a bill of materials with the parts you expect to need along with prices for any supplies that are not available in the stock room. Describe the main subsystems of the design and the features of the MCU that you plan to use. Explain the new piece(s) of hardware and show that both the FPGA and MCU are performing nontrivial functions appropriate to each. Include a block diagram showing the components and the interfaces between each.

Midpoint Report & Demo

A 4-page report (plus appendices) documenting your design at the midpoint. Your report should be submitted before your scheduled checkpoint slot. The status report should include:

  • Schematics of anything on a breadboard,
  • Block diagrams of the logic on your FPGA,
  • An outline of the routines used on the MCU.

You should include as an appendix either your Verilog code or software that is mostly complete (but do not have to have both ready). You must be ready to demonstrate some working hardware in the lab.

Presentations

Your team will sign up for a 10-minute in-class presentation shortly after your proposal debrief. Your presentation should include a 3-minute overview of your project followed by an in-depth presentation of a specific technical problem your team is working on and has not yet solved. The goal of the presentation is to get input from other students who might have ideas of how to solve your problem so you must explain the problem clearly enough to get meaningful suggestions back.

Project Demonstration

Demonstrate a working project to the instructor in the lab. There will be signups for demonstration periods, during which you will show that you meet your specifications and be asked technical questions about the operation of your design. Come prepared with printouts of your schematics, software and Verilog. If your project is one day late, one letter grade will be deducted.

Final Report

The final report for this project will be a portfolio website hosted on Github pages. The website should document your design with all source code in the linked Github repository. Clearly explain how your design works. If you have developed techniques that would be useful for students in the future (e.g., how to interface to an LCD display), document these features well so that future students may build on your work.

The website should include:

  • Complete schematics and block diagrams
  • Well-commented and cleanly-formatted code (C and Verilog)
  • Photos of your finished design
  • A video (hosted in the provided Google Drive folder) demonstrating your project. Any videos should be titled “<LastName1><LastName2><VideoName>” to clearly identify your videos in the folder.

Late projects will not be accepted except in the case of unusual extenuating circumstances. Be careful to choose a project within a scope that you can reasonably expect to finish. If you realize your project is too large, contact me as soon as possible to renegotiate your project proposal. I will not accept revisions to the proposal after the Friday following the in-class presentation.

Grading

Your project will be graded according to the policy laid out in the syllabus. For reference, that policy can be found here.

If you feel there has been inequality between the work you and your teammate deliver, contact me personally.