\section{Implementation}\label{implementation}

Implementing \textit{OTA} updates under the given requirements involves multiple components, which interact closely.
The continuous integration system is in charge of building the firmware from source, calculating cryptographic signatures, and publishing the built binary images.
The deployment infrastructure provides resources for downloading the binary firmware images and triggering the update on all devices.
Finally, the implementation of the update mechanism as a part of the firmware running on the embedded device is responsible for downloading and installing the updates.

\input{6-1-build_and_deploy}
\input{6-2-update_mechanism}
