Trident IoT Z-Wave SDK
 
Loading...
Searching...
No Matches
ZW_TransportEndpoint.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Silicon Laboratories Inc. <https://www.silabs.com/>
2//
3// SPDX-License-Identifier: BSD-3-Clause
4
11#ifndef _ZW_TRANSPORTENDPOINT_H_
12#define _ZW_TRANSPORTENDPOINT_H_
13
14#include <ZW_classcmd.h>
15#include <ZW_security_api.h>
16#include <ZW_transport_api.h>
17#include <ZAF_types.h>
18
39
48
50{
51 uint8_t security : 4;
53 uint8_t unused : 1;
55 uint8_t unused2 : 1;
56 uint8_t unused3 : 1;
58
68
70
74typedef struct
75{
76 MULTICHAN_DEST_NODE_ID_8bit node; // We cannot store 16bit NodeIDs in the NVM, because of backwards compatibility!
79
80/* Transmit options for ZW_SendDataEx */
88
89/* Transmit options for ZW_SendDataEx */
96
110
115
123GetEndpointcmdClassList( bool secList, uint8_t endpoint);
124
138 uint8_t *pData,
139 size_t dataLength,
141 ZAF_TX_Callback_t pCallback);
142
160 ZW_APPLICATION_TX_BUFFER *pCmd,
161 uint8_t cmdLength);
162
163
169void
172
173
180bool
182
183
193
199void
201
208#endif /* _ZW_TRANSPORTENDPOINT_H_ */
209
void(* ZAF_TX_Callback_t)(transmission_result_t *pTxResult)
Definition ZAF_types.h:330
received_frame_status_t
Definition ZAF_types.h:107
struct _MULTICHAN_NODE_INFO_PACKED_ MULTICHAN_NODE_INFO_PACKED
struct _TRANSMIT_OPTIONS_TYPE_EX_ TRANSMIT_OPTIONS_TYPE_EX
EZAF_EnqueueStatus_t ZAF_Transmit(uint8_t *pData, size_t dataLength, TRANSMIT_OPTIONS_TYPE_SINGLE_EX *pTxOptionsEx, ZAF_TX_Callback_t pCallback)
Send data. This function is used both as response to a command and for sending unsolicited frames Enc...
struct _TRANSMIT_OPTIONS_TYPE_SINGLE_EX_ TRANSMIT_OPTIONS_TYPE_SINGLE_EX
bool Check_not_legal_response_job(RECEIVE_OPTIONS_TYPE_EX *rxOpt)
Validate destination endpoint use bit-addressing. This function must only be used to check jobs that ...
struct _MULTICHAN_NODE_INFO_ MULTICHAN_NODE_INFO
received_frame_status_t Transport_ApplicationCommandHandlerEx(RECEIVE_OPTIONS_TYPE_EX *rxOpt, ZW_APPLICATION_TX_BUFFER *pCmd, uint8_t cmdLength)
zaf_cc_list_t * GetEndpointcmdClassList(bool secList, uint8_t endpoint)
Get endpoint non-secure or secure command class list.
void ZW_TransportEndpoint_Init(void)
void RxToTxOptions(RECEIVE_OPTIONS_TYPE_EX *rxopt, TRANSMIT_OPTIONS_TYPE_SINGLE_EX **txopt)
Helper function to switching endpoints for SendData.
EZAF_EnqueueStatus_t
Definition ZW_TransportEndpoint.h:34
void SetFlagSupervisionEncap(bool flag)
Set supervision-encapsulated-frame flag. The Command class call Check_not_legal_response_job() Use th...
bool is_multicast(RECEIVE_OPTIONS_TYPE_EX *rxOpt)
This function indicates if the frame was received using multicast addressing The Z-Wave Multicast fra...
enum _ENDPOINT_ ENDPOINT
destination_info_t MULTICHAN_NODE_ID
Definition ZW_TransportEndpoint.h:69
_ENDPOINT_
Definition ZW_TransportEndpoint.h:98
@ ZAF_ENQUEUE_STATUS_BUFFER_OVERRUN
Definition ZW_TransportEndpoint.h:37
@ ZAF_ENQUEUE_STATUS_TIMEOUT
Definition ZW_TransportEndpoint.h:36
@ ZAF_ENQUEUE_STATUS_SUCCESS
Definition ZW_TransportEndpoint.h:35
@ ENDPOINT_4
Definition ZW_TransportEndpoint.h:103
@ ENDPOINT_8
Definition ZW_TransportEndpoint.h:107
@ ENDPOINT_7
Definition ZW_TransportEndpoint.h:106
@ ENDPOINT_3
Definition ZW_TransportEndpoint.h:102
@ ENDPOINT_2
Definition ZW_TransportEndpoint.h:101
@ ENDPOINT_5
Definition ZW_TransportEndpoint.h:104
@ ENDPOINT_1
Definition ZW_TransportEndpoint.h:100
@ ENDPOINT_6
Definition ZW_TransportEndpoint.h:105
@ ENDPOINT_ROOT
Definition ZW_TransportEndpoint.h:99
@ ENDPOINT_9
Definition ZW_TransportEndpoint.h:108
enum SECURITY_KEY security_key_t
Definition ZAF_types.h:57
Destination info packed for the file system.
Definition ZW_TransportEndpoint.h:75
MULTICHAN_DEST_NODE_ID_8bit node
Definition ZW_TransportEndpoint.h:76
MULTICHAN_NODE_INFO_PACKED nodeInfoPacked
Definition ZW_TransportEndpoint.h:77
Definition ZAF_types.h:40
Definition ZW_TransportEndpoint.h:50
uint8_t unused3
Definition ZW_TransportEndpoint.h:56
uint8_t security
Definition ZW_TransportEndpoint.h:51
uint8_t unused2
Definition ZW_TransportEndpoint.h:55
uint8_t BitMultiChannelEncap
Definition ZW_TransportEndpoint.h:54
uint8_t unused
Definition ZW_TransportEndpoint.h:53
Definition ZW_TransportEndpoint.h:44
uint8_t BitMultiChannelEncap
Definition ZW_TransportEndpoint.h:45
security_key_t security
Definition ZW_TransportEndpoint.h:46
Definition ZAF_types.h:71
Definition ZW_TransportEndpoint.h:81
MULTICHAN_NODE_ID * pList
Definition ZW_TransportEndpoint.h:85
uint8_t list_length
Definition ZW_TransportEndpoint.h:86
uint8_t S2_groupID
Definition ZW_TransportEndpoint.h:82
uint8_t sourceEndpoint
Definition ZW_TransportEndpoint.h:84
uint8_t txOptions
Definition ZW_TransportEndpoint.h:83
Definition ZW_TransportEndpoint.h:90
uint8_t txOptions
Definition ZW_TransportEndpoint.h:91
MULTICHAN_NODE_ID * pDestNode
Definition ZW_TransportEndpoint.h:94
uint8_t txSecOptions
Definition ZW_TransportEndpoint.h:92
uint8_t sourceEndpoint
Definition ZW_TransportEndpoint.h:93
Definition ZW_TransportEndpoint.h:63
MULTICHAN_NODE_INFO nodeInfo
Definition ZW_TransportEndpoint.h:65
MULTICHAN_DEST_NODE_ID node
Definition ZW_TransportEndpoint.h:64
Definition ZAF_types.h:533