EE 476: Laboratory 6
 
 Design project. 
 Introduction.  
 For this exercise, we want you to pick a project, then design and build it. 
  During this period there will be no other assignments, so we expect you to spend 
  all of your time for this course on the project. You will be expected to be 
  in lab at the usual times and to show significant progress each week of the 
  project. Each week in lab a one-page progress report will be due. The members 
  of a group may be graded differentially if it becomes obvious to the staff that 
  one person is doing the bulk of the work.
 When choosing a project you will need to consider availability of hardware, 
  time available, a monetary budget, and your programming skill. You may want 
  to look at several of the links on the 476 home page for project ideas. 
Procedure: 
 Depends on what you will build. You should talk often to your lab instructor. 
  You can use either ASM or C or a mixture of the two. Your project will be limited 
  to using one STK-500 development board at all times. If you need more 
  than one cpu, you will have to build a prototype 
  board, which will count against your budget. 
 Budget considerations: Your budget will include MCU(s), boards you build, 
  power supplies, parts you order, and everything else you buy. Exceptions: any 
  hardware you already own, or can sample, or can scrounge. If you use old hardware, 
  you must be able to prove that you owned it before this semester. I will order 
  parts from the following vendors once/week:
  - digikey.com Very good inventory and parts 
    search capability. Hsa linked data sheets.
- jameco.com Some robotics and mechanical 
    stuff. Interesting collection of sensors.
- allelectronics.com Surplus displays, 
    motors, switches. Good LCD prices.
- mpja.com Surplus displays, motors, valves, 
    mechanical. 
Good places to find samples:
Budget Details:
  - The total budget this year will be $70 per group.
- Costs: 
    
      - STK500 $15
- white board $6 -- solder board with the same layout as a white board 
        $2.50 
- power supply $5
- custom 
        PC board $5
- MAX233CPP RS232 driver+RS232 connector for custom PC board $8.
 If you sample the MAX233 from maxim-ic.com, 
        the cost drops to $2 for just the connector.
- Mega32 $8 
- Mega16 $5
- Mega163 $2
- AT90S1200 or 8515 $1
- Max233CPP $5 (unless you sample it)
- LCD (16x2) $8
- Keypad $6
- Transmitter RCT-433 $4
- Receiver RCR-433 $4
 
- Penality for being overbudget: deduct points=((cost-70)*0.316)2 
     If cost>$70 
Protoboard considerations for the Mega32: 
  - Use 22 pf capacitors with the crystal.
- Set the clock select Fuze bits to unchecked in the the "Project...Configure..AfterMake" 
    dialog window. 
 Note that is is different than the fuze setting used on the STK-500.
 Setting theCKOPTfuze bit may make it easier to get a strong, 
    stable clock running.
- Connect a 0.1 microfarad disk ceramic capacitor between ground and Vcc as 
    close to the Mega32 as possible. 
- You must connect AVcc to Vcc, even if you do not use the A/D converter.
A group 
  in 2002 added the following thoughts. 
 Here are the top 10 things you can do to survive EE 476 Final Project Month: 
 1. If you use a chip other than the one you've been using in class all semester, 
  read the documentation thoroughly, subtle differences are going to kill you. 
  It's just a matter of for how long they kill you.
  2. If you feel heat from your board, or smell burning: THERE IS A SHORT. Don't 
  look for the short first. TURN OFF THE POWER!
  3. If the voltages look right, and the wiring looks right, but nothing's happening, 
  it is possible that your chip is fried, don't be afraid to ask for another chip. 
  This would've saved me a week of pain, and a bad hit to morale.
  4. If you're stuck on something, ask Bruce or the TA's. Make a reasonable attempt 
  to solve it yourself, but don't sit there for three hours just because you cannot 
  remember which port of the opamp is correct. Remember, we all look like we're 
  working, so Bruce's spider sense won't kick in. You must call him, he can't 
  call you.
  5. Order parts early. Order duplicates if you can afford it.
  6. If you're going to solder onto a perf board, you don't have to rip apart 
  your breadboard. Just make another copy of the circuit.
  7. You will not finish if you don't start early.
  8. You probably won't finish if you don't take advantage of extended lab hours.
  9. Do what you can do out of lab out of lab.
  10. Seriously, pick a project you'll enjoy. These four weeks can be pain, or 
  the most fulfilling of your Cornell Career.
A group in 2003 
  added this:
Know your limits. As much as we'd all love to have a final project whose bells 
  and whistles rival Las Vegas slot machines, realize that a month is a very short 
  time, and that dealing with the disappointment of having to scale back your 
  project as you progress along is much better than coming to the same realization 
  on the day of your demonstration.
 Assignment  
 Grades will be assigned by rank-ordering all projects in all sections, thus you will be competing against everyone in the class for this grade. You will be graded on several aspects of the project: 
  -  Appropriate level of hardware/software complexity. 
  
- Appropriate use of assembler and C. 
  
-  A project which works according to specification (which you will write). 
  
-  Level of effort and organization shown in lab. 
  
- Ability to say within budget. 
  
-  A demonstration of the final project during the 
    last regular scheduled lab period of the semester. The demonstration 
    will include an explanation of your web page describing the project. 
  
-  Completeness and understandability of the final report. The report must 
    be handed in when you do the project demo during 
    your last regular lab period. The report which you hand in must 
    be printed directly from a web page which you construct. Documentation 
    must include: 
    
      -  Introduction 
        
          - One sentence "sound bite" that describes your project.
- A summary of what you did and why. 
 
-  High level design: 
        
          - rationale and sources of your project idea
- background math
- logical structure
- hardware/software tradeoffs
- Relationship of your design to available IEEE, ISO, ANSI and other 
            standards.
- Discuss existing patents, copyrights, and trademarks which are relevant 
            to your project.
 
-  Program/hardware design: 
        
          - program details. What parts were tricky to write?
- hardware details. Could someone else build this based on what you 
            have written?
- Be sure to specifically reference any design or code you used from 
            someone else.
- Things you tried which did not work
 
-  Results of the design: 
        
          -  speed of execution (hesitation, filcker, interactiveness, concurrency)
- accuracy (numeric, music frequencies, video signal timing, etc)
-  how you enforced safety in the design.
- interference with other people's designs (e.g. cpu noise, RF interference)
-  usability by you and other people
 
-  Conclusions: 
        
          - Analyse your design in terms of how the results met your expectations. 
            What might you do differently next time?
- How did your design conform to the applicable standards.
- Intellectual property considerations. 
            
              -  Did you reuse code or someone else's design?
- Did you use code in the public domain?
- Are you reverse-engineering a design? How did you deal with 
                patent/trademark issues.
- Did you have to sign non-disclosure to get a sample part?
-  Are there patent opportunites for your project?
 
- Ethical considerations. Refering to the IEEE 
            Code of Ethics, specifically explain how decisions you made or 
            actions you took in this project were consistent with this Code of 
            Ethics. There are ten points in the Code. Direct your comments to 
            at least 5 of the ten, as appropriate for your project.
- Legal considerations. If you use a transmitter, you must discuss 
            the appropriate FCC legal restrictions.
 
-  Appendix with commented program listing 
      
-  Appendix with schematics (you can download free software from expresspcb.com 
        to draw schematics)
      
- Appendix with cost details with all part numbers and their price. This 
        cost will include components supplied by the lab, including MCU and power 
        supplies but excluding the STK500. 
      
- Appendix with a list of the specific tasks in the project carried 
        out by each team member. 
      
- References you used: 
        
          - Data sheets
- Vendor sites
- Code/designs borrowed from others
- Background sites/papers
 
 
The web page may optionally be submitted 
  for inclusion on the class web page.
  If you wish to do this:
  -  Put all of your web page files in one directory.
 Since the pages will be on a UNIX server, you should:
      - Make sure the cases (upper/lower) of all filenames agree with their 
        hyperlinks. 
- Use only alphanumeric characters, periods, and underscores in filenames. 
      
- Check all your links to make sure they are relative to your main page. 
      
 
- ZIP the directory.
- email it to BRL4@cornell.edu.
 Copyright Cornell University Dec 2004