CSS Configuration#

For more detailed information about CSS and its power profiles, see the "Sub-GHz Protocol Stack" > "Amazon Sidewalk Endpoint connection modes" > "Asynchronous access mode profiles" section in the Amazon Sidewalk specification.

Typical Behavior#

CSS is an asynchronous protocol, which means it does not keep a connection with the gateway. Though transmits are asynchronous, during an active downlink phase listening windows for reception occur every 5 seconds as shown below. These windows either repeat indefinitely or after a transmission for a limited time, depending on the active connection profile (also referred to as "power profiles" A and B).

Amazon Sidewalk - CSS

Power Consumption and Energy Modes#

CSS Power Profiles#

Power profile A opens a limited number of listening windows after a transmission. Power profile B opens listening windows periodically while also assuring regular transmission to keep the connection alive. In power profile B, the gateway considers the endpoint inactive after 5 minutes without transmission and stops sending messages. To prevent this, the Sidewalk stack implements a keep-alive mechanism for power profile B that creates a power consumption overhead not present in power profile A. There is a trade-off between this additional overhead and lower latency, as in power profile A a device must re-perform time synchronization before transmission if too much time has elapsed since the last transmit. Power profile B is the default connection profile in the Sidewalk stack.

Possible Parameters#

The CSS power profile can be modified by the sid_option API call using option SID_OPTION_900MHZ_SET_DEVICE_PROFILE. Then the structure sid_device_profile_unicast_params can be updated with the following values:

  • The device profile ID possible values SID_LINK3_PROFILE_A and SID_LINK3_PROFILE_B contained in sid_device_profile_id enum.

  • The number of RX windows is either SID_RX_WINDOW_CNT_INFINITE for power profile B and any of the other values in enum sid_rx_window_count for power profile A.

  • The windows separation can be any of the values of enum sid_link3_rx_window_separation_ms.

  • Values for the type of event for which the device wakes up are contained in enum sid_unicast_wakeup_type.