The main module does not implement messages available to other modules. Instead, it processes messages from other modules to control the application's behavior. It subscribes to messages on the following zbus channels:
The Main module uses the following zbus channels, both for subscribing to incoming data and publishing outbound requests or status updates:
| Zbus Channels | Description |
|---|---|
| button_chan | Process user button presses to trigger data samples or sending. |
| cloud_chan | Receive connectivity status and cloud responses. Trigger device shadow polling. |
| storage_chan | Control the storage module and receive status responses. |
| environmental_chan | Request sensor data from the environmental module. |
| fota_chan | Trigger FOTA polls; orchestrate network disconnect, storage cleanup, and reboot. |
| led_chan | Update LED patterns to indicate system state. |
| location_chan | Request new location data when samples are due. |
| network_chan | Control LTE network connection and track cellular connectivity events. |
| power_chan | Request battery status and initiate low-power mode. |
| timer_chan | Handle timer events for sampling. |