Updates (2012)
Penguing = HID Bluetooth Keyboard
Bluetooth Modem – BlueSMiRF HID >> http://www.sparkfun.com/products/10938
Bluetooth (and Wifi) Communication Protocols between Penguin and Computer Application
Penguin to computer:
tilt back –> up cursor
right –> right cursor
tilt left –> left cursor
tilt upright –> down cursor
accelerometer shake –> sh#### (or 4,5,6) shake intensity
squeeze –> enter key + sq#### (or 1,2,3) intensity of squeeze
stroke –> space bar
beak button –> “B”
Computer to penguin:
vibe(intensity, duration)
melody(melody#, volume, duration/repeat)
ledRGB(red[0-255], green[0-255], blue[0-255])
ledMode(0=off,1=on,2=blink,3=fade)
ledBlink(duration on, duration off)
ledFade(duration on, duration off)
Sensors (inputs)
Arduino pro mini: 16 (or 20) digital i/o, 6 analog in
– 4-way tilt sensor in head or body (digital, 4)
– 3-axis accelerometer in head or body (analog, 3)
– knit squeeze sensor in tummy (analog, 1)
– fabric pushbutton in beak (digital, 1)
– neoprene bend sensors in wings (analog, 2)
– stitched stroke sensor on head (digital, 1)
total inputs: 12
Actuators (outputs)
Arduino pro mini: 16 (or 20) digital i/o, 6 PWM outputs (pins=3,5,6,9,10,11)
– RGB led as heart in chest (PWM, 3)
– vibration motor in body (PWM, 1)
– speaker in head (digital, 1)
total outputs: 5
Updated schematic (incorporating all of the above):
Debouncing code for tilt sensors >> http://arduino.cc/en/Tutorial/Debounce