The Asset Tracker Template is built on a modular, event-driven architecture. The modules interact through messages that are processed as events by the modules' state machines.
The architecture is implemented using Zephyr bus (zbus) for inter-module communication and the State Machine Framework (SMF) for managing module behavior.
This document provides an overview of the architecture, with a focus on the zbus message passing and the modules' state machines.