Wirepas SDK
csap_frames.h File Reference

Go to the source code of this file.

Typedefs

typedef uint8_t radio_channel_t
 

Data Structures

struct  csap_reset_req_t
 
union  frame_csap
 

Enumerations

enum  attribute_reset_result_e { ATTR_RESET_OK = 0 , ATTR_RESET_INVALID_STATE = 1 }
 
enum  csap_attr_e {
  CSAP_ATTR_NODE_ID = 1 , CSAP_ATTR_NETWORK_ADDR = 2 , CSAP_ATTR_NETWORK_CHANNEL = 3 , CSAP_ATTR_NODE_ROLE = 4 ,
  CSAP_ATTR_CIPHER_KEY = 13 , CSAP_ATTR_AUTHENTICATION_KEY = 14 , CSAP_ATTR_OFFLINE_SCAN = 20 , CSAP_ATTR_RESERVED_3 = 21 ,
  CSAP_ATTR_FEATURE_LOCK_BITS = 22 , CSAP_ATTR_FEATURE_LOCK_KEY = 23 , CSAP_ATTR_RESERVED_2 = 24 , CSAP_ATTR_RESERVED_CHANNELS = 25 ,
  CSAP_ATTR_APP_MAXT_TRANS_UNIT = 5 , CSAP_ATTR_PDU_BUFF_SIZE = 6 , CSAP_ATTR_SCRATCHPAD_SEQ = 7 , CSAP_ATTR_WAPS_VERSION = 8 ,
  CSAP_ATTR_FIRMWARE_MAJOR = 9 , CSAP_ATTR_FIRMWARE_MINOR = 10 , CSAP_ATTR_FIRMWARE_MAINTENANCE = 11 , CSAP_ATTR_FIRMWARE_DEVELOPMENT = 12 ,
  CSAP_ATTR_CHANNEL_LIMITS = 15 , CSAP_ATTR_APPCFG_MAX_SIZE = 16 , CSAP_ATTR_HWMAGIC = 17 , CSAP_ATTR_STACK_PROFILE = 18 ,
  CSAP_ATTR_RESERVED_1 = 19
}
 
enum  csap_attr_size_e {
  CSAP_ATTR_NODE_ID_SIZE = sizeof(w_addr_t) , CSAP_ATTR_NETWORK_CHANNEL_SIZE = sizeof(radio_channel_t) , CSAP_ATTR_NETWORK_ADDRESS_SIZE = 3u , CSAP_ATTR_NODE_ROLE_SIZE = 1 ,
  CSAP_ATTR_APDU_SIZE_SIZE = 1 , CSAP_ATTR_PDU_BUFF_SIZE_SIZE = 1 , CSAP_ATTR_SCRATCHPAD_SEQ_SIZE = sizeof(otap_seq_t) , CSAP_ATTR_WAPS_VERSION_SIZE = 2 ,
  CSAP_ATTR_FIRMWARE_MAJOR_SIZE = 2 , CSAP_ATTR_FIRMWARE_MINOR_SIZE = 2 , CSAP_ATTR_FIRMWARE_MAINTENANCE_SIZE = 2 , CSAP_ATTR_FIRMWARE_DEVELOPMENT_SIZE = 2 ,
  CSAP_ATTR_CIPHER_KEY_SIZE = 16 , CSAP_ATTR_AUTHENTICATION_KEY_SIZE = 16 , CSAP_ATTR_CHANNEL_LIMIT_SIZE = 2 , CSAP_ATTR_APPCFG_MAX_SIZE_SIZE = 1 ,
  CSAP_ATTR_HWMAGIC_SIZE = 2 , CSAP_ATTR_STACK_PROFILE_SIZE = 2 , CSAP_ATTR_OFFLINE_SCAN_SIZE = 2 , CSAP_ATTR_RESERVED_3_SIZE = 0 ,
  CSAP_ATTR_FEATURE_LOCK_BITS_SIZE = 4 , CSAP_ATTR_FEATURE_LOCK_KEY_SIZE = 16 , CSAP_ATTR_RESERVED_CHANNELS_SIZE = 0 , CSAP_ATTR_RESERVED_1_SIZE = 0 ,
  CSAP_ATTR_RESERVED_2_SIZE = 0
}
 
enum  csap_reset_e { CSAP_RESET_OK = ATTR_RESET_OK , CSAP_RESET_INVALID_STATE = ATTR_RESET_INVALID_STATE , CSAP_RESET_INVALID_KEY = 2 , CSAP_RESET_ACCESS_DENIED = 3 }
 

Macros

#define RADIO_ADDRESS_WIDTH   3u
 

Typedef Documentation

◆ radio_channel_t

typedef uint8_t radio_channel_t

Definition at line 11 of file csap_frames.h.


Data Structure Documentation

◆ csap_reset_req_t

struct csap_reset_req_t

Definition at line 87 of file csap_frames.h.

Data Fields
uint32_t reset_key

The purpose of the key is to make it a bit harder to accidentally reset the stored values.

◆ frame_csap

union frame_csap

Definition at line 96 of file csap_frames.h.

Data Fields
csap_reset_req_t reset_req

Enumeration Type Documentation

◆ attribute_reset_result_e

Enumerator
ATTR_RESET_OK 
ATTR_RESET_INVALID_STATE 

Definition at line 18 of file csap_frames.h.

19{
20 ATTR_RESET_OK = 0,
attribute_reset_result_e
Definition csap_frames.h:19
@ ATTR_RESET_OK
Definition csap_frames.h:20
@ ATTR_RESET_INVALID_STATE
Definition csap_frames.h:21

◆ csap_attr_e

CSAP attributes

Enumerator
CSAP_ATTR_NODE_ID 
CSAP_ATTR_NETWORK_ADDR 
CSAP_ATTR_NETWORK_CHANNEL 
CSAP_ATTR_NODE_ROLE 
CSAP_ATTR_CIPHER_KEY 
CSAP_ATTR_AUTHENTICATION_KEY 
CSAP_ATTR_OFFLINE_SCAN 
CSAP_ATTR_RESERVED_3 
CSAP_ATTR_FEATURE_LOCK_BITS 
CSAP_ATTR_FEATURE_LOCK_KEY 
CSAP_ATTR_RESERVED_2 
CSAP_ATTR_RESERVED_CHANNELS 
CSAP_ATTR_APP_MAXT_TRANS_UNIT 
CSAP_ATTR_PDU_BUFF_SIZE 
CSAP_ATTR_SCRATCHPAD_SEQ 
CSAP_ATTR_WAPS_VERSION 
CSAP_ATTR_FIRMWARE_MAJOR 
CSAP_ATTR_FIRMWARE_MINOR 
CSAP_ATTR_FIRMWARE_MAINTENANCE 
CSAP_ATTR_FIRMWARE_DEVELOPMENT 
CSAP_ATTR_CHANNEL_LIMITS 
CSAP_ATTR_APPCFG_MAX_SIZE 
CSAP_ATTR_HWMAGIC 
CSAP_ATTR_STACK_PROFILE 
CSAP_ATTR_RESERVED_1 

Definition at line 25 of file csap_frames.h.

26{
27 /* Read / Write */
40 /* Read only */
csap_attr_e
Definition csap_frames.h:26
@ CSAP_ATTR_RESERVED_3
Definition csap_frames.h:35
@ CSAP_ATTR_PDU_BUFF_SIZE
Definition csap_frames.h:42
@ CSAP_ATTR_APP_MAXT_TRANS_UNIT
Definition csap_frames.h:41
@ CSAP_ATTR_APPCFG_MAX_SIZE
Definition csap_frames.h:50
@ CSAP_ATTR_CHANNEL_LIMITS
Definition csap_frames.h:49
@ CSAP_ATTR_HWMAGIC
Definition csap_frames.h:51
@ CSAP_ATTR_FIRMWARE_MINOR
Definition csap_frames.h:46
@ CSAP_ATTR_OFFLINE_SCAN
Definition csap_frames.h:34
@ CSAP_ATTR_RESERVED_2
Definition csap_frames.h:38
@ CSAP_ATTR_NODE_ROLE
Definition csap_frames.h:31
@ CSAP_ATTR_FIRMWARE_MAINTENANCE
Definition csap_frames.h:47
@ CSAP_ATTR_FEATURE_LOCK_BITS
Definition csap_frames.h:36
@ CSAP_ATTR_AUTHENTICATION_KEY
Definition csap_frames.h:33
@ CSAP_ATTR_FIRMWARE_MAJOR
Definition csap_frames.h:45
@ CSAP_ATTR_CIPHER_KEY
Definition csap_frames.h:32
@ CSAP_ATTR_RESERVED_CHANNELS
Definition csap_frames.h:39
@ CSAP_ATTR_NETWORK_CHANNEL
Definition csap_frames.h:30
@ CSAP_ATTR_NODE_ID
Definition csap_frames.h:28
@ CSAP_ATTR_NETWORK_ADDR
Definition csap_frames.h:29
@ CSAP_ATTR_STACK_PROFILE
Definition csap_frames.h:52
@ CSAP_ATTR_FEATURE_LOCK_KEY
Definition csap_frames.h:37
@ CSAP_ATTR_FIRMWARE_DEVELOPMENT
Definition csap_frames.h:48
@ CSAP_ATTR_SCRATCHPAD_SEQ
Definition csap_frames.h:43
@ CSAP_ATTR_WAPS_VERSION
Definition csap_frames.h:44
@ CSAP_ATTR_RESERVED_1
Definition csap_frames.h:53

◆ csap_attr_size_e

CSAP attributes lengths

Enumerator
CSAP_ATTR_NODE_ID_SIZE 
CSAP_ATTR_NETWORK_CHANNEL_SIZE 
CSAP_ATTR_NETWORK_ADDRESS_SIZE 
CSAP_ATTR_NODE_ROLE_SIZE 
CSAP_ATTR_APDU_SIZE_SIZE 
CSAP_ATTR_PDU_BUFF_SIZE_SIZE 
CSAP_ATTR_SCRATCHPAD_SEQ_SIZE 
CSAP_ATTR_WAPS_VERSION_SIZE 
CSAP_ATTR_FIRMWARE_MAJOR_SIZE 
CSAP_ATTR_FIRMWARE_MINOR_SIZE 
CSAP_ATTR_FIRMWARE_MAINTENANCE_SIZE 
CSAP_ATTR_FIRMWARE_DEVELOPMENT_SIZE 
CSAP_ATTR_CIPHER_KEY_SIZE 
CSAP_ATTR_AUTHENTICATION_KEY_SIZE 
CSAP_ATTR_CHANNEL_LIMIT_SIZE 
CSAP_ATTR_APPCFG_MAX_SIZE_SIZE 
CSAP_ATTR_HWMAGIC_SIZE 
CSAP_ATTR_STACK_PROFILE_SIZE 
CSAP_ATTR_OFFLINE_SCAN_SIZE 
CSAP_ATTR_RESERVED_3_SIZE 
CSAP_ATTR_FEATURE_LOCK_BITS_SIZE 
CSAP_ATTR_FEATURE_LOCK_KEY_SIZE 
CSAP_ATTR_RESERVED_CHANNELS_SIZE 
CSAP_ATTR_RESERVED_1_SIZE 
CSAP_ATTR_RESERVED_2_SIZE 

Definition at line 57 of file csap_frames.h.

58{
81 CSAP_ATTR_RESERVED_CHANNELS_SIZE = 0, /* Variable size */
uint8_t radio_channel_t
Definition csap_frames.h:11
#define RADIO_ADDRESS_WIDTH
Definition csap_frames.h:16
csap_attr_size_e
Definition csap_frames.h:58
@ CSAP_ATTR_FEATURE_LOCK_KEY_SIZE
Definition csap_frames.h:80
@ CSAP_ATTR_RESERVED_2_SIZE
Definition csap_frames.h:83
@ CSAP_ATTR_OFFLINE_SCAN_SIZE
Definition csap_frames.h:77
@ CSAP_ATTR_FIRMWARE_MAJOR_SIZE
Definition csap_frames.h:67
@ CSAP_ATTR_NODE_ID_SIZE
Definition csap_frames.h:59
@ CSAP_ATTR_CHANNEL_LIMIT_SIZE
Definition csap_frames.h:73
@ CSAP_ATTR_FIRMWARE_MAINTENANCE_SIZE
Definition csap_frames.h:69
@ CSAP_ATTR_RESERVED_1_SIZE
Definition csap_frames.h:82
@ CSAP_ATTR_FEATURE_LOCK_BITS_SIZE
Definition csap_frames.h:79
@ CSAP_ATTR_AUTHENTICATION_KEY_SIZE
Definition csap_frames.h:72
@ CSAP_ATTR_RESERVED_CHANNELS_SIZE
Definition csap_frames.h:81
@ CSAP_ATTR_APPCFG_MAX_SIZE_SIZE
Definition csap_frames.h:74
@ CSAP_ATTR_NODE_ROLE_SIZE
Definition csap_frames.h:62
@ CSAP_ATTR_PDU_BUFF_SIZE_SIZE
Definition csap_frames.h:64
@ CSAP_ATTR_CIPHER_KEY_SIZE
Definition csap_frames.h:71
@ CSAP_ATTR_FIRMWARE_DEVELOPMENT_SIZE
Definition csap_frames.h:70
@ CSAP_ATTR_NETWORK_CHANNEL_SIZE
Definition csap_frames.h:60
@ CSAP_ATTR_STACK_PROFILE_SIZE
Definition csap_frames.h:76
@ CSAP_ATTR_FIRMWARE_MINOR_SIZE
Definition csap_frames.h:68
@ CSAP_ATTR_SCRATCHPAD_SEQ_SIZE
Definition csap_frames.h:65
@ CSAP_ATTR_RESERVED_3_SIZE
Definition csap_frames.h:78
@ CSAP_ATTR_APDU_SIZE_SIZE
Definition csap_frames.h:63
@ CSAP_ATTR_WAPS_VERSION_SIZE
Definition csap_frames.h:66
@ CSAP_ATTR_HWMAGIC_SIZE
Definition csap_frames.h:75
@ CSAP_ATTR_NETWORK_ADDRESS_SIZE
Definition csap_frames.h:61
uint8_t otap_seq_t
Type for OTAP sequence number.
Definition msap_frames.h:25
uint32_t w_addr_t
Definition waps_frames.h:17

◆ csap_reset_e

Enumerator
CSAP_RESET_OK 
CSAP_RESET_INVALID_STATE 
CSAP_RESET_INVALID_KEY 
CSAP_RESET_ACCESS_DENIED 

Definition at line 101 of file csap_frames.h.

102{
103 // Expand to include the "DoIt" key
csap_reset_e
@ CSAP_RESET_OK
@ CSAP_RESET_INVALID_STATE
@ CSAP_RESET_ACCESS_DENIED
@ CSAP_RESET_INVALID_KEY

Macro Definition Documentation

◆ RADIO_ADDRESS_WIDTH

#define RADIO_ADDRESS_WIDTH   3u

Network address width, acceptable value range 2-4.

Definition at line 16 of file csap_frames.h.