Skip to main content Link Menu Expand (external link) Document Search Copy Copied

4. Existing settings GSK interacts with

All but the last are set and read with sid_option(). sid_config.time_sync_config is passed to sid_init().

Setting Value type Why it matters to GSK
SID_OPTION_DL_ROUTE_VALIDITY (19) struct sid_dlrv_config { uint16_t time; uint16_t nwsync_time; bool is_set; } time is the downlink route validity, 1–1440 min. nwsync_time overrides the keep-alive interval in minutes, and is one value shared by both sub-GHz links. The keep-alive interval is the dominant term in detection latency (§6).
SID_OPTION_900MHZ_SET_DEVICE_PROFILE (1), SID_OPTION_900MHZ_GET_DEVICE_PROFILE (2) struct sid_device_profile The stack re-resolves the MDR RX-window separation from l3_mdr_rx_window_interval_ms on every entry to MDR, including at boot. A product that needs 500 ms or 1000 ms sets the field once, and a GSK data-rate transition cannot lose it. Setting a profile while a session is active does not tear the session down, but an accepted change on a started, network-synchronized LoRa link takes the link out of network synchronization, which your application sees as the same link_status_mask bounce as a GSK transition (§2.2).
sid_config.time_sync_config struct sid_time_sync_config { const uint16_t *adaptive_sync_intervals_h; uint8_t num_intervals; } Each interval is between TIME_SYNC_INTERVAL_MIN_HOURS = 2 and TIME_SYNC_INTERVAL_MAX_HOURS = 720 hours. NULL or an invalid set selects the SDK default. Sparse intervals lengthen the windows in which nothing establishes.

Table 4.1: Existing settings whose values change GSK behavior.

The effective keep-alive interval must be longer than idle_timeout_sec. If it is not, the quiet window never elapses and no session is established. Read the interval in effect with is_set = false. It is reported even if you never set one.

Never override the keep-alive interval with 0. 0 means not set. SubG-FSK and LoRa Profile C fall back to their own default, but LoRa Profile B discards its 5 minute default and reads back the 2 minute floor (§7).

nwsync_time has its own range, dependent on the link and device profile. For the ranges and how the interval is derived, see the Amazon Sidewalk Keep-Alive (KA) Application Note. Out of range returns SID_ERROR_INVALID_ARGS (-11). A value below the 2 min floor is accepted, then floored by the scheduler.


Back to top

©2023 Amazon.com, Inc. or its affiliates (collectively, “Amazon”). All Rights Reserved.