State machine - sigfox-tech-radio/sigfox-ep-lib GitHub Wiki
With regulatory flag
Below is the library state machine when the SIGFOX_EP_REGULATORY
flag is enabled. In this mode, the TX control block is used to control the uplink transmission regarding regulatory constraints (LBT, FH timer, etc...).
[!NOTE]
The message counter is incremented after the effective transmission of an application or control message. In case of error or non deterministic methods like LBT for instance, the message counter will not be incremented if the channel is busy and LBT prevents from transmitting any frame of the message. This approach is different from the old Sigfox library (beforev3.0
), where the message counter was incremented before sending the message whatever the transmission status.
Without regulatory flag
Below is the library state machine when the SIGFOX_EP_REGULATORY
flag is disabled. In this mode, the TX control block is not used, uplink transmissions are always performed without any check. This mode is very useful to save code memory when the application behaviour is compliant with the local regulation by design.
[!NOTE]
The message counter is incremented after the effective transmission of an application or control message. This approach is different from the old Sigfox library (beforev3.0
), where the message counter was incremented before sending the message whatever the transmission status.