![]()  | 
        
           Wirepas SDK
           
         | 
        
Application library for sending and receiving joining beacons
Library services are accessed via lib_joining handle.
Definition in file wms_joining.h.
Go to the source code of this file.
Typedefs | |
| typedef void(* | app_lib_joining_beacon_rx_cb_f) (app_lib_joining_rx_status_e status, const app_lib_joining_received_beacon_t *beacons, size_t num_beacons) | 
| Function type for joining beacon RX callback.  More... | |
| typedef app_res_e(* | app_lib_joining_start_joining_beacon_tx_f) (const app_lib_joining_beacon_tx_param_t *param) | 
| Start transmitting joining beacons.  More... | |
| typedef app_res_e(* | app_lib_joining_stop_joining_beacon_tx_f) (void) | 
| Stop transmitting joining beacons.  More... | |
| typedef app_res_e(* | app_lib_joining_start_joining_beacon_rx_f) (const app_lib_joining_beacon_rx_param_t *param) | 
| Start receiving joining beacons.  More... | |
| typedef app_res_e(* | app_lib_joining_stop_joining_beacon_rx_f) (void) | 
| Stop receiving joining beacons.  More... | |
| typedef app_res_e(* | app_lib_joining_start_joining_process_f) (app_lib_settings_net_addr_t addr, app_lib_settings_net_channel_t channel) | 
| Start the joining process by joining a cluster as a joining member.  More... | |
| typedef app_res_e(* | app_lib_joining_stop_joining_process_f) (void) | 
| Stop the joining process and restore network address and channel.  More... | |
| typedef app_res_e(* | app_lib_joining_enable_remote_api_f) (bool enable) | 
| Enable or disable Remote API control for transmitting joining beacons.  More... | |
| typedef app_res_e(* | app_lib_joining_enable_proxy_f) (bool enable) | 
| Enable or disable built-in proxy for handling joining data packets.  More... | |
Data Structures | |
| struct | app_lib_joining_beacon_tx_param_t | 
| Parameters for sending joining beacons.  More... | |
| struct | app_lib_joining_received_beacon_t | 
| Received joining beacon.  More... | |
| struct | app_lib_joining_beacon_rx_param_t | 
| Parameters for receiving joining beacons.  More... | |
| struct | app_lib_joining_t | 
| List of library functions.  More... | |
Enumerations | |
| enum | app_lib_joining_rx_status_e { APP_LIB_JOINING_RX_STATUS_DONE = 0, APP_LIB_JOINING_RX_STATUS_STOPPED = 1, APP_LIB_JOINING_RX_STATUS_INTERRUPTED = 2, APP_LIB_JOINING_RX_STATUS_OUT_OF_SPACE = 3 } | 
| Status values for beacon reception callback.  More... | |
Macros | |
| #define | APP_LIB_JOINING_NAME 0x000a2336 | 
| Library symbolic name  More...  | |
| #define | APP_LIB_JOINING_VERSION 0x201 | 
| Maximum supported library version.  More... | |
| #define | APP_LIB_JOINING_MIN_INTERVAL 100 | 
| Minimum joining beacon interval, in milliseconds.  More... | |
| #define | APP_LIB_JOINING_MAX_INTERVAL 8000 | 
| Maximum joining beacon interval, in milliseconds.  More... | |
| #define | APP_LIB_JOINING_MIN_TIMEOUT 100 | 
| Minimum joining beacon interval, in milliseconds.  More... | |
| #define | APP_LIB_JOINING_MAX_TIMEOUT 10000 | 
| Maximum joining beacon interval, in milliseconds.  More... | |
| #define | APP_LIB_JOINING_MAX_PAYLOAD_NUM_BYTES 64 | 
| Maximum number of payload bytes in a joining beacon.  More... | |
| typedef void(* app_lib_joining_beacon_rx_cb_f) (app_lib_joining_rx_status_e status, const app_lib_joining_received_beacon_t *beacons, size_t num_beacons) | 
Function type for joining beacon RX callback.
| status | Status of joining beacon RX process | 
| beacons | Pointer to first received beacon (read-only) or NULL | 
| num_beacons | Number of received joining beacons | 
Definition at line 172 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_enable_proxy_f) (bool enable) | 
Enable or disable built-in proxy for handling joining data packets.
Definition at line 307 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_enable_remote_api_f) (bool enable) | 
Enable or disable Remote API control for transmitting joining beacons.
Definition at line 300 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_start_joining_beacon_rx_f) (const app_lib_joining_beacon_rx_param_t *param) | 
Start receiving joining beacons.
| param | Joining beacon reception parameters | 
Definition at line 247 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_start_joining_beacon_tx_f) (const app_lib_joining_beacon_tx_param_t *param) | 
Start transmitting joining beacons.
| param | Joining beacon transmission parameters | 
payload_num_bytes > 0 Definition at line 220 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_start_joining_process_f) (app_lib_settings_net_addr_t addr, app_lib_settings_net_channel_t channel) | 
Start the joining process by joining a cluster as a joining member.
| addr | Network address (radio address) of the network to try joining | 
| channel | Network channel of the network to try joining | 
Definition at line 277 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_stop_joining_beacon_rx_f) (void) | 
Stop receiving joining beacons.
Definition at line 257 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_stop_joining_beacon_tx_f) (void) | 
Stop transmitting joining beacons.
Definition at line 227 of file wms_joining.h.
| typedef app_res_e(* app_lib_joining_stop_joining_process_f) (void) | 
Stop the joining process and restore network address and channel.
Definition at line 293 of file wms_joining.h.
| struct app_lib_joining_beacon_tx_param_t | 
Parameters for sending joining beacons.
Used in service lib_joining->startJoiningBeaconTx().
Definition at line 104 of file wms_joining.h.
| Data Fields | ||
|---|---|---|
| app_lib_settings_net_addr_t | addr | 
 Network address (radio address) to use for sending joining beacons  | 
| app_lib_settings_net_channel_t | channel | 
 Radio channel to use for sending joining beacons  | 
| uint32_t | interval | 
 Interval of joining beacons, in milliseconds  | 
| const void * | payload | 
 Optional payload, ignored if payload_num_bytes == 0  | 
| size_t | payload_num_bytes | 
 Number of payload bytes  | 
| int8_t | tx_power | 
 Transmission power to use for sending joining beacons, in dBm  | 
| uint32_t | type | 
 A 32-bit type field for early filtering of received joining beacons  | 
| struct app_lib_joining_received_beacon_s | 
Received joining beacon.
Used in beacon reception callback set with service lib_joining->startJoiningBeaconRx().
Definition at line 129 of file wms_joining.h.
| Data Fields | ||
|---|---|---|
| app_lib_settings_net_addr_t | addr | 
 Network address of found network  | 
| app_lib_settings_net_channel_t | channel | 
 Network channel of found network  | 
| struct app_lib_joining_received_beacon_s * | next | 
 Pointer to next joining beacon or NULL  | 
| size_t | num_bytes | 
 Size of this joining beacon structure in bytes, including the next and num_bytes fields  | 
| uint8_t * | old_payload | 
 Old payload pointer for backwards compatibility  | 
| uint8_t | payload[64] | 
 Payload  | 
| size_t | payload_num_bytes | 
 Number of payload bytes  | 
| uint8_t | reserved | 
 To align the header structure to 32 bits for backwards compatibility  | 
| int8_t | rssi | 
 Signal strength of received joining beacon, in dBm  | 
| app_lib_time_timestamp_coarse_t | time | 
 Time when beacon received, as coarse timestamp  | 
| int8_t | tx_power | 
 Transmission power of joining beacon, in dBm  | 
| uint32_t | type | 
 A 32-bit protocol type identifier of received joining beacon  | 
| struct app_lib_joining_beacon_rx_param_t | 
Parameters for receiving joining beacons.
Used in lib_joining->startJoiningBeaconRx() service.
Definition at line 183 of file wms_joining.h.
| Data Fields | ||
|---|---|---|
| app_lib_settings_net_addr_t | addr | 
 Network address to use for receiving joining beacons  | 
| void * | buffer | 
 A buffer for collecting joining beacons  | 
| app_lib_joining_beacon_rx_cb_f | cb | 
 Function to call after joining beacon reception ends for any reason  | 
| app_lib_settings_net_channel_t | channel | 
 Network channel to use for receiving joining beacons  | 
| uint32_t | max_exec_time_us | 
 Maximum time for the callback function to execute in microseconds  | 
| size_t | max_num_beacons | 
 Maximum number of joining beacons to receive  | 
| size_t | num_bytes | 
 Size of beacon buffer in bytes  | 
| uint32_t | timeout | 
 Joining beacon reception duration in milliseconds  | 
| struct app_lib_joining_t | 
List of library functions.
Definition at line 312 of file wms_joining.h.
| Data Fields | ||
|---|---|---|
| app_lib_joining_enable_proxy_f | enableProxy | |
| app_lib_joining_enable_remote_api_f | enableRemoteApi | |
| app_lib_joining_start_joining_beacon_rx_f | startJoiningBeaconRx | |
| app_lib_joining_start_joining_beacon_tx_f | startJoiningBeaconTx | |
| app_lib_joining_start_joining_process_f | startJoiningProcess | |
| app_lib_joining_stop_joining_beacon_rx_f | stopJoiningBeaconRx | |
| app_lib_joining_stop_joining_beacon_tx_f | stopJoiningBeaconTx | |
| app_lib_joining_stop_joining_process_f | stopJoiningProcess | |
Status values for beacon reception callback.
Used in beacon reception callback set with service lib_joining->startJoiningBeaconRx().
| Enumerator | |
|---|---|
| APP_LIB_JOINING_RX_STATUS_DONE | Reception timeout elapsed or requested number of beacons received  | 
| APP_LIB_JOINING_RX_STATUS_STOPPED | Beacon reception stopped by calling lib_joining->stopJoiningBeaconRx()  | 
| APP_LIB_JOINING_RX_STATUS_INTERRUPTED | A higher priority radio event (e.g. network beacon scan) interrupted the joining beacon reception  | 
| APP_LIB_JOINING_RX_STATUS_OUT_OF_SPACE | No space in buffer for any more joining beacons  | 
Definition at line 82 of file wms_joining.h.
| #define APP_LIB_JOINING_MAX_INTERVAL 8000 | 
Maximum joining beacon interval, in milliseconds.
Used when defining interval of joining beacons in lib_joining->startJoiningBeaconTx() service.
Definition at line 48 of file wms_joining.h.
| #define APP_LIB_JOINING_MAX_PAYLOAD_NUM_BYTES 64 | 
Maximum number of payload bytes in a joining beacon.
Used when defining payload bytes of joining beacons in lib_joining->startJoiningBeaconTx() service.
Definition at line 73 of file wms_joining.h.
| #define APP_LIB_JOINING_MAX_TIMEOUT 10000 | 
Maximum joining beacon interval, in milliseconds.
Used when defining timeout of joining beacon reception in lib_joining->startJoiningBeaconRx() service.
Definition at line 64 of file wms_joining.h.
| #define APP_LIB_JOINING_MIN_INTERVAL 100 | 
Minimum joining beacon interval, in milliseconds.
Used when defining interval of joining beacons in lib_joining->startJoiningBeaconTx() service.
Definition at line 40 of file wms_joining.h.
| #define APP_LIB_JOINING_MIN_TIMEOUT 100 | 
Minimum joining beacon interval, in milliseconds.
Used when defining timeout of joining beacon reception in lib_joining->startJoiningBeaconRx() service.
Definition at line 56 of file wms_joining.h.
| #define APP_LIB_JOINING_NAME 0x000a2336 | 
| #define APP_LIB_JOINING_VERSION 0x201 | 
Maximum supported library version.
Definition at line 32 of file wms_joining.h.