Wirepas SDK
msap_frames.h File Reference

Detailed Description

Values related to the Management Service Access Point (MSAP)

Definition in file msap_frames.h.

Go to the source code of this file.

Typedefs

typedef uint8_t otap_seq_t
 Type for OTAP sequence number.
 

Data Structures

struct  msap_neighbor_entry_t
 
struct  msap_start_req_t
 
struct  msap_state_ind_t
 
struct  msap_int_ind_t
 
struct  msap_sink_cost_write_req_t
 
struct  msap_sink_cost_read_cnf_t
 
struct  msap_int_write_req_t
 
struct  msap_int_read_cnf_t
 
struct  msap_ind_poll_cnf_t
 
struct  msap_scratchpad_start_req_t
 
struct  msap_scratchpad_block_req_t
 
struct  msap_scratchpad_status_cnf_t
 
struct  msap_remote_status_req_t
 
struct  msap_remote_status_ind_t
 
struct  msap_on_scanned_nbors_ind_t
 
struct  msap_neighbors_cnf_t
 
struct  msap_sleep_start_req_t
 
struct  msap_sleep_state_rsp_t
 
struct  msap_sleep_latest_gotosleep_rsp_t
 
struct  msap_install_quality_cnf_t
 
struct  msap_scratchpad_target_write_req_t
 
struct  msap_scratchpad_target_read_cnf_t
 
struct  msap_scratchpad_block_read_req_t
 
struct  msap_scratchpad_block_read_cnf_t
 
struct  msap_config_data_item_set_req_t
 
struct  msap_config_data_item_set_cnf_t
 
struct  msap_config_data_item_get_req_t
 
struct  msap_config_data_item_get_cnf_t
 
struct  msap_config_data_list_items_cnf_t
 
struct  msap_config_data_list_items_req_t
 
struct  msap_config_data_item_ind_t
 
union  frame_msap
 

Enumerations

enum  msap_neighbor_type_e { NEIGHBOR_IS_NEXT_HOP , NEIGHBOR_IS_MEMBER , NEIGHBOR_IS_CLUSTER }
 MSAP nbor type. More...
 
enum  msap_attr_e {
  MSAP_ATTR_STACK_STATUS = 1 , MSAP_ATTR_PDU_BUFF_USAGE = 2 , MSAP_ATTR_PDU_BUFF_CAPA = 3 , MSAP_ATTR_NBOR_COUNT = 4 ,
  MSAP_ATTR_ROUTE_COUNT = 7 , MSAP_ATTR_SYSTEM_TIME = 8 , MSAP_ATTR_AC_LIMITS = 10 , MSAP_ATTR_CURRENT_AC = 11 ,
  MSAP_ATTR_SCRATCHPAD_BLOCK_MAX = 12 , MSAP_ATTR_SCRATCHPAD_NUM_BYTES = 14 , MSAP_ATTR_RESERVED_1 = 5 , MSAP_ATTR_AUTOSTART = 6 ,
  MSAP_ATTR_AC_RANGE = 9 , MSAP_ATTR_MCAST_GROUPS = 13
}
 
enum  msap_attr_size_e {
  MSAP_ATTR_STACK_STATUS_SIZE = 1 , MSAP_ATTR_PDU_BUFF_USAGE_SIZE = 1 , MSAP_ATTR_PDU_BUFF_CAP_SIZE = 1 , MSAP_ATTR_NBOR_COUNT_SIZE = 1 ,
  MSAP_ATTR_RESERVED_1_SIZE = 1 , MSAP_ATTR_AUTOSTART_SIZE = 1 , MSAP_ATTR_ROUTE_COUNT_SIZE = 1 , MSAP_ATTR_SYSTEM_TIME_SIZE = 4 ,
  MSAP_ATTR_AC_RANGE_SIZE = 4 , MSAP_ATTR_AC_LIMITS_SIZE = 4 , MSAP_ATTR_CURRENT_AC_SIZE = 2 , MSAP_ATTR_SCRATCHPAD_BLOCK_MAX_SIZE = 1 ,
  MSAP_ATTR_MCAST_GROUPS_SIZE , MSAP_ATTR_SCRATCHPAD_NUM_BYTES_SIZE = 4
}
 
enum  msap_scratchpad_clear_e { MSAP_SCRATCHPAD_CLEAR_SUCCESS = 0 , MSAP_SCRATCHPAD_CLEAR_INVALID_STATE = 1 , MSAP_SCRATCHPAD_CLEAR_ACCESS_DENIED = 2 }
 
enum  msap_scratchpad_start_e {
  MSAP_SCRATCHPAD_START_SUCCESS = 0 , MSAP_SCRATCHPAD_START_INVALID_STATE = 1 , MSAP_SCRATCHPAD_START_INVALID_NUM_BYTES = 2 , MSAP_SCRATCHPAD_START_INVALID_SEQ = 3 ,
  MSAP_SCRATCHPAD_START_ACCESS_DENIED = 4
}
 
enum  msap_scratchpad_block_e {
  MSAP_SCRATCHPAD_BLOCK_SUCCESS = 0 , MSAP_SCRATCHPAD_BLOCK_COMPLETED_OK = 1 , MSAP_SCRATCHPAD_BLOCK_COMPLETED_ERROR = 2 , MSAP_SCRATCHPAD_BLOCK_INVALID_STATE = 3 ,
  MSAP_SCRATCHPAD_BLOCK_NOT_ONGOING = 4 , MSAP_SCRATCHPAD_BLOCK_INVALID_START_ADDR = 5 , MSAP_SCRATCHPAD_BLOCK_INVALID_NUM_BYTES = 6 , MSAP_SCRATCHPAD_BLOCK_INVALID_DATA = 7
}
 
enum  msap_scratchpad_bootable_result_e { MSAP_SCRATCHPAD_BOOTABLE_SUCCESS = 0 , MSAP_SCRATCHPAD_BOOTABLE_INVALID_STATE = 1 , MSAP_SCRATCHPAD_BOOTABLE_NO_SCRATCHPAD = 2 , MSAP_SCRATCHPAD_BOOTABLE_ACCESS_DENIED = 3 }
 
enum  msap_remote_status_e { MSAP_REMOTE_STATUS_ACCESS_DENIED = 4 }
 
enum  msap_scan_nbors_status_e { MSAP_SCAN_NBORS_SUCCESS = 0 , MSAP_SCAN_NBORS_INVALID_STATE = 1 , MSAP_SCAN_NBORS_ACCESS_DENIED = 2 }
 
enum  msap_nrls_status_e { MSAP_NRLS_SLEEP_ACTIVE = 1 , MSAP_NRLS_SLEEP_NOT_STARTED = 2 }
 
enum  msap_sleep_update_e {
  MSAP_SLEEP_SUCCESS = 0 , MSAP_SLEEP_INVALID_STATE = 1 , MSAP_SLEEP_INVALID_ROLE = 2 , MSAP_SLEEP_INVALID_VALUE = 5 ,
  MSAP_SLEEP_ACCESS_DENIED = 6
}
 
enum  msap_scratchpad_action_e {
  MSAP_SCRATCHPAD_ACTION_NO_OTAP = 0 , MSAP_SCRATCHPAD_ACTION_PROPAGATE_ONLY = 1 , MSAP_SCRATCHPAD_ACTION_PROPAGATE_AND_PROCESS = 2 , MSAP_SCRATCHPAD_ACTION_PROPAGATE_AND_PROCESS_WITH_DELAY = 3 ,
  MSAP_SCRATCHPAD_ACTION_LEGACY = 5
}
 
enum  msap_scratchpad_target_write_res_e { MSAP_SCRATCHPAD_TARGET_SUCCESS = 0 , MSAP_SCRATCHPAD_TARGET_INVALID_ROLE = 1 , MSAP_SCRATCHPAD_TARGET_INVALID_VALUE = 2 , MSAP_SCRATCHPAD_TARGET_ACCESS_DENIED = 3 }
 
enum  msap_scratchpad_block_read_e {
  MSAP_SCRATCHPAD_BLOCK_READ_SUCCESS = 0 , MSAP_SCRATCHPAD_BLOCK_READ_INVALID_STATE = 1 , MSAP_SCRATCHPAD_BLOCK_READ_INVALID_START_ADDR = 2 , MSAP_SCRATCHPAD_BLOCK_READ_INVALID_NUM_BYTES = 3 ,
  MSAP_SCRATCHPAD_BLOCK_READ_NO_SCRATCHPAD = 4 , MSAP_SCRATCHPAD_BLOCK_READ_ACCESS_DENIED = 5
}
 
enum  msap_config_data_item_set_e {
  MSAP_CONFIG_DATA_ITEM_SET_SUCCESS = 0 , MSAP_CONFIG_DATA_ITEM_SET_INVALID_ROLE = 1 , MSAP_CONFIG_DATA_ITEM_SET_INVALID_ENDPOINT = 2 , MSAP_CONFIG_DATA_ITEM_SET_OUT_OF_MEMORY = 3 ,
  MSAP_CONFIG_DATA_ITEM_SET_INVALID_CONTENT = 4 , MSAP_CONFIG_DATA_ITEM_SET_NOT_SUPPORTED = 5
}
 
enum  msap_config_data_item_get_e { MSAP_CONFIG_DATA_ITEM_GET_SUCCESS = 0 , MSAP_CONFIG_DATA_ITEM_GET_INVALID_ENDPOINT = 1 , MSAP_CONFIG_DATA_ITEM_GET_NOT_SUPPORTED = 2 }
 
enum  msap_config_data_list_items_e { MSAP_CONFIG_DATA_LIST_ITEMS_SUCCESS = 0 , MSAP_CONFIG_DATA_LIST_ITEMS_NOT_SUPPORTED = 1 }
 

Macros

#define APP_CONF_MAX   80
 App config max size. The define is needed for compiling time size reservations.
 
#define MSAP_MAX_NBORS   8
 
#define MSAP_AUTOSTART   1
 
#define MSAP_SCRATCHPAD_BLOCK_MAX_NUM_BYTES   112
 
#define FRAME_MSAP_SCRATCHPAD_BLOCK_REQ_HEADER_SIZE    (sizeof(msap_scratchpad_block_req_t) - MSAP_SCRATCHPAD_BLOCK_MAX_NUM_BYTES)
 
#define MSAP_SCRATCHPAD_BLOCK_READ_MAX_NUM_BYTES   (MSAP_SCRATCHPAD_BLOCK_MAX_NUM_BYTES)
 
#define FRAME_MSAP_SCRATCHPAD_BLOCK_READ_CNF_HEADER_SIZE    (sizeof(msap_scratchpad_block_read_cnf_t) - MSAP_SCRATCHPAD_BLOCK_READ_MAX_NUM_BYTES)
 
#define MSAP_NPD_PAYLOAD_MAX_LEN   80
 
#define MSAP_CONFIG_DATA_ITEM_GET_HEADER_SIZE   (sizeof(msap_config_data_item_get_cnf_t) - MSAP_NPD_PAYLOAD_MAX_LEN)
 
#define MSAP_CONFIG_DATA_LIST_ITEMS_MAX_NUM_ENDPOINTS   16
 
#define MSAP_CONFIG_DATA_LIST_ITEMS_HEADER_SIZE   (sizeof(msap_config_data_list_items_cnf_t) - sizeof(uint16_t) * MSAP_CONFIG_DATA_LIST_ITEMS_MAX_NUM_ENDPOINTS)
 

Typedef Documentation

◆ otap_seq_t

typedef uint8_t otap_seq_t

Type for OTAP sequence number.

     Do not confuse this with actual firmware version numbers.

Definition at line 25 of file msap_frames.h.


Data Structure Documentation

◆ msap_neighbor_entry_t

struct msap_neighbor_entry_t

MSAP neighbor structure

Definition at line 54 of file msap_frames.h.

Data Fields
w_addr_t addr

Neighbor ID

uint8_t channel

Cluster channel index

uint8_t cost_0

TC 0 cost

uint16_t last_update

Time since last update time in seconds

uint8_t link_rel

Link reliability for this node (for next hop)

int8_t rssi_norm

Normalized RSSI

int8_t rx_power

Received power in dBm (for next hop)

int8_t tx_power

Used power in dBm for transmissions (for next hop)

uint8_t type

Neighbor type

See also
msap_neighbor_type_e

◆ msap_start_req_t

struct msap_start_req_t

Definition at line 120 of file msap_frames.h.

Data Fields
uint8_t start_options

◆ msap_state_ind_t

struct msap_state_ind_t

Definition at line 125 of file msap_frames.h.

Data Fields
uint8_t queued_indications
uint8_t result

◆ msap_int_ind_t

struct msap_int_ind_t

Definition at line 134 of file msap_frames.h.

Data Fields
uint8_t config[80]
uint16_t interval
uint8_t queued_indications
uint8_t seq

◆ msap_sink_cost_write_req_t

struct msap_sink_cost_write_req_t

Definition at line 142 of file msap_frames.h.

Data Fields
uint8_t base_cost

Base cost to set: 0...255. Value is hard-capped at 254

◆ msap_sink_cost_read_cnf_t

struct msap_sink_cost_read_cnf_t

Definition at line 148 of file msap_frames.h.

Data Fields
uint8_t base_cost

Base cost read out: will read as 0...254

uint8_t result

Read result:

See also
msap_sink_cost_e

◆ msap_int_write_req_t

struct msap_int_write_req_t

Definition at line 156 of file msap_frames.h.

Data Fields
uint8_t config[80]

App Config

uint16_t interval

send interval

uint8_t seq

Seq number of this config

◆ msap_int_read_cnf_t

struct msap_int_read_cnf_t

Definition at line 166 of file msap_frames.h.

Data Fields
uint8_t config[80]
uint16_t interval
uint8_t result

Read result

uint8_t seq

Other fields:

See also
msap_int_write_req_t

◆ msap_ind_poll_cnf_t

struct msap_ind_poll_cnf_t

Definition at line 176 of file msap_frames.h.

Data Fields
uint8_t queued

◆ msap_scratchpad_start_req_t

struct msap_scratchpad_start_req_t

MSAP-SCRATCHPAD_START request frame

Definition at line 193 of file msap_frames.h.

Data Fields
uint32_t num_bytes

Total number of bytes of data

otap_seq_t seq

Sequence number of the scratchpad

◆ msap_scratchpad_block_req_t

struct msap_scratchpad_block_req_t

MSAP-SCRATCHPAD_BLOCK request frame

Definition at line 220 of file msap_frames.h.

Data Fields
uint8_t bytes[112]

Byte data

uint8_t num_bytes

Number of bytes of data

uint32_t start_addr

Byte offset from the beginning of scratchpad memory

◆ msap_scratchpad_status_cnf_t

struct msap_scratchpad_status_cnf_t

MSAP-SCRATCHPAD_STATUS confirmation frame

Definition at line 255 of file msap_frames.h.

Data Fields
uint32_t area_id
uint16_t crc
uint8_t devel_version
uint8_t maint_version
uint8_t major_version

Version information of currently running firmware

uint8_t minor_version
uint32_t num_bytes

Information about stored scratchpad

uint16_t processed_crc
uint32_t processed_num_bytes

Information about processed scratchpad, i.e. the scratchpad that produced the currently running firmware

uint8_t processed_seq
uint8_t seq
uint8_t status
uint8_t type

◆ msap_remote_status_req_t

struct msap_remote_status_req_t

MSAP-REMOTE_STATUS request frame

Definition at line 288 of file msap_frames.h.

Data Fields
w_addr_t target

Unicast or broadcast targeting

◆ msap_remote_status_ind_t

struct msap_remote_status_ind_t

MSAP-REMOTE_STATUS indication frame

Definition at line 304 of file msap_frames.h.

Data Fields
uint32_t area_id
uint16_t crc
uint8_t devel_version
uint8_t maint_version
uint8_t major_version

Version information of currently running firmware

uint8_t minor_version
uint32_t num_bytes

Information about stored scratchpad

uint16_t processed_crc
uint32_t processed_num_bytes

Information about processed scratchpad, i.e. the scratchpad that produced the currently running firmware

uint8_t processed_seq
uint8_t queued_indications
uint8_t seq
w_addr_t source
uint8_t status
uint8_t type
uint16_t update_req_timeout

◆ msap_on_scanned_nbors_ind_t

struct msap_on_scanned_nbors_ind_t

MSAP-ON_SCANNED_NBORS indication frame

Definition at line 346 of file msap_frames.h.

Data Fields
uint8_t queued_indications
uint8_t scan_ready

◆ msap_neighbors_cnf_t

struct msap_neighbors_cnf_t

MSAP-GET_NBORS

Definition at line 353 of file msap_frames.h.

Data Fields
msap_neighbor_entry_t neighbors[8]

The neighbors themselves, result amount are filled, rest is garbage

uint8_t result

Result of query, number of nbors is piggybacked here

◆ msap_sleep_start_req_t

struct msap_sleep_start_req_t

MSAP-SLEEP request frame

Definition at line 372 of file msap_frames.h.

Data Fields
uint32_t app_config_nrls

configuration for DREQ NRLS handling

uint32_t seconds

timeout value for stack sleep period

◆ msap_sleep_state_rsp_t

struct msap_sleep_state_rsp_t

MSAP-SLEEP state request rsp frame

Definition at line 381 of file msap_frames.h.

Data Fields
uint32_t sleep_seconds
uint8_t sleep_started

stack sleep state and remaining sleep time in seconds

◆ msap_sleep_latest_gotosleep_rsp_t

struct msap_sleep_latest_gotosleep_rsp_t

MSAP-SLEEP state request rsp frame

Definition at line 390 of file msap_frames.h.

Data Fields
uint32_t gotoNRSL_seconds

Previous NRLS time to enter onto stack sleep from request

◆ msap_install_quality_cnf_t

struct msap_install_quality_cnf_t

MSAP-GET_INSTALL_QUALITY

Definition at line 398 of file msap_frames.h.

Data Fields
uint8_t error_codes

Error codes

uint8_t quality

Quality

uint8_t result

Result of query, always OK

◆ msap_scratchpad_target_write_req_t

struct msap_scratchpad_target_write_req_t

MSAP_SCRATCHPAD_TARGET_WRITE_REQ request

Definition at line 426 of file msap_frames.h.

Data Fields
uint8_t action

Target action for the scratchpad

uint8_t param

Param for the action (specific per action)

uint16_t target_crc

Target CRC for the scrtachpad to handle

uint8_t target_sequence

Target sequence for the scratchpad to handle

◆ msap_scratchpad_target_read_cnf_t

struct msap_scratchpad_target_read_cnf_t

MSAP_SCRATCHPAD_TARGET_READ_REQ request

Definition at line 452 of file msap_frames.h.

Data Fields
uint8_t action
uint8_t param
uint8_t result

Read result

uint16_t target_crc
uint8_t target_sequence

fields:

See also
msap_scratchpad_target_write_req_t

◆ msap_scratchpad_block_read_req_t

struct msap_scratchpad_block_read_req_t

MSAP-SCRATCHPAD_BLOCK_READ request frame

Definition at line 467 of file msap_frames.h.

Data Fields
uint8_t num_bytes

Number of bytes of data

uint32_t start_addr

Byte offset from the beginning of scratchpad memory

◆ msap_scratchpad_block_read_cnf_t

struct msap_scratchpad_block_read_cnf_t

MSAP-SCRATCHPAD_BLOCK_READ confirmation frame

Definition at line 493 of file msap_frames.h.

Data Fields
uint8_t bytes[(112)]

Byte data

uint8_t result

Read result:

See also
msap_scratchpad_block_read_e

◆ msap_config_data_item_set_req_t

struct msap_config_data_item_set_req_t

MSAP-CONFIG_DATA_ITEM_SET request frame

Definition at line 508 of file msap_frames.h.

Data Fields
uint16_t npd_endpoint

Byte offset from the beginning of scratchpad memory

uint8_t npd_payload[80]

Data

uint8_t npd_payload_len

Number of bytes of data

◆ msap_config_data_item_set_cnf_t

struct msap_config_data_item_set_cnf_t

MSAP-CONFIG_DATA_ITEM_SET confirmation frame

Definition at line 537 of file msap_frames.h.

Data Fields
uint8_t result

Set result:

See also
msap_config_data_item_set_e

◆ msap_config_data_item_get_req_t

struct msap_config_data_item_get_req_t

MSAP-CONFIG_DATA_ITEM_GET request frame

Definition at line 544 of file msap_frames.h.

Data Fields
uint16_t npd_endpoint

NPD endpoint

◆ msap_config_data_item_get_cnf_t

struct msap_config_data_item_get_cnf_t

MSAP-CONFIG_DATA_ITEM_GET confirmation frame

Definition at line 566 of file msap_frames.h.

Data Fields
uint8_t npd_payload[80]

Data

uint8_t npd_payload_len

Number of bytes of data

uint8_t result

Set result:

See also
msap_config_data_item_get_e

◆ msap_config_data_list_items_cnf_t

struct msap_config_data_list_items_cnf_t

MSAP-CONFIG_DATA_LIST_ITEMS confirmation frame

Definition at line 592 of file msap_frames.h.

Data Fields
uint8_t amount_endpoints

Number of endpoints in the list

uint16_t endpoints[16]

Endpoints at the node

uint8_t result

Set result:

See also
msap_config_data_item_get_e

◆ msap_config_data_list_items_req_t

struct msap_config_data_list_items_req_t

MSAP-CONFIG_DATA_LIST_ITEMS request frame

Definition at line 603 of file msap_frames.h.

Data Fields
uint8_t command

Command field. Reserved for future use

◆ msap_config_data_item_ind_t

struct msap_config_data_item_ind_t

MSAP-CONFIG_DATA_ITEM_IND indication frame

Definition at line 610 of file msap_frames.h.

Data Fields
uint16_t npd_endpoint

NPD endpoint

uint8_t npd_payload[80]

Data

uint8_t npd_payload_len

Number of bytes of data

uint8_t queued_indications

Queued indications

◆ frame_msap

union frame_msap

Definition at line 622 of file msap_frames.h.

Data Fields
msap_config_data_item_get_cnf_t config_data_item_get_cnf
msap_config_data_item_get_req_t config_data_item_get_req
msap_config_data_item_ind_t config_data_item_ind
msap_config_data_item_set_cnf_t config_data_item_set_cnf
msap_config_data_item_set_req_t config_data_item_set_req
msap_config_data_list_items_cnf_t config_data_list_items_cnf
msap_config_data_list_items_req_t config_data_list_items_req
msap_sink_cost_read_cnf_t cost_read_cnf
msap_sink_cost_write_req_t cost_write_req
msap_ind_poll_cnf_t ind_poll_cnf
msap_install_quality_cnf_t inst_qual_cnf
msap_int_ind_t int_ind
msap_int_read_cnf_t int_read_cnf
msap_int_write_req_t int_write_req
msap_neighbors_cnf_t nbor_cnf
msap_on_scanned_nbors_ind_t on_scanned_nbors
msap_remote_status_ind_t remote_status_ind
msap_remote_status_req_t remote_status_req
msap_scratchpad_block_read_cnf_t scratchpad_block_read_cnf
msap_scratchpad_block_read_req_t scratchpad_block_read_req
msap_scratchpad_block_req_t scratchpad_block_req
msap_scratchpad_start_req_t scratchpad_start_req
msap_scratchpad_status_cnf_t scratchpad_status_cnf
msap_scratchpad_target_read_cnf_t scratchpad_target_read_cnf
msap_scratchpad_target_write_req_t scratchpad_target_write_req
msap_sleep_latest_gotosleep_rsp_t sleep_gotosleep_rsp_t
msap_sleep_start_req_t sleep_start_req
msap_sleep_state_rsp_t sleep_state_rsp
msap_start_req_t start_req
msap_state_ind_t state_ind

Enumeration Type Documentation

◆ msap_attr_e

Enumerator
MSAP_ATTR_STACK_STATUS 
MSAP_ATTR_PDU_BUFF_USAGE 
MSAP_ATTR_PDU_BUFF_CAPA 
MSAP_ATTR_NBOR_COUNT 
MSAP_ATTR_ROUTE_COUNT 
MSAP_ATTR_SYSTEM_TIME 
MSAP_ATTR_AC_LIMITS 
MSAP_ATTR_CURRENT_AC 
MSAP_ATTR_SCRATCHPAD_BLOCK_MAX 
MSAP_ATTR_SCRATCHPAD_NUM_BYTES 
MSAP_ATTR_RESERVED_1 
MSAP_ATTR_AUTOSTART 
MSAP_ATTR_AC_RANGE 
MSAP_ATTR_MCAST_GROUPS 

Definition at line 78 of file msap_frames.h.

79{
80 /* Read only */
91 /* Read / Write */
92 MSAP_ATTR_RESERVED_1 = 5, /* Old MSAP_ATTR_ENERGY */
msap_attr_e
Definition msap_frames.h:79
@ MSAP_ATTR_RESERVED_1
Definition msap_frames.h:92
@ MSAP_ATTR_CURRENT_AC
Definition msap_frames.h:88
@ MSAP_ATTR_SCRATCHPAD_NUM_BYTES
Definition msap_frames.h:90
@ MSAP_ATTR_AUTOSTART
Definition msap_frames.h:93
@ MSAP_ATTR_STACK_STATUS
Definition msap_frames.h:81
@ MSAP_ATTR_PDU_BUFF_CAPA
Definition msap_frames.h:83
@ MSAP_ATTR_SCRATCHPAD_BLOCK_MAX
Definition msap_frames.h:89
@ MSAP_ATTR_NBOR_COUNT
Definition msap_frames.h:84
@ MSAP_ATTR_MCAST_GROUPS
Definition msap_frames.h:95
@ MSAP_ATTR_AC_LIMITS
Definition msap_frames.h:87
@ MSAP_ATTR_SYSTEM_TIME
Definition msap_frames.h:86
@ MSAP_ATTR_PDU_BUFF_USAGE
Definition msap_frames.h:82
@ MSAP_ATTR_AC_RANGE
Definition msap_frames.h:94
@ MSAP_ATTR_ROUTE_COUNT
Definition msap_frames.h:85

◆ msap_attr_size_e

Enumerator
MSAP_ATTR_STACK_STATUS_SIZE 
MSAP_ATTR_PDU_BUFF_USAGE_SIZE 
MSAP_ATTR_PDU_BUFF_CAP_SIZE 
MSAP_ATTR_NBOR_COUNT_SIZE 
MSAP_ATTR_RESERVED_1_SIZE 
MSAP_ATTR_AUTOSTART_SIZE 
MSAP_ATTR_ROUTE_COUNT_SIZE 
MSAP_ATTR_SYSTEM_TIME_SIZE 
MSAP_ATTR_AC_RANGE_SIZE 
MSAP_ATTR_AC_LIMITS_SIZE 
MSAP_ATTR_CURRENT_AC_SIZE 
MSAP_ATTR_SCRATCHPAD_BLOCK_MAX_SIZE 
MSAP_ATTR_MCAST_GROUPS_SIZE 
MSAP_ATTR_SCRATCHPAD_NUM_BYTES_SIZE 

Definition at line 99 of file msap_frames.h.

100{
msap_attr_size_e
@ MSAP_ATTR_ROUTE_COUNT_SIZE
@ MSAP_ATTR_MCAST_GROUPS_SIZE
@ MSAP_ATTR_AC_LIMITS_SIZE
@ MSAP_ATTR_SCRATCHPAD_NUM_BYTES_SIZE
@ MSAP_ATTR_SYSTEM_TIME_SIZE
@ MSAP_ATTR_PDU_BUFF_CAP_SIZE
@ MSAP_ATTR_PDU_BUFF_USAGE_SIZE
@ MSAP_ATTR_AC_RANGE_SIZE
@ MSAP_ATTR_CURRENT_AC_SIZE
@ MSAP_ATTR_RESERVED_1_SIZE
@ MSAP_ATTR_SCRATCHPAD_BLOCK_MAX_SIZE
@ MSAP_ATTR_STACK_STATUS_SIZE
@ MSAP_ATTR_AUTOSTART_SIZE
@ MSAP_ATTR_NBOR_COUNT_SIZE
#define MULTICAST_ADDRESS_AMOUNT
Definition multicast.h:12
uint32_t w_addr_t
Definition waps_frames.h:17

◆ msap_config_data_item_get_e

Result of MSAP-CONFIG_DATA_ITEM_GET request

Enumerator
MSAP_CONFIG_DATA_ITEM_GET_SUCCESS 

Set request was successful

MSAP_CONFIG_DATA_ITEM_GET_INVALID_ENDPOINT 

Error: cannot read config data: no config data item set or received for that endpoint

MSAP_CONFIG_DATA_ITEM_GET_NOT_SUPPORTED 

Error: Feature not supported with this WM stack version

Definition at line 551 of file msap_frames.h.

552{
msap_config_data_item_get_e
@ MSAP_CONFIG_DATA_ITEM_GET_SUCCESS
@ MSAP_CONFIG_DATA_ITEM_GET_INVALID_ENDPOINT
@ MSAP_CONFIG_DATA_ITEM_GET_NOT_SUPPORTED

◆ msap_config_data_item_set_e

Result of MSAP-CONFIG_DATA_ITEM_SET request

Enumerator
MSAP_CONFIG_DATA_ITEM_SET_SUCCESS 

Set request was successful

MSAP_CONFIG_DATA_ITEM_SET_INVALID_ROLE 

Error: cannot write config data: node is not a sink

MSAP_CONFIG_DATA_ITEM_SET_INVALID_ENDPOINT 

Error: cannot read config data: no config data item set or received for that endpoint

MSAP_CONFIG_DATA_ITEM_SET_OUT_OF_MEMORY 

Error: out of memory

MSAP_CONFIG_DATA_ITEM_SET_INVALID_CONTENT 

Error: invalid content

MSAP_CONFIG_DATA_ITEM_SET_NOT_SUPPORTED 

Error: Feature not supported

Definition at line 519 of file msap_frames.h.

520{
msap_config_data_item_set_e
@ MSAP_CONFIG_DATA_ITEM_SET_OUT_OF_MEMORY
@ MSAP_CONFIG_DATA_ITEM_SET_INVALID_CONTENT
@ MSAP_CONFIG_DATA_ITEM_SET_SUCCESS
@ MSAP_CONFIG_DATA_ITEM_SET_NOT_SUPPORTED
@ MSAP_CONFIG_DATA_ITEM_SET_INVALID_ROLE
@ MSAP_CONFIG_DATA_ITEM_SET_INVALID_ENDPOINT

◆ msap_config_data_list_items_e

Result of MSAP-CONFIG_DATA_LIST_ITEMS request

Enumerator
MSAP_CONFIG_DATA_LIST_ITEMS_SUCCESS 

Set request was successful

MSAP_CONFIG_DATA_LIST_ITEMS_NOT_SUPPORTED 

Error: Feature not supported

Definition at line 577 of file msap_frames.h.

578{
msap_config_data_list_items_e
@ MSAP_CONFIG_DATA_LIST_ITEMS_NOT_SUPPORTED
@ MSAP_CONFIG_DATA_LIST_ITEMS_SUCCESS

◆ msap_neighbor_type_e

MSAP nbor type.

Note
Most reliable information is always from next hop and members Other entries might be very old
Enumerator
NEIGHBOR_IS_NEXT_HOP 

Neighbor is specifically a next hop cluster

NEIGHBOR_IS_MEMBER 

Neighbor is specifically a member of this node

NEIGHBOR_IS_CLUSTER 

Neighbor is synced or cluster from network scan

Definition at line 43 of file msap_frames.h.

44{
msap_neighbor_type_e
MSAP nbor type.
Definition msap_frames.h:44
@ NEIGHBOR_IS_CLUSTER
Definition msap_frames.h:50
@ NEIGHBOR_IS_NEXT_HOP
Definition msap_frames.h:46
@ NEIGHBOR_IS_MEMBER
Definition msap_frames.h:48

◆ msap_nrls_status_e

Result of MSAP-NRLS_STATUS request

Enumerator
MSAP_NRLS_SLEEP_ACTIVE 
MSAP_NRLS_SLEEP_NOT_STARTED 

Definition at line 339 of file msap_frames.h.

340{
msap_nrls_status_e
@ MSAP_NRLS_SLEEP_NOT_STARTED
@ MSAP_NRLS_SLEEP_ACTIVE

◆ msap_remote_status_e

Result of MSAP-REMOTE_STATUS request NB: ONLY one return code possible as feature is not implemented anymore and must be used through Remote API

Enumerator
MSAP_REMOTE_STATUS_ACCESS_DENIED 

Definition at line 298 of file msap_frames.h.

299{
msap_remote_status_e
@ MSAP_REMOTE_STATUS_ACCESS_DENIED

◆ msap_scan_nbors_status_e

Result of MSAP-SCAN_NBORS request

Enumerator
MSAP_SCAN_NBORS_SUCCESS 
MSAP_SCAN_NBORS_INVALID_STATE 
MSAP_SCAN_NBORS_ACCESS_DENIED 

Definition at line 331 of file msap_frames.h.

332{
msap_scan_nbors_status_e
@ MSAP_SCAN_NBORS_SUCCESS
@ MSAP_SCAN_NBORS_ACCESS_DENIED
@ MSAP_SCAN_NBORS_INVALID_STATE

◆ msap_scratchpad_action_e

Action of MSAP-SCRATCHPAD_TARGET(READ/WRITE)

Enumerator
MSAP_SCRATCHPAD_ACTION_NO_OTAP 

No otap in the sink tree

MSAP_SCRATCHPAD_ACTION_PROPAGATE_ONLY 

Only propagate the target scratchpad but do not process it

MSAP_SCRATCHPAD_ACTION_PROPAGATE_AND_PROCESS 

Propagate the target scratchpad and process it immediately

MSAP_SCRATCHPAD_ACTION_PROPAGATE_AND_PROCESS_WITH_DELAY 

Same as previous except that the processing should happen after the given delay. Delay starts when node receive the information

MSAP_SCRATCHPAD_ACTION_LEGACY 

Exchange and processing of scratchpad is managed the old way (seq comparison)

Definition at line 409 of file msap_frames.h.

410{
msap_scratchpad_action_e
@ MSAP_SCRATCHPAD_ACTION_PROPAGATE_AND_PROCESS_WITH_DELAY
@ MSAP_SCRATCHPAD_ACTION_LEGACY
@ MSAP_SCRATCHPAD_ACTION_PROPAGATE_ONLY
@ MSAP_SCRATCHPAD_ACTION_NO_OTAP
@ MSAP_SCRATCHPAD_ACTION_PROPAGATE_AND_PROCESS

◆ msap_scratchpad_block_e

Result of MSAP-SCRATCHPAD_BLOCK request

Enumerator
MSAP_SCRATCHPAD_BLOCK_SUCCESS 

Block request was successful

MSAP_SCRATCHPAD_BLOCK_COMPLETED_OK 

Block request was successful and all data received OK

MSAP_SCRATCHPAD_BLOCK_COMPLETED_ERROR 

Block request was successful, all data received but error in data

MSAP_SCRATCHPAD_BLOCK_INVALID_STATE 

Stack in invalid state

MSAP_SCRATCHPAD_BLOCK_NOT_ONGOING 

No block writes have been started

MSAP_SCRATCHPAD_BLOCK_INVALID_START_ADDR 

Invalid msap_scratchpad_block_req_t::start_addr

MSAP_SCRATCHPAD_BLOCK_INVALID_NUM_BYTES 

Invalid msap_scratchpad_block_req_t::num_bytes

MSAP_SCRATCHPAD_BLOCK_INVALID_DATA 

Data does not appear to be a valid scratchpad file

Definition at line 234 of file msap_frames.h.

235{
msap_scratchpad_block_e
@ MSAP_SCRATCHPAD_BLOCK_INVALID_NUM_BYTES
@ MSAP_SCRATCHPAD_BLOCK_COMPLETED_OK
@ MSAP_SCRATCHPAD_BLOCK_NOT_ONGOING
@ MSAP_SCRATCHPAD_BLOCK_SUCCESS
@ MSAP_SCRATCHPAD_BLOCK_INVALID_START_ADDR
@ MSAP_SCRATCHPAD_BLOCK_COMPLETED_ERROR
@ MSAP_SCRATCHPAD_BLOCK_INVALID_STATE
@ MSAP_SCRATCHPAD_BLOCK_INVALID_DATA

◆ msap_scratchpad_block_read_e

Result of MSAP-SCRATCHPAD_BLOCK_READ request

Enumerator
MSAP_SCRATCHPAD_BLOCK_READ_SUCCESS 

Read request was successful

MSAP_SCRATCHPAD_BLOCK_READ_INVALID_STATE 

Stack in invalid state

MSAP_SCRATCHPAD_BLOCK_READ_INVALID_START_ADDR 

Invalid msap_scratchpad_block_read_req_t::start_addr

MSAP_SCRATCHPAD_BLOCK_READ_INVALID_NUM_BYTES 

Invalid msap_scratchpad_block_read_req_t::num_bytes

MSAP_SCRATCHPAD_BLOCK_READ_NO_SCRATCHPAD 

No stored scratchpad

MSAP_SCRATCHPAD_BLOCK_READ_ACCESS_DENIED 

Access denied due to feature lock bits

Definition at line 476 of file msap_frames.h.

◆ msap_scratchpad_bootable_result_e

Result of MSAP-SCRATCHPAD_BOOTABLE request

Enumerator
MSAP_SCRATCHPAD_BOOTABLE_SUCCESS 
MSAP_SCRATCHPAD_BOOTABLE_INVALID_STATE 
MSAP_SCRATCHPAD_BOOTABLE_NO_SCRATCHPAD 
MSAP_SCRATCHPAD_BOOTABLE_ACCESS_DENIED 

Definition at line 279 of file msap_frames.h.

280{
msap_scratchpad_bootable_result_e
@ MSAP_SCRATCHPAD_BOOTABLE_INVALID_STATE
@ MSAP_SCRATCHPAD_BOOTABLE_NO_SCRATCHPAD
@ MSAP_SCRATCHPAD_BOOTABLE_SUCCESS
@ MSAP_SCRATCHPAD_BOOTABLE_ACCESS_DENIED

◆ msap_scratchpad_clear_e

Result of MSAP-SCRATCHPAD_CLEAR request

Enumerator
MSAP_SCRATCHPAD_CLEAR_SUCCESS 

Scratchpad cleared successfully

MSAP_SCRATCHPAD_CLEAR_INVALID_STATE 

Stack in invalid state

MSAP_SCRATCHPAD_CLEAR_ACCESS_DENIED 

Access denied due to feature lock bits

Definition at line 182 of file msap_frames.h.

183{
msap_scratchpad_clear_e
@ MSAP_SCRATCHPAD_CLEAR_SUCCESS
@ MSAP_SCRATCHPAD_CLEAR_INVALID_STATE
@ MSAP_SCRATCHPAD_CLEAR_ACCESS_DENIED

◆ msap_scratchpad_start_e

Result of MSAP-SCRATCHPAD_START request

Enumerator
MSAP_SCRATCHPAD_START_SUCCESS 

Scratchpad write started successfully

MSAP_SCRATCHPAD_START_INVALID_STATE 

Stack in invalid state

MSAP_SCRATCHPAD_START_INVALID_NUM_BYTES 

Invalid msap_scratchpad_start_req_t::num_bytes

MSAP_SCRATCHPAD_START_INVALID_SEQ 

Invalid msap_scratchpad_start_req_t::seq (not used anymore)

MSAP_SCRATCHPAD_START_ACCESS_DENIED 

Access denied due to feature lock bits

Definition at line 202 of file msap_frames.h.

203{
msap_scratchpad_start_e
@ MSAP_SCRATCHPAD_START_ACCESS_DENIED
@ MSAP_SCRATCHPAD_START_INVALID_STATE
@ MSAP_SCRATCHPAD_START_SUCCESS
@ MSAP_SCRATCHPAD_START_INVALID_NUM_BYTES
@ MSAP_SCRATCHPAD_START_INVALID_SEQ

◆ msap_scratchpad_target_write_res_e

Result of MSAP-SCRATCHPAD_WRITE_TARGET request

Enumerator
MSAP_SCRATCHPAD_TARGET_SUCCESS 

Scratchpad write started successfully

MSAP_SCRATCHPAD_TARGET_INVALID_ROLE 

Stack in invalid state

MSAP_SCRATCHPAD_TARGET_INVALID_VALUE 

One of the parameter provided is wrong

MSAP_SCRATCHPAD_TARGET_ACCESS_DENIED 

Access denied due to feature lock bits

Definition at line 439 of file msap_frames.h.

440{
msap_scratchpad_target_write_res_e
@ MSAP_SCRATCHPAD_TARGET_ACCESS_DENIED
@ MSAP_SCRATCHPAD_TARGET_INVALID_VALUE
@ MSAP_SCRATCHPAD_TARGET_SUCCESS
@ MSAP_SCRATCHPAD_TARGET_INVALID_ROLE

◆ msap_sleep_update_e

Result of MSAP-SLEEP start/stop request

Enumerator
MSAP_SLEEP_SUCCESS 
MSAP_SLEEP_INVALID_STATE 
MSAP_SLEEP_INVALID_ROLE 
MSAP_SLEEP_INVALID_VALUE 
MSAP_SLEEP_ACCESS_DENIED 

Definition at line 362 of file msap_frames.h.

363{
msap_sleep_update_e
@ MSAP_SLEEP_SUCCESS
@ MSAP_SLEEP_INVALID_ROLE
@ MSAP_SLEEP_ACCESS_DENIED
@ MSAP_SLEEP_INVALID_STATE
@ MSAP_SLEEP_INVALID_VALUE

Macro Definition Documentation

◆ APP_CONF_MAX

#define APP_CONF_MAX   80

App config max size. The define is needed for compiling time size reservations.

Definition at line 18 of file msap_frames.h.

◆ FRAME_MSAP_SCRATCHPAD_BLOCK_READ_CNF_HEADER_SIZE

#define FRAME_MSAP_SCRATCHPAD_BLOCK_READ_CNF_HEADER_SIZE    (sizeof(msap_scratchpad_block_read_cnf_t) - MSAP_SCRATCHPAD_BLOCK_READ_MAX_NUM_BYTES)

Definition at line 501 of file msap_frames.h.

◆ FRAME_MSAP_SCRATCHPAD_BLOCK_REQ_HEADER_SIZE

#define FRAME_MSAP_SCRATCHPAD_BLOCK_REQ_HEADER_SIZE    (sizeof(msap_scratchpad_block_req_t) - MSAP_SCRATCHPAD_BLOCK_MAX_NUM_BYTES)

Definition at line 230 of file msap_frames.h.

◆ MSAP_AUTOSTART

#define MSAP_AUTOSTART   1

Mask for MSAP_AUTOSTART

Definition at line 36 of file msap_frames.h.

◆ MSAP_CONFIG_DATA_ITEM_GET_HEADER_SIZE

#define MSAP_CONFIG_DATA_ITEM_GET_HEADER_SIZE   (sizeof(msap_config_data_item_get_cnf_t) - MSAP_NPD_PAYLOAD_MAX_LEN)

Header size of MSAP-CONFIG_DATA_ITEM_GET confirmation frame

Definition at line 563 of file msap_frames.h.

◆ MSAP_CONFIG_DATA_LIST_ITEMS_HEADER_SIZE

#define MSAP_CONFIG_DATA_LIST_ITEMS_HEADER_SIZE   (sizeof(msap_config_data_list_items_cnf_t) - sizeof(uint16_t) * MSAP_CONFIG_DATA_LIST_ITEMS_MAX_NUM_ENDPOINTS)

Header size of msap_config_data_list_items_cnf_t

Definition at line 589 of file msap_frames.h.

◆ MSAP_CONFIG_DATA_LIST_ITEMS_MAX_NUM_ENDPOINTS

#define MSAP_CONFIG_DATA_LIST_ITEMS_MAX_NUM_ENDPOINTS   16

Maximum number of endpoints in the list at msap_config_data_list_items_cnf_t::endpoints

Definition at line 586 of file msap_frames.h.

◆ MSAP_MAX_NBORS

#define MSAP_MAX_NBORS   8

How many neighbors in single query

Definition at line 33 of file msap_frames.h.

◆ MSAP_NPD_PAYLOAD_MAX_LEN

#define MSAP_NPD_PAYLOAD_MAX_LEN   80

Maximum number of bytes in an NPD payload

Definition at line 505 of file msap_frames.h.

◆ MSAP_SCRATCHPAD_BLOCK_MAX_NUM_BYTES

#define MSAP_SCRATCHPAD_BLOCK_MAX_NUM_BYTES   112

Maximum number of bytes in a single scratchpad block

Definition at line 217 of file msap_frames.h.

◆ MSAP_SCRATCHPAD_BLOCK_READ_MAX_NUM_BYTES

#define MSAP_SCRATCHPAD_BLOCK_READ_MAX_NUM_BYTES   (MSAP_SCRATCHPAD_BLOCK_MAX_NUM_BYTES)

Maximum number of bytes in a single scratchpad block

Definition at line 464 of file msap_frames.h.