Press to light with EagLED
Read an active-low button and make the left eye follow your finger.
Read an active-low button and make the left eye follow your finger.
Designed for the intact EagLED v1.2 with buzzer. Start with USB power; no cutting or sewing is required.
Step 1 — Prepare the intact EagLED
Use an intact black EagLED v1.2 with buzzer, a micro-USB data cable and a computer. The LEDs, button and light sensor are already connected by PCB traces. You do not need jumper wires, a breadboard, external resistors or a separate Arduino.
Keep the board uncut for this project. Place it on a dry, non-conductive surface. Leave the battery socket empty, connect USB and move the main board switch to ON. Move the separate switch beside the buzzer to OFF for quiet LED and sensor experiments.
The 3D view follows this starter program and its controls. It illustrates the mechanism; it does not execute changes made in the code editor or measure a connected board.
Step 2 — Explore the result in 3D
Hold the triangular button. The left eye should stay on while pressed and switch off when released. The centre reset button restarts the board instead. Drag to orbit, inspect a named component, and use Top or Underside to follow the real board layout.
Step 3 — Program your EagLED
The English IDE below opens with Little Bird EagLED and Arduino C++ selected. Read the English instructions beside the supplied program, then press Verify to compile it for this board.
To program your physical board, download the same sketch below and open it in Arduino IDE. Install the Little Bird AVR board package, choose Little Bird EagLED and its USB port, then Verify and Upload. Follow the EagLED setup guide if this is your first upload. Upload replaces the factory light pattern.
EagLED uses an ATmega32U4 at 8 MHz. Do not choose Uno or a 16 MHz Leonardo profile. Its USB port can change while the bootloader is active. If upload fails, check the selected port and retry after pressing the centre board’s reset button. The triangular project button is not reset. Close any browser serial connection before uploading from Arduino IDE.
Step 4 — Keep a copy of the complete program
const byte BUTTON_PIN = 2;
const byte EYE_PIN = 3;
void setup() {
pinMode(BUTTON_PIN, INPUT_PULLUP);
pinMode(EYE_PIN, OUTPUT);
Serial.begin(9600);
}
void loop() {
bool pressed = digitalRead(BUTTON_PIN) == LOW;
digitalWrite(EYE_PIN, pressed ? HIGH : LOW);
Serial.print("button:"); Serial.print(pressed ? 1 : 0);
Serial.print(",eye:"); Serial.println(pressed ? 1 : 0);
delay(20);
}
This is the same complete Arduino C++ program used by the English IDE. Copy it or download the .ino file.
Step 5 — Understand the program
INPUT_PULLUP enables an internal resistor that holds the released signal HIGH. Pressing the button connects it to ground, so pressed means LOW. == compares that reading with LOW; it does not assign a value.
bool pressed = digitalRead(BUTTON_PIN) == LOW;
digitalWrite(EYE_PIN, pressed ? HIGH : LOW);The conditional expression means “if pressed is true, choose HIGH; otherwise choose LOW”. This variable is recalculated every loop, so it remembers no earlier press. USB Serial reports a logical pressed flag, not the raw electrical level.
Step 6 — Work through one case
| Action | Raw D2 | pressed | D3 eye / reported eye |
|---|---|---|---|
| Released | HIGH | false | LOW / 0 |
| Held down | LOW | true | HIGH / 1 |
| Released again | HIGH | false | LOW / 0 |
Step 7 — Test it on your board
Hold the triangular button. The left eye should stay on while pressed and switch off when released. The centre reset button restarts the board instead.
Check the physical output after uploading. Successful compilation confirms syntax and board compatibility; the 3D illustration cannot confirm your board’s USB connection or electrical operation.
Step 8 — See readings from your real EagLED
After upload, open the serial connection here. The labelled values come from your actual board. Press and release the triangular button and compare the input with the LED state.
Step 9 — Predict, change and compare
Predict what changes if you replace == LOW with == HIGH. Change only that comparison, upload and test a held press and release. Explain why the LED seems reversed, then restore LOW.
Check your reasoning after trying it
The eye now lights when released. The wire has not changed: the software is treating the pull-up’s HIGH as active. Correcting the comparison restores press-to-light behaviour.
Step 10 — Find and fix a problem
Pressing restarts the pattern: use the triangular button at the lower left, not RESET near the processor. Random changes when released: confirm INPUT_PULLUP, not INPUT.
Nothing responds: check the main switch, the power indicator and a known data-capable USB cable. Confirm the EagLED board profile and USB port. If the board has already been snipped apart, its original connections are broken: follow a separate sewable wiring project before using this intact-board sketch.
Step 11 — Keep exploring
Continue through the EagLED experiments or open the full board explorer. The original EagLED schematic and manufacturing files document the pin connections.
Parts List
Required Parts (1)
Keep the board intact. Also bring a micro-USB data cable and computer. No additional sensor, LED, Arduino or breadboard is required.
x1
$34.35
In stockProject Summary
1 part total
Unavailable items will be skipped