How to Apply Engineering Practices to Embedded Software Development
summary
A working doorbell prototype is built end-to-end: an AVR/Arduino microcontroller plus a Yocto-built Linux image for Raspberry Pi, with the toolchains and SDKs packaged as Docker images and data containers so builds are reproducible and versioned. The demo shows a feature implemented in about 15 minutes, Yocto images take 2–3 hours on a fast machine (26+ hours on a small build server), acceptance tests use Cucumber and Google Test, and the walking skeleton plus continuous integration run tests on host and target to catch mismatches.
AI-written summary · about
chapters (11)
- 0:00Start
- 20:21The Continuous Integration System
- 21:49Automated Builds
- 24:18Tool Chains
- 34:23Raspberry Pi
- 45:56Acceptance Test
- 47:12Who Writes this Acceptance Test
- 55:18Problem with Tdd
- 1:14:01Special Unit Tests
- 1:18:32Use Emulators
- 1:25:25Test Boundaries
related talks
30mYocto for open source embedded systems development
33mUsing Open Source Software to Build an Industrial-grade Embedded Linux Platform...
04mKeynote: Speeding Linux Development
50mBuilding a Custom Embedded Linux Distribution
40mWhy the Yocto Project for My IoT Project
19mAgile hardware development (as an Android dev)
37mCombining White-labelled Hardware With Open Source Software To Quickly Bring Devices To Market
35mEmbedded Linux in EOD Robots - Lessons Learned
