File tree Expand file tree Collapse file tree 18 files changed +578
-517
lines changed Expand file tree Collapse file tree 18 files changed +578
-517
lines changed Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change 1
1
/* *
2
2
* @file
3
3
*
4
- * @brief Implementation of LoRaWANBase
4
+ * @brief A LoRaWAN network interface
5
5
*
6
6
* Copyright (c) 2017, Arm Limited and affiliates.
7
7
* SPDX-License-Identifier: Apache-2.0
21
21
22
22
#include " LoRaWANInterface.h"
23
23
#include " lorastack/phy/loraphy_target.h"
24
+ #include " mbed-trace/mbed_trace.h"
25
+ #define TRACE_GROUP " LSTK"
24
26
27
+ using namespace mbed ;
25
28
using namespace events ;
26
29
27
30
LoRaWANInterface::LoRaWANInterface (LoRaRadio &radio)
Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change 54
54
55
55
class LoRaPHY ;
56
56
57
+ /* * LoRaWANStack Class
58
+ * A controller layer for LoRaWAN MAC and PHY
59
+ */
57
60
class LoRaWANStack : private mbed ::NonCopyable<LoRaWANStack> {
58
61
59
62
public:
Original file line number Diff line number Diff line change 56
56
57
57
#include " platform/ScopedLock.h"
58
58
59
+ /* * LoRaMac Class
60
+ * Implementation of LoRaWAN MAC layer
61
+ */
59
62
class LoRaMac {
60
63
61
64
public:
Original file line number Diff line number Diff line change 51
51
52
52
class LoRaMac ;
53
53
54
+ /* * LoRaMacCommand Class
55
+ * Helper class for LoRaMac layer to handle any MAC commands
56
+ */
54
57
class LoRaMacCommand {
55
58
56
59
public:
Original file line number Diff line number Diff line change 40
40
#include " LoRaRadio.h"
41
41
#include " lora_phy_ds.h"
42
42
43
+ /* * LoRaPHY Class
44
+ * Parent class for LoRa regional PHY implementations
45
+ */
43
46
class LoRaPHY : private mbed ::NonCopyable<LoRaPHY> {
44
47
45
48
public:
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHY_AS923_H_
33
33
#define MBED_OS_LORAPHY_AS923_H_
34
34
35
+ #if !(DOXYGEN_ONLY)
36
+
35
37
#include " LoRaPHY.h"
36
38
37
39
/* !
46
48
47
49
#define AS923_CHANNEL_MASK_SIZE 1
48
50
49
-
50
51
class LoRaPHYAS923 : public LoRaPHY {
51
52
52
53
public:
@@ -68,4 +69,5 @@ class LoRaPHYAS923 : public LoRaPHY {
68
69
uint16_t default_channel_mask[AS923_CHANNEL_MASK_SIZE];
69
70
};
70
71
72
+ #endif /* DOXYGEN_ONLY*/
71
73
#endif /* MBED_OS_LORAPHY_AS923_H_ */
Original file line number Diff line number Diff line change 33
33
34
34
#define MBED_OS_LORAPHY_AU915_H_
35
35
36
+ #if !(DOXYGEN_ONLY)
37
+
36
38
#include " LoRaPHY.h"
37
39
38
40
// Definitions
48
50
49
51
#define AU915_CHANNEL_MASK_SIZE 5
50
52
51
-
52
53
class LoRaPHYAU915 : public LoRaPHY {
53
54
54
55
public:
@@ -126,4 +127,6 @@ class LoRaPHYAU915 : public LoRaPHY {
126
127
uint16_t default_channel_mask[AU915_CHANNEL_MASK_SIZE];
127
128
};
128
129
130
+ #endif /* DOXYGEN_ONLY*/
129
131
#endif /* MBED_OS_LORAPHY_AU915_H_ */
132
+
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHY_CN470_H_
33
33
#define MBED_OS_LORAPHY_CN470_H_
34
34
35
+ #if !(DOXYGEN_ONLY)
36
+
35
37
#include " LoRaPHY.h"
36
38
37
39
// Definitions
@@ -94,4 +96,5 @@ class LoRaPHYCN470 : public LoRaPHY {
94
96
uint16_t default_channel_mask[CN470_CHANNEL_MASK_SIZE];
95
97
};
96
98
99
+ #endif /* DOXYGEN_ONLY*/
97
100
#endif /* MBED_OS_LORAPHY_CN470_H_ */
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHY_CN779_H_
33
33
#define MBED_OS_LORAPHY_CN779_H_
34
34
35
+ #if !(DOXYGEN_ONLY)
36
+
35
37
#include " LoRaPHY.h"
36
38
37
39
#define CN779_MAX_NB_CHANNELS 16
@@ -70,4 +72,5 @@ class LoRaPHYCN779 : public LoRaPHY {
70
72
uint16_t default_channel_mask[CN779_CHANNEL_MASK_SIZE];
71
73
};
72
74
75
+ #endif /* DOXYGEN_ONLY*/
73
76
#endif /* MBED_OS_LORAPHY_CN779_H_ */
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHY_EU433_H_
33
33
#define MBED_OS_LORAPHY_EU433_H_
34
34
35
+ #if !(DOXYGEN_ONLY)
36
+
35
37
#include " LoRaPHY.h"
36
38
37
39
/* !
@@ -76,5 +78,5 @@ class LoRaPHYEU433 : public LoRaPHY {
76
78
uint16_t default_channel_mask[EU433_CHANNEL_MASK_SIZE];
77
79
};
78
80
79
-
81
+ # endif /* DOXYGEN_ONLY */
80
82
#endif /* MBED_OS_LORAPHY_EU433_H_ */
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHY_EU868_H_
33
33
#define MBED_OS_LORAPHY_EU868_H_
34
34
35
+ #if !(DOXYGEN_ONLY)
36
+
35
37
#include " LoRaPHY.h"
36
38
37
39
/* !
@@ -79,4 +81,5 @@ class LoRaPHYEU868 : public LoRaPHY {
79
81
uint16_t default_channel_mask[EU868_CHANNEL_MASK_SIZE];
80
82
};
81
83
84
+ #endif /* DOXYGEN_ONLY*/
82
85
#endif /* MBED_OS_LORAPHY_EU868_H_ */
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHY_IN865_H_
33
33
#define MBED_OS_LORAPHY_IN865_H_
34
34
35
- #include " LoRaPHY.h "
35
+ #if !(DOXYGEN_ONLY)
36
36
37
+ #include " LoRaPHY.h"
37
38
38
39
/* !
39
40
* LoRaMac maximum number of channels
@@ -79,4 +80,5 @@ class LoRaPHYIN865 : public LoRaPHY {
79
80
uint16_t default_channel_mask[IN865_CHANNEL_MASK_SIZE];
80
81
};
81
82
83
+ #endif /* DOXYGEN_ONLY */
82
84
#endif /* MBED_OS_LORAPHY_IN865_H_ */
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHY_KR920_H_
33
33
#define MBED_OS_LORAPHY_KR920_H_
34
34
35
+ #if !(DOXYGEN_ONLY)
36
+
35
37
#include " LoRaPHY.h"
36
38
37
39
/* !
@@ -92,5 +94,6 @@ class LoRaPHYKR920 : public LoRaPHY {
92
94
uint16_t default_channel_mask[KR920_CHANNEL_MASK_SIZE];
93
95
};
94
96
97
+ #endif /* DOXYGEN_ONLY */
95
98
#endif // MBED_OS_LORAPHY_KR920_H_
96
99
Original file line number Diff line number Diff line change 32
32
#ifndef MBED_OS_LORAPHYUS_915_H_
33
33
#define MBED_OS_LORAPHYUS_915_H_
34
34
35
+ #if !(DOXYGEN_ONLY)
36
+
35
37
#include " LoRaPHY.h"
36
38
37
39
/* !
@@ -129,4 +131,5 @@ class LoRaPHYUS915 : public LoRaPHY {
129
131
uint16_t default_channel_mask[US915_CHANNEL_MASK_SIZE];
130
132
};
131
133
134
+ #endif /* DOXYGEN_ONLY */
132
135
#endif /* MBED_OS_LORAPHY_US915_H_ */
Original file line number Diff line number Diff line change @@ -480,21 +480,29 @@ typedef struct continuous_wave_mode_params_s {
480
480
uint16_t timeout ;
481
481
} cw_mode_params_t ;
482
482
483
+ /*!
484
+ * Template for a table
485
+ */
483
486
typedef struct {
484
487
void * table ;
485
488
uint8_t size ;
486
489
} loraphy_table_t ;
487
490
491
+ /*!
492
+ * Contains information regarding channel configuration of
493
+ * a given PHY
494
+ */
488
495
typedef struct {
489
-
490
496
uint8_t channel_list_size ;
491
497
uint8_t mask_size ;
492
-
493
498
uint16_t * mask ;
494
499
uint16_t * default_mask ;
495
500
channel_params_t * channel_list ;
496
501
} loraphy_channels_t ;
497
502
503
+ /*!
504
+ * Global configuration parameters of a given PHY
505
+ */
498
506
typedef struct {
499
507
bool duty_cycle_enabled ;
500
508
bool accept_tx_param_setup_req ;
Original file line number Diff line number Diff line change @@ -1040,6 +1040,9 @@ typedef struct {
1040
1040
int timer_id ;
1041
1041
} timer_event_t ;
1042
1042
1043
+ /*!
1044
+ * A composite structure containing device identifiers and security keys
1045
+ */
1043
1046
typedef struct {
1044
1047
/*!
1045
1048
* Device IEEE EUI
@@ -1070,6 +1073,9 @@ typedef struct {
1070
1073
1071
1074
} loramac_keys ;
1072
1075
1076
+ /*!
1077
+ * A composite structure containing all the timers used in the LoRaWAN operation
1078
+ */
1073
1079
typedef struct {
1074
1080
/*!
1075
1081
* Aggregated duty cycle management
@@ -1107,6 +1113,9 @@ typedef struct {
1107
1113
1108
1114
} lorawan_timers ;
1109
1115
1116
+ /*!
1117
+ * Global MAC layer configuration parameters
1118
+ */
1110
1119
typedef struct {
1111
1120
1112
1121
/*!
You can’t perform that action at this time.
0 commit comments