• It is fun!
• It helps to put across ideas better
• It is what actually works!
Why this Workshop
• To get people started with prototyping
• Experience the joy (and intermittent frustrations) of making.
• Experience the joy of a space where everyone is having fun
and making stuff together!
• Not a one to many but a many to many workshop! (people
who know stuff should chip in – we are in this together).
• Some introduction on Arduino and Processing
• Idea generation
• Thinking of how we will actually prototype it (a schematic
A very strong online platform
Lots of libraries
Very low learning curve
A very good graphical tool
Android, Kinect capabilities!
A lot of cool projects!
• External supply of 6 to 20 volts. If supplied with less than 7V,
however, the 5V pin may supply less than five volts and the board
may be unstable. If using more than 12V, the voltage regulator may
overheat and damage the board. The recommended range is 7 to
• VIN. The input voltage to the Arduino board when it's using an
external power source. This is where you put in the red lead of a
battery. If supplying voltage via the power jack, access it through
this pin. There is a regulatory circuit within Arduino that then makes
sure that there is just 5V from the 5V pin. You can directly add it to
the 5 or 3.3V but then you are bypassing the regulator- can be
• Analog Pins: Read analog data from sensors. (Can be
configured to work as digital, but not required – esp on a
Mega). When doing so, they are referred to as A0, A1, etc.
• Digital Pins: Can be set to INPUT or OUTPUT mode (HIGH
– 5V, LOW – 0V) (Default mode is INPUT).
• Digital input – generally for push buttons, output for
• Arduino has a certain PWM
frequency (green lines – i/f).
• Pulse Width – on time
• AnalogWrite (255) – 100% duty
cycle – always on.
• AREF. Reference voltage for the analog inputs.
• Analog sensors give you a range of values (for Mega i think it
is 0-1023). These are basically based on the voltage at the
particular pin- there is a 10 bit analog to digital converter that
then sends values to the computer.
• By default the mapping is 0 – 0V, 1023 – 5V
• To change this mapping, we use AREF.
• Firmata –
Firmata is a generic protocol for communicating with
microcontrollers from software on a host computer.
How do we write a sketch?
int ledpin = 13;
void setup() - runs once
void loop() – runs infinitely many times