Final Project Technical Details

Spring 2020

You are not logged in.

If you are a current student, please Log In for full access to the web site.
Note that this link will take you to an external site (https://shimmer.csail.mit.edu) to authenticate, and then you will be redirected back to this page.
Back to Final Project Overview

1) Technical Logistics

This page describes:

  • Details on the server-side code for your project
  • Parts ordering for the project

2) Google Drive folders

We'll be sharing files via Google drive. Each team will be given their own folder to share materials with each other and with their mentors, and there will be a class-wide folder as well. Your team folder is where you'll upload project proposal, final report, code, etc.

3) Server-Side Code

Your server-side work should be done primarily in Python (we do not want Node JS. There's nothing wrong with Node JS, but we want it in Python for this course to keep in-line with curricular goals. If you have particularly demanding server requirements, we can discuss getting you set up with resources outside of the 6.08 sandbox as needed)

3.1) Python modules

The sandbox where your code runs is set up to allow import of any python modules we've already used thus far in the class (like datetime, math, random, Requests, BeautifulSoup, etc.). If your project requires a specific module that we haven't already used, post to Piazza and we'll add it in for sure.

4) Version control

Your projects will have four people all contributing to the same files. To keep track of changes, it is useful to use a version control system. We'll provide instructions on using Git for groups to use in lab08a.

5) Hardware Parts

We encourage you to augment your embedded system with new sensors and/or output devices (aka actuators, displays, etc.). You can use your team budget to do this.

Small parts like resistors, capacitors, some types of LEDs and certain chips, etc... we will already have in stock and don't need to count towards your budget (we buy capacitors in bulk so they cost pennies a piece...if you buy individual capacitors they cost dollars a piece)

To request a part to be ordered, add a line to the spreadsheet in your folder. Include the date on which you add the line, so we can tell old requests from new requests. We'll make a big order at the start of the project period, and addition orders as-needed. Be ready to justify why you need the part (not that we're going to question you, but if we can replace it with a part we already have we will, though if you really need that particular part that's fine too).

For all parts, if you need simultaneous development capabilities, make sure you order at least 4 (if it is a cheap part). For example Everyone on the team should be setting up a complete system.

For inexpensive parts, plan for breakage. If a part costs $2, order more than you'll need to so minimize downtime from re-ordering.

Back to Final Project Overview