Embedded Hardware Workflow #
Template for hardware projects involving microcontrollers, custom PCBs, firmware, and physical enclosures. Follows the EVT/DVT/PVT hardware development lifecycle.
Legend: β Complete | π In Progress | β³ Planned
Project Vision & Scope #
Define what the project aims to achieve and establish boundaries.
In Scope
- Core functionality and features
- Target hardware platform
- Key interfaces and protocols
- Physical form factor requirements
Out of Scope
- Features explicitly excluded
- Integration points deferred to future phases
- Capabilities beyond project goals
Milestone: Requirements & Constraints β³ #
Define what success means before building.
| Task | Status |
|---|---|
| User scenarios and use cases | β³ |
| Functional requirements (FR-xxx) | β³ |
| Non-functional requirements (performance, reliability) | β³ |
| Electrical & mechanical constraints | β³ |
| Acceptance criteria for each requirement | β³ |
| Risk register (top technical risks + mitigations) | β³ |
Milestone: Architecture & Design β³ #
Translate requirements into a complete system design.
| Task | Status |
|---|---|
| System block diagram | β³ |
| Power architecture & protection strategy | β³ |
| Signal chain & interface design | β³ |
| Sensor/actuator integration design | β³ |
| Communication protocol selection | β³ |
| Firmware architecture & state machine definition | β³ |
| Interface specifications (electrical, software) | β³ |
| Verification & test plan (requirements to tests mapping) | β³ |
Milestone: Proof of Concept / EVT β³ #
De-risk the hardest problems early using breadboards and bench tests.
| Task | Status |
|---|---|
| Breadboard core signal chain | β³ |
| MCU bring-up & peripheral validation | β³ |
| Critical timing & signal integrity experiments | β³ |
| Interface validation (I2C, SPI, UART, etc.) | β³ |
| Power consumption measurements | β³ |
| Bench test notes and captured measurements | β³ |
Milestone: Firmware Development β³ #
Embedded firmware implementing system behavior and control.
| Task | Status |
|---|---|
| Base firmware & build system | β³ |
| Hardware abstraction layer (HAL) | β³ |
| Core application logic | β³ |
| Communication stack implementation | β³ |
| Peripheral drivers | β³ |
| Configuration storage (NVS/EEPROM schema) | β³ |
| Logging & diagnostics | β³ |
| Firmware versioning & release tagging | β³ |
| OTA update mechanism (if applicable) | β³ |
Milestone: Custom PCB (DVT) β³ #
Transition from prototype to a reproducible hardware design.
| Task | Status |
|---|---|
| Schematic capture | β³ |
| BOM with alternates | β³ |
| PCB layout & DFM/DFA review | β³ |
| Test points & programming header | β³ |
| Fabrication | β³ |
| Assembly | β³ |
| Hardware bring-up checklist | β³ |
| Electrical verification against requirements | β³ |
Milestone: Enclosure & Mechanical Integration β³ #
Package the device for real-world use.
| Task | Status |
|---|---|
| Enclosure requirements & constraints | β³ |
| Connector placement & strain relief | β³ |
| Enclosure design (3D print or fabrication) | β³ |
| Thermal and safety considerations | β³ |
| Final mechanical assembly | β³ |
Milestone: Verification & Validation β³ #
Prove the system meets its requirements.
| Task | Status |
|---|---|
| Requirements to test traceability | β³ |
| Functional test execution | β³ |
| Performance validation | β³ |
| Long-duration stability testing | β³ |
| Regression testing after changes | β³ |
| Issue tracking & resolution | β³ |
Milestone: Production Readiness (PVT) β³ #
Prepare the design for repeatable builds.
| Task | Status |
|---|---|
| Assembly documentation | β³ |
| Manufacturing test procedure | β³ |
| Test fixtures / jigs | β³ |
| Calibration & setup process | β³ |
| Revision control (Rev A, Rev B, etc.) | β³ |
Milestone: Documentation β³ #
Create durable documentation for users and future builders.
| Task | Status |
|---|---|
| Build instructions | β³ |
| Installation & wiring guide | β³ |
| User guide | β³ |
| Troubleshooting guide | β³ |
| Design notes & lessons learned | β³ |
Milestone: Deployment & Operations β³ #
Put the system into real use.
| Task | Status |
|---|---|
| Final integration testing | β³ |
| Installation procedure | β³ |
| Field diagnostics workflow | β³ |
| Release notes | β³ |
| Ongoing maintenance plan | β³ |