Wiki source code of Change Gateway Power
Hide last authors
author | version | line-number | content |
---|---|---|---|
![]() |
18.2 | 1 | (% class="wikigeneratedid" %) |
2 | **Table of Contents:** | ||
![]() |
8.1 | 3 | |
![]() |
18.2 | 4 | {{toc/}} |
5 | |||
6 | |||
7 | |||
8 | |||
9 | = 1. Overview = | ||
10 | |||
11 | |||
![]() |
18.3 | 12 | ((( |
![]() |
9.1 | 13 | In LoRaWAN protocol, the gateway transmit packet uses the output power base on the Power Index from the LoRaWAN server downlink. for example, the LoRaWAN server sends a downlink with this info "rf_power=14", gateway got this info and it will search the index for rf_power=14 and use the related rf setting to set output power. In some cases, the LoRaWAN server might set the rf-power to a quite low value ( for example 0dB) which is not practical for use. In such a case, the User can manually change the rf_power=0's rf settings to a higher power out. Below are the methods. |
![]() |
18.3 | 14 | ))) |
![]() |
8.1 | 15 | |
16 | |||
![]() |
18.2 | 17 | = 2. Change Power for Semtech UDP Paket forward connection = |
![]() |
1.3 | 18 | |
![]() |
4.1 | 19 | |
![]() |
18.3 | 20 | ((( |
![]() |
9.1 | 21 | In LoRaWAN protocol, the gateway output power refers to the downstream packets sent by Gateway. This output power is controlled by the LoRaWAN server. |
![]() |
18.3 | 22 | ))) |
![]() |
1.3 | 23 | |
![]() |
18.3 | 24 | ((( |
![]() |
9.1 | 25 | Gateway maintains a power index in the file: /etc/lora/global_conf.json for example: |
![]() |
18.3 | 26 | ))) |
![]() |
1.3 | 27 | |
![]() |
5.1 | 28 | |
![]() |
1.3 | 29 | (% class="box" %) |
30 | ((( | ||
31 | "tx_lut_3": { | ||
32 | "desc": "TX gain table, index 3", ~/~/ Index 3 refer to rf_power: 15dB. device will set the pa_gain,mix_gain,dig_gain | ||
![]() |
18.3 | 33 | "pa_gain": 2, ~/~/ to the value mentioned here so to generate 15dB output power. |
![]() |
1.3 | 34 | "mix_gain": 10, |
35 | "rf_power": 15, | ||
36 | "dig_gain": 1 | ||
37 | }, | ||
38 | "tx_lut_4": { | ||
39 | "desc": "TX gain table, index 4", | ||
40 | "pa_gain": 2, | ||
41 | "mix_gain": 10, | ||
42 | "rf_power": 16, | ||
43 | "dig_gain": 0 | ||
44 | ))) | ||
45 | |||
![]() |
5.1 | 46 | |
![]() |
18.3 | 47 | ((( |
![]() |
18.2 | 48 | (% style="color:red" %)**Note: If when lorawan server specifies a rf_power that is not listed above. gateway will choose the closest power. profile.** |
![]() |
18.3 | 49 | ))) |
![]() |
6.1 | 50 | |
![]() |
18.2 | 51 | |
![]() |
18.3 | 52 | ((( |
![]() |
9.1 | 53 | When the LoRaWAN server sends a downlink stream, the server will also ask the gateway to use rf_power as output. So users don't need to consider controlling on the gateway side. |
![]() |
18.3 | 54 | ))) |
![]() |
1.3 | 55 | |
![]() |
18.3 | 56 | ((( |
![]() |
9.1 | 57 | If users want to always use a higher power or a lower power. Users can modify the pa_gain,mix_gain, and dig_gain to specify rf_power to achieve this purpose. This is not recommended, because this might break the regulator for a specific country. |
![]() |
18.3 | 58 | ))) |
![]() |
1.3 | 59 | |
![]() |
18.3 | 60 | ((( |
![]() |
9.1 | 61 | Please note, that the global_conf.json file will be overwritten by the match region files in /etc/lora/cfg-30x when changing settings on the web. So the user needs to change the files in /etc/lora/cfg-cfg-30x instead of global_conf.json |
![]() |
18.3 | 62 | ))) |
![]() |
7.1 | 63 | |
64 | |||
![]() |
18.2 | 65 | = 3. Change Power for LoRaWAN Basic Station connection = |
![]() |
7.1 | 66 | |
![]() |
9.1 | 67 | |
![]() |
10.1 | 68 | First, you need to find out what is the chip module of the gateway? |
![]() |
9.1 | 69 | |
![]() |
10.1 | 70 | (% class="box infomessage" %) |
71 | ((( | ||
![]() |
18.2 | 72 | **cat /var/iot/chip ** |
![]() |
10.1 | 73 | ))) |
74 | |||
![]() |
12.1 | 75 | [[image:image-20220623140335-1.png||height="241" width="378"]] |
76 | |||
![]() |
16.1 | 77 | Gateways using the SX1301 LoRaWAN Concentrator are the [[LG308>>https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LG308-LG301/&file=Datasheet_LG308_LoRaWAN_Gateway.pdf]] and [[DLOS8>>https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/DLOS8/&file=DLOS8_LoRaWAN_Gateway_User_Manual_v1.3.pdf]]. |
![]() |
12.1 | 78 | |
79 | |||
![]() |
18.2 | 80 | (% style="color:blue" %)**SX1301 Change Power for LoRaWAN Basic Station Connection example:** |
![]() |
12.1 | 81 | |
![]() |
18.1 | 82 | Gateway maintains a power index in the file: /etc/station/station-sx1301.conf |
![]() |
13.1 | 83 | |
![]() |
10.1 | 84 | (% class="box" %) |
85 | ((( | ||
![]() |
12.1 | 86 | { |
87 | /* If slave-X.conf present this acts as default settings */ | ||
88 | "SX1301_conf": { /* Actual channel plan is controlled by server */ | ||
89 | "lorawan_public": true, /* is default */ | ||
90 | "clksrc": 1, /* radio_1 provides clock to concentrator */ | ||
91 | /* path to the SPI device, un-comment if not specified on the command line e.g., RADIODEV=/dev/spidev0.0 */ | ||
92 | "device": "/dev/spidev1.0", | ||
93 | /* freq/enable provided by LNS - only HW specific settings listed here */ | ||
![]() |
13.1 | 94 | |
![]() |
15.1 | 95 | ~|<~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-(% style="color:red" %)Add parameters:"tx_gain_lut" : [ TX_GAIN_LUT, .. ] |
![]() |
13.1 | 96 | |
![]() |
12.1 | 97 | "radio_0": { |
98 | "type": "SX1257", | ||
99 | "rssi_offset": -166.0, | ||
100 | "tx_enable": true, | ||
101 | "antenna_gain": 0 | ||
102 | }, | ||
103 | "radio_1": { | ||
104 | "type": "SX1257", | ||
105 | "rssi_offset": -166.0, | ||
106 | "tx_enable": false | ||
107 | } | ||
108 | /* chan_multiSF_X, chan_Lora_std, chan_FSK provided by LNS */ | ||
109 | }, | ||
![]() |
10.1 | 110 | ))) |
![]() |
13.1 | 111 | |
![]() |
15.1 | 112 | |
![]() |
18.2 | 113 | Add parameters:**"(% style="color:blue" %)tx_gain_lut": [ TX_GAIN_LUT, .. ](%%)** |
114 | |||
![]() |
14.1 | 115 | (% class="box" %) |
116 | ((( | ||
117 | { | ||
118 | /* If slave-X.conf present this acts as default settings */ | ||
119 | "SX1301_conf": { /* Actual channel plan is controlled by server */ | ||
120 | "lorawan_public": true, /* is default */ | ||
121 | "clksrc": 1, /* radio_1 provides clock to concentrator */ | ||
122 | /* path to the SPI device, un-comment if not specified on the command line e.g., RADIODEV=/dev/spidev0.0 */ | ||
123 | "device": "/dev/spidev1.0", | ||
124 | /* freq/enable provided by LNS - only HW specific settings listed here */ | ||
125 | "tx_gain_lut":[ | ||
![]() |
18.1 | 126 | {"rf_power": 12, "pa_gain": 2, "mix_gain": 11, "dig_gain": 2, "dac_gain": 3}, |
![]() |
14.1 | 127 | {"rf_power": 13, "pa_gain": 2, "mix_gain": 10, "dig_gain": 0, "dac_gain": 3}, |
128 | {"rf_power": 14, "pa_gain": 2, "mix_gain": 12, "dig_gain": 2, "dac_gain": 3}, | ||
129 | {"rf_power": 15, "pa_gain": 2, "mix_gain": 13, "dig_gain": 2, "dac_gain": 3}, | ||
![]() |
18.1 | 130 | |
131 | /* Index 3 refer to rf_power: 15dB. device will set the pa_gain,mix_gain,dig_gain */ | ||
132 | |||
133 | /* to the value mentioned here so as to generate 15dB output power.*/ | ||
![]() |
14.1 | 134 | {"rf_power": 16, "pa_gain": 2, "mix_gain": 13, "dig_gain": 1, "dac_gain": 3}, |
135 | {"rf_power": 17, "pa_gain": 2, "mix_gain": 14, "dig_gain": 1, "dac_gain": 3}, | ||
136 | {"rf_power": 18, "pa_gain": 2, "mix_gain": 15, "dig_gain": 2, "dac_gain": 3}, | ||
137 | {"rf_power": 19, "pa_gain": 2, "mix_gain": 15, "dig_gain": 1, "dac_gain": 3}, | ||
138 | {"rf_power": 20, "pa_gain": 2, "mix_gain": 15, "dig_gain": 1, "dac_gain": 3}, | ||
139 | {"rf_power": 21, "pa_gain": 3, "mix_gain": 9, "dig_gain": 0, "dac_gain": 3}, | ||
140 | {"rf_power": 22, "pa_gain": 3, "mix_gain": 10, "dig_gain": 0, "dac_gain": 3}, | ||
141 | {"rf_power": 23, "pa_gain": 3, "mix_gain": 11, "dig_gain": 1, "dac_gain": 3}, | ||
142 | {"rf_power": 24, "pa_gain": 3, "mix_gain": 12, "dig_gain": 0, "dac_gain": 3}, | ||
143 | {"rf_power": 25, "pa_gain": 3, "mix_gain": 14, "dig_gain": 0, "dac_gain": 3}, | ||
144 | {"rf_power": 26, "pa_gain": 3, "mix_gain": 14, "dig_gain": 0, "dac_gain": 3}, | ||
145 | {"rf_power": 27, "pa_gain": 3, "mix_gain": 14, "dig_gain": 0, "dac_gain": 3} | ||
146 | ], | ||
147 | "radio_0": { | ||
148 | "type": "SX1257", | ||
149 | "rssi_offset": -166.0, | ||
150 | "tx_enable": true, | ||
151 | "antenna_gain": 0 | ||
152 | }, | ||
153 | "radio_1": { | ||
154 | "type": "SX1257", | ||
155 | "rssi_offset": -166.0, | ||
156 | "tx_enable": false | ||
157 | } | ||
158 | /* chan_multiSF_X, chan_Lora_std, chan_FSK provided by LNS */ | ||
159 | }, | ||
160 | ))) | ||
![]() |
15.1 | 161 | |
![]() |
18.2 | 162 | See this link for more station configuration parameters: [[Concentrator Design (v1.5) - LoRa Basics™ StationLoRa Basics™ Station ~| DEVELOPER PORTAL (semtech.com)>>url:https://lora-developers.semtech.com/build/software/lora-basics/lora-basics-for-gateways/?url=gw_v1.5.html]] |
![]() |
18.1 | 163 | |
![]() |
18.2 | 164 | |
![]() |
9.1 | 165 | If users want to always use a higher power or a lower power. Users can modify the pa_gain,mix_gain, and dig_gain to specify rf_power to achieve this purpose. This is not recommended, because this might break the regulator for a specific country. |
166 | |||
![]() |
18.2 | 167 | (% style="color:red" %)**Note: When the Settings are complete, click "Save&Apply" on the gateway's Web UI** |
![]() |
18.1 | 168 | |
169 | |||
![]() |
18.2 | 170 | = 4. Checking station Logs = |
171 | |||
172 | |||
![]() |
18.1 | 173 | Run the command: |
174 | |||
175 | (% class="box infomessage" %) | ||
176 | ((( | ||
![]() |
18.2 | 177 | **tail -f /var/iot/station.log** |
![]() |
18.1 | 178 | ))) |
179 | |||
180 | [[image:image-20220623145437-2.png||height="501" width="694"]] | ||
181 | |||
![]() |
9.1 | 182 |