Engineers Gossips DISCUSSION

What belongs in a reproducible embedded-project archive?

Started by amine reproducible buildsfirmware archivehardware revisionsdependency versionsengineering workflow
3 replies 248 views 4 participants
Latest activity · 27 Sep 2026

What belongs in a reproducible embedded-project archive?

amine Engineers Gossips Forum
#1

Modern embedded projects can combine MCU firmware, Linux applications, machine-learning models and several libraries. Keeping only the source folder may no longer be enough to rebuild a working system.

What should a small team archive at each hardware release? Consider a device with a custom PCB and two cooperating processors. How would you link the manufactured board revision to the firmware and model that were actually tested?

Reference: Arduino: dual-processor architecture and UNO Q (https://blog.arduino.cc/2026/05/07/one-board-two-brains-three-ways-a-dual-architecture-board-makes-building-simpler/).

Community replies 3

Re: What belongs in a reproducible embedded-project archive?

#2

Start with a release manifest containing the board revision, source commit, compiler versions, dependency lock files, build options and generated binary hashes. Preserve the linker map and programming configuration too. A binary hash identifies an artifact; it does not explain how to rebuild it. Keeping both the inputs and final artifacts makes later investigation much easier.

Re: What belongs in a reproducible embedded-project archive?

#3

For the hardware, include the schematic, layout, project-specific libraries, BOM with manufacturer part numbers and approved substitutions, and the manufacturing package actually submitted. An updated online library can change a footprint without changing your source code. Keep calibration data and serial-specific settings separate from the common firmware image, with a documented method for applying them.

Re: What belongs in a reproducible embedded-project archive?

#4

For a two-processor design, version the communication protocol and record supported firmware pairs. Archive the model file, preprocessing parameters and representative validation inputs, subject to the dataset's permissions. A model replacement can change timing and memory use even when its API is unchanged. A useful release test starts from a clean environment and rebuilds, programs and exercises one complete device.

TEP COMMUNITY