You must keep a journal. Write down ideas and questions, problems that are encountered and solutions that solved those problems.
Donate any old electronic toys— these are good for hacking. Even if you're not interested in
opening or using the old toy, someone else might be.
/ / What are we going to do?
We're going to design circuits that control input and output. We'll
need to build switches in a way that the user triggers
them in the course of their normal actions.
In other words, we will have to build switches into an object for the user to touch.
Two pieces of metal that can touch and can not touch.
If you separate two pieces of metal by rubber foam with holes, when you apply pressure, the metals will make contact through the holes. If you attach leads to the metal and connect one to power and one to ground, you have a switch.
You'll also have to think about the kind of inputs and outputs you want in terms of analog (how much) or digital (true/false).
Digital = "whether or not" (Is the cat on the mat or not?)
Analog signal = "how much" or "stronger", "faster","brighter" (How heavy is the cat that's on the mat?)
Input is easier than output. When you design output, you have to consider voltage—how much voltage your output needs. LEDs and Piezo buzzers are fine running on 5V or less, but what if your circuit requires more than 5V (Your microcontroller only outputs 5V).
To work with larger voltages, you can use relays and transistors.
/ / Some Terminology
sketch—a program you write to run on an
Arduino board
pin—an input or output connected to something.
e.g. output to an LED, input from a knob.
digital—value is either HIGH or LOW.
(aka on/off, one/zero) e.g. switch state
analog—value ranges, usually from 0-255.
e.g. LED brightness, motor speed, etc.