Skip to content

State machine

Cedric Beauduffe edited this page Jun 26, 2024 · 4 revisions

With regulatory flag

Below is the library state machine when the 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

Sigfox Message Counter(MC) is incremented after the effective transmission of Application & Control message. in case of non deterministic methods like LBT for instance, Message counter will not be incremented if the channel is busy and LBT prevent form transmit any frame of message. This way of doing is different from the way that has been implemented in the old legacy Sigfox library (before v3.0). On this old legacy library the counter was incremented before sending the message.

Without regulatory flag

Below is the library state machine when the 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

Sigfox Message Counter(MC) is incremented after the effective transmission of Application & Control message. This way of doing is different from the way that has been implemented in the old legacy Sigfox library (before v3.0). On this old legacy library the counter was incremented before sending the message.