You’ll need some electronics components to complete the work in this course. If you’ve done any electronics or microcontroller project development, you may have many of the parts already. We’ll be working with the Arduino microcontroller platform, and you should be able to do the lab exercises for the course on most any Arduino-compatible microcontroller. The labs were written using an Arduino Uno, so that board is compatible with every lab. However, the Arduino 101, the MKRZero, MKR1000, and the Adafruit Feather M0 Basic Proto are more capable processors in the same price range that you’ll see frequently in class. You may want to use one of these instead. We have a guide to picking a microcontroller that may be helpful for more information. You can use any variant that you choose, as long as it works. If you’re using a variant that your instructor has never seen, however, you’re on your own. We’ll do our best to support you, but we can’t promise to know every controller on the market.
If you’ve never done any of this before, you might want to get a starter kit. Having tried and evaluated several of the starter kits for Arduino, we recommend two: the Arduino Starter Kit, or the The Adafruit ARDX kit. Both are available from adafruit. The Arduino Starter Kit is available from other distributors as well. While the Adafruit kit is less expensive, the Arduino kit includes a detailed book written by Scott Fitzgerald, who teaches this class. The book contains a series of projects that help you understand not only the electronics, but also what you can do with a microcontroller. If you prefer to shop for your own parts to save a little money, see the list below.
For the in-class lab exercises, when there’s a specialty module needed, like a radio or a specific microcontroller, we’ll have stock on hand to lend for the class period, so you can try things out before you buy them for your own projects.
There are some electronics components available in the physical computing lab cabinet. Please don’t hoard parts, so that we always have some available for everyone. We try to keep more expensive modules, like microcontroller boards and radios, available for loan as well, though there is no guarantee that these will be available right when you need them.
You will also need some hand tools. The shop has tools you can use, but there are a few tools you should pick up for yourself. These are common tools, and you can find them at any electronics retailer or hardware store. Below are a couple of examples of each, from different retailers.
|screwdriver||diagonal cutter||wire stripper||needle-nose pliers||digital multimeter||drill bits|
|screwdriver & bit set||diagonal cutter||Multi-size wire stripper||simple pliers||digital multimeter||basic drillbit set|
|reversible screwdriver||diagonal cutter||30AWG wire strippers||Needle-nose pliers||digital multimeter-basic|
If you don’t want to buy a full drill bit index, you should at least pick up the following: 7/64″, 1/8″, 5/16″, 1/4″. You’ll use these a lot, and to avoid other people dulling or breaking your bits, get your own. They’re cheap, and it’ll save you hours of aggravation.
For more information on parts, see the Suppliers page.
Here’s a list of parts mentioned in all of the labs. You can get the labs done with relatively few parts, as they’re designed to illustrate principles, not to show you how to build a whole project. You will need to buy other parts for your projects, in all likelihood. For those who prefer not to buy a starter kit, here’s the minimum you’d need to understand the principles in the labs. A full spreadsheet of this table, with vendors for comparison, is at this link.
|Arduino 101 or MKR1000 or Arduino Uno or Feather M0 Basic Proto||1||You might use a couple during the semester|
|Breadboard and supplies|
|22-AWG hook-up wire||See note||red black and blue minimally. There are many jumper wire kits you can get and we always have wire on spools you can cut off in the shop|
|Potentiometer||4||you'll use these all the time|
|Light dependent resistor||4-6||[no image]||Photodiodes also work great for this purpose|
|Pushbutton/switch||6||You'll use many different types of these|
|Tilt switch||optional||fun for motion projects|
|force-sensing resistor||2-3||You might use more eventually. These are handy|
|stretch sensor||optional||the top sensor in this image is the stretch sensor|
|TMP36 temp sensor||optional||[no image]|
|Light Emitting Diodes||12-20||get many colors|
|Resistors||dozens||Get 220 ohm; 1Kilohm; 10kilohm at least|
|power diodes 400x||4-6|
|Capacitors||6-10||[no image]||get 0.1uF; 1uF; 10uF; and 100uF|
|IRF520 transistor||optional||[no image]||good substitute for TIP120|
|NPN2222 transistor||optional||[no image]|
|L293NE or SN754410 H-bridge||1||for controlling DC motors|
|DC motor||1-2||5-12V; 1A or less|
|8-ohm speaker||1||You can probably salvage one from junk|
|Incandescent lamp and socket||optional|
|Advanced Sensor modules|
|Accelerometer/Gyrometer||1 (but see note)||If you get an Arduino 101 this is built in.|
|Temp sensor||optional||[no image]||I2C sensor. Not just an analog input. For synchronous serial lab|
|Light sensor||optional||[no image]||I2C sensor. Not just an analog input. For synchronous serial lab|
|Barometric Pressure sensor optional||[no image]||I2C sensor. Not just an analog input. For synchronous serial lab|
|IR ranger||1-2||useful distance sensor. Bottom sensor in image is IR ranger|
|Ultrasonic ranger||optional||top sensor in image is ultrasonic ranger|
|Flex sensor||optional||a staple for measuring finger bend|
|AD5206 digital potentiometer||optional||for SPI lab|
|Power Supply & Connector|
|7805 5V Voltage regulator||2-3|
|3.3V voltage regulator||1-2||[no image]|
|DC Power Jack||1||Match your DC power supply. We use 2.1mm inside diameter; 5.5mm O.D. most commonly|
|DC power supply||1||9-12V DC 750 or higher mA. You might have one at home.|