~/talk

Comprehensive Testing of Embedded Software

Talkat NDC TechTown 2025 · 2025-09-22..09-25· [testing, rust]
links:none on file
slides:none on file

Argues that embedded Rust code should be split into 90% hardware-agnostic logic and a tiny hardware layer so most behavior is unit-testable on laptop CI. Shows concrete patterns: use embedded-hal traits for drivers, drive tasks with event-driven testing over channels so tests control ordering and inject errors, and run hardware unit tests on a devkit plus a mock slave microcontroller talking over probe-rs + RTT to exercise I2C edge cases (clock stretching, DMA) with three compiled binaries.

AI-written summary · about

  1. 0:00Embedded testing intro
  2. 1:12Testing improves code quality
  3. 2:42Automated testing essential
  4. 3:47Testing as debugging aid
  5. 5:13Hardware-agnostic vs dependent code
  6. 7:48Unit testing focus
  7. 11:42Defining units in embedded
  8. 16:46Testing a fictional app
  9. 23:29Event-driven testing
  10. 33:24Testing hardware drivers
  11. 37:00Unit testing on real hardware
  12. 43:25Summary
  13. 44:28Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.