Technical Writing

Your proposal, writeup, etc, should completely describe the technical aspects of your project. Good technical writing should include textual descriptions, block diagrams, circuit schematics, mechanical drawings, and other details (as appropriate). Browsing through patents at the US Patent Office is one source of examples (both good and bad). In particular, Professor Leeb's patent 6,198,230: Dual-use Electronic Transceiver Set for Wireless Data Networks has good examples of the kind of stuff we're looking for.

Final Project Ideas

These are just some ideas to help you think about the different ways that you can use a micrcontroller and to help you come up with a project idea. Many of these are not complete projects on their own, or may be too difficult.

USB

  • Allow MINMON to download new code via USB instead of RS232
  • Make a USB host and interface with USB devices (eg. keyboards, storage, PDAs)
  • Build a USB analog to digital conversion board
  • Make an 8051-based USB to something else adapter

PC Interfaces

  • Build an IDE bus and interface with CD-ROMs or hard drives
  • Interface with some ISA card (eg. VGA card, network card, etc)
  • Talk to PS/2 keyboards and mice
  • Read from and write to floppy disks or tapes

Audio

  • Make a multifunction DSP to process audio in various ways
  • Make a modem (eg. 300 baud, acoustically-coupled)
  • Build a player for MIDI, MOD, S3M, or some other tracked music format

Light

  • Build a device that sniffs ethernet traffic from an ethernet card's LED by using a phototransistor.
  • Build a "learning" remote control that can record and playback IR signals
  • Use the 8051 to control your home PC via IR remote

Cards and Codes

  • Build a magnetic-stripe card decoder
  • Decode barcodes with an LED and a photodiode
  • Make a smartcard reader/writer

Security

  • Make a cryptographic processor to encrypt/decrypt data in realtime
  • Crack encryption with the 8051 or 8051-controlled hardware
  • Build a hardware token to provide secure authentication

Gaming

  • Emulate a Atari 2600 or other early gaming system
  • Build an interface to use a console game controller with a PC or vice versa
  • Record game controller button presses and play them back later
  • Recreate a vector-based video game on a scope (eg. asteroids)
  • Build an interface that allows you to download and run arbitrary games on an NES
  • Write some AI and make an appropriate interface to play a computer or board game

Other Languages

  • Write an 8051 Java or BASIC interpreter
  • Emulate some other CPU on the 8051
  • Develop a new 32-bit instruction set and write an interpreter for it

Other Chips

  • Add and use a math coprocessor such as the 8087
  • Build a general-purpose (EE)PROM / flash burner

Communications

  • Make a "software radio" that digitally tracks an FM carrier and tunes the RF circuits to the appropriate frequency.

Mechatronics

  • Have the 6.115 robot arm perform a complex task.
  • Create an 8051 based motor controller.
  • Have the 8051 control a servo system.

Amulet Board

  • Make a reconfigurable TV remote control using the Amulet board.
  • Use the drawing capability on the Amulet board to control some other device or system.

Other Sources Of Ideas

The following sites are good for generating ideas, but your project should contain your own unique work.