# An Embedded Project Checklist — Arduino & Embedded C

Source: https://www.geekswithgeeks.com/en/arduino-embedded-c/ard-checklist

> Review before you power it up and ship it.

## Questions to ask

Have you checked every part's voltage and current limits against your board's datasheet/pinout? Does every LED have a resistor, and are motors, relays and servos driven through transistors or drivers with flyback protection and their own supply, sharing ground? Is the code non-blocking, with debounced inputs and a clear state machine? Are interrupt handlers short, with shared variables `volatile` and read atomically? Do memory usage and types fit the target (fixed-width types, F() and PROGMEM on AVR)? Are secrets kept out of the repository, and network failures handled? Is pure logic unit-tested on the host and logging easy to switch off?

## The checklist

Use it in reviews and before first power-on.

```text
Hardware
[ ] board, logic voltage and pins confirmed in the datasheet/pinout
[ ] series resistor on every LED; GPIO current within per-pin and total limits
[ ] motors/relays/servos via transistor or driver, flyback diode, own supply
[ ] all grounds common; decoupling capacitors; supply sized for peak current
[ ] no mains wiring unless qualified

Firmware
[ ] no long delay() in loop(); millis()-based timing; inputs debounced
[ ] behaviour expressed as a state machine
[ ] ISRs short; shared data volatile; multi-byte reads atomic
[ ] fixed-width types; overflow checked; F()/PROGMEM on AVR; RAM headroom
[ ] timers used by libraries not reconfigured by accident

Connectivity and quality
[ ] secrets in an ignored file; TLS where data matters; reconnect logic
[ ] pure logic unit-tested on host; debug logging switchable
[ ] library and core versions recorded
```

## Power up in stages

Bring up one subsystem at a time: board alone, then sensors, then actuators on their own supply. Measure before connecting the next stage.

**Quiz:** Which item belongs on an embedded project checklist?

- [ ] Long Serial prints inside every ISR
- [ ] LEDs connected directly to pins without resistors
- [x] Motors are driven through a driver with flyback protection and a separate supply sharing ground
- [ ] Wi-Fi passwords committed so teammates can build easily

*Answer:* Motors are driven through a driver with flyback protection and a separate supply sharing ground. Safe power design protects both the board and the user.
