A creepy doll with red leds instead of eyes.
The eyes blink 3 times in a cycle when she is moved around.
She was built in my beginnings and needs an update. She burns through 3.3V batteries like crazy.
Official GitLab Source
Simple blink
Wire two leds to pin 0 of atTiny85. Wire two 220 Ohms resistors between each LED and GND.
Each LED should draw a max of 20 mA from the pin which keeps it just under the 40 mA limit.
If you want to wire more LEDs, look into other techniques or use other pins.
Simple arduino code
int led = 0; // LED pin
int brightness = 0;
int fadeAmount = 5; // points to fade LED by
void setup()
{
pinMode(led, OUTPUT); // init led
}
void loop()
{
fadeEyes(); // blink the eye thing
}
void fadeEyes()
{
analogWrite(led, brightness);
if (brightness == 255)
{
delay(1500); // stay a bit on full bright led
}
brightness = brightness + fadeAmount;
//reverse direction at start & end of fade
if (brightness == 0 || brightness == 255)
{
fadeAmount = -fadeAmount;
}
// wait 30 miliseconds to see changes
delay(30);
}
First arduino Code
#import <Arduino.h>
int led = 10; // LED pin
int sensor = 2; // Tilt sensor pin
int brightness = 0;
int fadeAmount = 5; // points to fade LED by
int storedVal = 0; // Store value of sensor state
void setup()
{
pinMode(sensor, INPUT_PULLUP); // init sensor as pullup
pinMode(led, OUTPUT); // init led
}
void loop()
{
int sensorVal = digitalRead(2); //Read sensor state
if (sensorVal != storedVal) // if things have moved
{
storedVal = sensorVal;
fadeEyes(); // blink the eye thing
}
else //if not turn led off
{
digitalWrite(led, LOW);
}
delay(10); // debounce for sensor
}
void fadeEyes()
{
for (int i = 0; i<312; i++) //unexplainable cycle value
{
analogWrite(led, brightness);
if (brightness == 255)
{
delay(750); // stay 3 seconds on full bright led
}
brightness = brightness + fadeAmount;
//reverse direction at start & end of fade
if (brightness == 0 || brightness == 255)
{
fadeAmount = -fadeAmount;
}
// wait 30 miliseconds to see changes
delay(30);
}
digitalWrite(led, LOW);
}
Instructables project