| Demo HCI Implementation for WiMOD-LR Devices V2.0.3

WiMOD_SAP_GlobalLink24.h
1 //------------------------------------------------------------------------------
31 //------------------------------------------------------------------------------
32
33
34 #ifndef ARDUINO_SAP_WIMOD_SAP_GLOBALLINK24_H_
35 #define ARDUINO_SAP_WIMOD_SAP_GLOBALLINK24_H_
36
37 //------------------------------------------------------------------------------
38 //
39 // Section Includes Files
40 //
41 //------------------------------------------------------------------------------
42
43 #include "WiMOD_SAP_LORAWAN.h"
44
45
46 //------------------------------------------------------------------------------
47 // since the GlobalLink24 Stack emulates LoRaWAN most things are identical
48 //------------------------------------------------------------------------------
50
51 //#define TGlobalLink24Status TLoRaWANStatus
52 //#define TGlobalLink24JoinNwkIndStatusFormat TLoRaWanJoinNwkIndStatusFormat
53 //#define TGlobalLink24TxDataIndStatusFormat TLoRaWanTxDataIndStatusFormat
55 //#define TGlobalLink24_PowerSaving TLoRaWAN_PowerSaving
56 //#define TGlobalLink24_NwkStatus TLoRaWAN_NwkStatus
57 //
58 //#define GlobalLink24_MAC_DATA_SERVICE_TYPE_U_DATA LORAWAN_MAC_DATA_SERVICE_TYPE_U_DATA
59 //#define GlobalLink24_MAC_DATA_SERVICE_TYPE_C_DATA LORAWAN_MAC_DATA_SERVICE_TYPE_C_DATA
60 //
61 //#define TWiMODGlobalLink24_ActivateDeviceData TWiMODLORAWAN_ActivateDeviceData
62 //#define TWiMODGlobalLink24_JoinParams TWiMODLORAWAN_JoinParams
63 //#define TWiMODGlobalLink24_OptIndInfos TWiMODLORAWAN_OptIndInfos
64 //#define TWiMODGlobalLink24_TxIndData TWiMODLORAWAN_TxIndData
65 //#define TWiMODGlobalLink24_TX_Data TWiMODLORAWAN_TX_Data
66 //#define TWiMODGlobalLink24_RX_Data TWiMODLORAWAN_RX_Data
67 //#define TWiMODGlobalLink24_RX_MacCmdData TWiMODLORAWAN_RX_MacCmdData
68 //#define TWiMODGlobalLink24_RX_JoinedNwkData TWiMODLORAWAN_RX_JoinedNwkData
70 //#define TWiMODGlobalLink24_MacCmd TWiMODLORAWAN_MacCmd
71 //#define TWiMODGlobalLink24_RX_ACK_Data TWiMODLORAWAN_RX_ACK_Data
72 //#define TWiMODGlobalLink24_NwkStatus_Data TWiMODLORAWAN_NwkStatus_Data
73 //#define TWiMODGlobalLink24_NoData_Data TWiMODLORAWAN_NoData_Data
74 //#define TWiMODGlobalLink24_SupportedBands TWiMODLORAWAN_SupportedBands
75 //#define TWiMODGlobalLink24_TxPwrLimitConfig TWiMODLORAWAN_TxPwrLimitConfig
76 //#define TWiMODGlobalLink24_LinkAdrReqConfig TWiMODLORAWAN_LinkAdrReqConfig
78
79
80 #define TGlobalLink24Status TLoRaWANStatus
81 #define TGlobalLink24JoinNwkIndStatusFormat TLoRaWanJoinNwkIndStatusFormat
82 #define TGlobalLink24TxDataIndStatusFormat TLoRaWanTxDataIndStatusFormat
83 #define TGlobalLink24_FreqBand TLoRaWAN_FreqBand
84 #define TGlobalLink24_PowerSaving TLoRaWAN_PowerSaving
85 #define TGlobalLink24_NwkStatus TLoRaWAN_NwkStatus
86
87 #define GlobalLink24_MAC_DATA_SERVICE_TYPE_U_DATA LORAWAN_MAC_DATA_SERVICE_TYPE_U_DATA
88 #define GlobalLink24_MAC_DATA_SERVICE_TYPE_C_DATA LORAWAN_MAC_DATA_SERVICE_TYPE_C_DATA
89
90 #define TWiMODGlobalLink24_OptIndInfos TWiMODLORAWAN_OptIndInfos
91 #define TWiMODGlobalLink24_LinkAdrReqConfig TWiMODLORAWAN_LinkAdrReqConfig
92
93 struct TWiMODGlobalLink24_ActivateDeviceData : TWiMODLORAWAN_ActivateDeviceData { };
94 struct TWiMODGlobalLink24_JoinParams : TWiMODLORAWAN_JoinParams { };
95 struct TWiMODGlobalLink24_TxIndData : TWiMODLORAWAN_TxIndData { };
96 struct TWiMODGlobalLink24_TX_Data : TWiMODLORAWAN_TX_Data { };
97 struct TWiMODGlobalLink24_RX_Data : TWiMODLORAWAN_RX_Data { };
98 struct TWiMODGlobalLink24_RX_MacCmdData : TWiMODLORAWAN_RX_MacCmdData { };
99 struct TWiMODGlobalLink24_RX_JoinedNwkData : TWiMODLORAWAN_RX_JoinedNwkData { };
100 struct TWiMODGlobalLink24_RadioStackConfig : TWiMODLORAWAN_RadioStackConfig { };
101 struct TWiMODGlobalLink24_MacCmd : TWiMODLORAWAN_MacCmd { };
102 struct TWiMODGlobalLink24_RX_ACK_Data : TWiMODLORAWAN_RX_ACK_Data { };
103 struct TWiMODGlobalLink24_NwkStatus_Data : TWiMODLORAWAN_NwkStatus_Data { };
104 struct TWiMODGlobalLink24_NoData_Data : TWiMODLORAWAN_NoData_Data { };
105 struct TWiMODGlobalLink24_SupportedBands : TWiMODLORAWAN_SupportedBands { };
106
107
109
110 // Status Codes
111
112 #define GLOBALLINK24_STATUS_OK LORAWAN_STATUS_OK //Operation successful
113 #define GLOBALLINK24_STATUS_ERROR LORAWAN_STATUS_ERROR //Operation failed
114 #define GLOBALLINK24_STATUS_CMD_NOT_SUPPORTED LORAWAN_STATUS_CMD_NOT_SUPPORTED //Command is not supported
115 #define GLOBALLINK24_STATUS_WRONG_PARAMETER LORAWAN_STATUS_WRONG_PARAMETER //HCI message contains wrong parameter
116 #define GLOBALLINK24_STATUS_WRONG_DEVICE_MODE LORAWAN_STATUS_WRONG_DEVICE_MODE //Stack is running in a wrong mode
117 #define GLOBALLINK24_STATUS_DEVICE_NOT_ACTIVATED LORAWAN_STATUS_DEVICE_NOT_ACTIVATED //Device is not activated
118 #define GLOBALLINK24_STATUS_DEVICE_BUSY LORAWAN_STATUS_DEVICE_BUSY //Device is busy, command rejected
119 #define GLOBALLINK24_STATUS_QUEUE_FULL LORAWAN_STATUS_QUEUE_FULL //Message queue is full, command rejected
120 #define GLOBALLINK24_STATUS_LENGTH_ERROR LORAWAN_STATUS_LENGTH_ERROR //HCI message length is invalid or radio payload size is too large
121 #define GLOBALLINK24_STATUS_NO_FACTORY_SETTINGS LORAWAN_STATUS_NO_FACTORY_SETTINGS //Factory Settings EEPROM block missing or incompatible with current firmware version
122 #define GLOBALLINK24_STATUS_CHANNEL_BLOCKED LORAWAN_STATUS_CHANNEL_BLOCKED //Channel blocked by Duty Cycle
123 #define GLOBALLINK24_STATUS_CHANNEL_NOT_AVAILABLE LORAWAN_STATUS_CHANNEL_NOT_AVAILABLE //No channel available (e.g. no channel defined for the configured spreading factor)
124
125
126
127 //TxPowerLimitConfig ist nur in EU868 verfügbar
128 //SupportedBands ist auch in GlobalLink24 verfügbar
129 //MAC Commands von EU868 sind auch in GlobalLink24 gültig
130 //TxParamSetupReq MAC Command ist in GlobalLink24 gültig (in EU868 aber nicht)
131
132
133
134
135
136 #endif /* ARDUINO_SAP_WIMOD_SAP_GLOBALLINK24_H_ */
TWiMODLORAWAN_RX_JoinedNwkData
Structure containing data of the joined network indication.
Definition: WiMOD_SAP_LORAWAN_IDs.h:551
TWiMODLORAWAN_RX_Data
Structure containing RX (user) payload data.
Definition: WiMOD_SAP_LORAWAN_IDs.h:514
TWiMODGlobalLink24_NwkStatus_Data
Definition: WiMOD_SAP_GlobalLink24.h:103
TWiMODLORAWAN_NoData_Data
Structure containing infos of a NoData Indication message.
Definition: WiMOD_SAP_LORAWAN_IDs.h:648
TWiMODLORAWAN_TxIndData
Activation data structure for LoRa network activation.
Definition: WiMOD_SAP_LORAWAN_IDs.h:472
TWiMODGlobalLink24_NoData_Data
Definition: WiMOD_SAP_GlobalLink24.h:104
TWiMODLORAWAN_NwkStatus_Data
Structure containing all data about LoRaWAN network status.
Definition: WiMOD_SAP_LORAWAN_IDs.h:619
TWiMODGlobalLink24_RadioStackConfig
Definition: WiMOD_SAP_GlobalLink24.h:100
TWiMODGlobalLink24_ActivateDeviceData
Definition: WiMOD_SAP_GlobalLink24.h:93
TWiMODGlobalLink24_RX_Data
Definition: WiMOD_SAP_GlobalLink24.h:97
TWiMODLORAWAN_SupportedBands
data structure for supported bands
Definition: WiMOD_SAP_LORAWAN_IDs.h:663
TWiMODLORAWAN_JoinParams
JOIN data structure for LoRa network activation.
Definition: WiMOD_SAP_LORAWAN_IDs.h:450
TWiMODGlobalLink24_SupportedBands
Definition: WiMOD_SAP_GlobalLink24.h:105
WiMOD_SAP_LORAWAN.h
TWiMODLORAWAN_RadioStackConfig
Radio stack configuration related to to LoRaWAN specific options.
Definition: WiMOD_SAP_LORAWAN_IDs.h:568
TWiMODGlobalLink24_TxIndData
Definition: WiMOD_SAP_GlobalLink24.h:95
TWiMODGlobalLink24_TX_Data
Definition: WiMOD_SAP_GlobalLink24.h:96
TWiMODLORAWAN_RX_ACK_Data
Data structure for received Acknowledgment data.
Definition: WiMOD_SAP_LORAWAN_IDs.h:602
TWiMODGlobalLink24_JoinParams
Definition: WiMOD_SAP_GlobalLink24.h:94
TWiMODLORAWAN_MacCmd
LoRaWAN MAC command structure.
Definition: WiMOD_SAP_LORAWAN_IDs.h:590
TWiMODLORAWAN_RX_MacCmdData
Structure containing a received MAC command.
Definition: WiMOD_SAP_LORAWAN_IDs.h:534
TWiMODGlobalLink24_RX_MacCmdData
Definition: WiMOD_SAP_GlobalLink24.h:98
TWiMODLORAWAN_ActivateDeviceData
Activation data structure for LoRa network activation.
Definition: WiMOD_SAP_LORAWAN_IDs.h:439
TWiMODGlobalLink24_RX_ACK_Data
Definition: WiMOD_SAP_GlobalLink24.h:102
TWiMODLORAWAN_TX_Data
Structure containing all data necessary to transmitting a data message.
Definition: WiMOD_SAP_LORAWAN_IDs.h:502
TWiMODGlobalLink24_RX_JoinedNwkData
Definition: WiMOD_SAP_GlobalLink24.h:99
TWiMODGlobalLink24_MacCmd
Definition: WiMOD_SAP_GlobalLink24.h:101