This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
wiki:lora:basic_station_forwarder [2023/09/18 11:52] ehe [TTN LNS configuration tool] |
wiki:lora:basic_station_forwarder [2024/03/07 13:52] ehe |
||
---|---|---|---|
Line 179: | Line 179: | ||
<note>Only available since [[bspf_v2.4.1|version 2.4]] ( for "Land Mobile Station" use cases, please contact Kerlink support)</note> | <note>Only available since [[bspf_v2.4.1|version 2.4]] ( for "Land Mobile Station" use cases, please contact Kerlink support)</note> | ||
- | By default, LBT is **NOT** activated for AS923-1 region. It needs to be activated manually by using following commands: | + | For LNS which doesn't embed AS923-1 with LBT, it needs to be activated manually by using following commands: |
<code bash> | <code bash> | ||
Line 234: | Line 234: | ||
==== TTN LNS configuration tool ==== | ==== TTN LNS configuration tool ==== | ||
- | To ease declaration of a gateway on the TTN (thethings.network) or TTI (thethings.industries) LNS, use the ''klk_ttn_config'' tool.\\ | + | To ease declaration of a gateway on the TTN (thethings.network), TTI (thethings.industries) or TTS (The Things Stack Enterprise / Open Source) LNS, use the ''klk_ttn_config'' tool.\\ |
This tool adds the gateway on the server and creates its associated CUPS and LNS keys.\\ | This tool adds the gateway on the server and creates its associated CUPS and LNS keys.\\ | ||
\\ | \\ | ||
Line 242: | Line 242: | ||
* the chose frequency plan | * the chose frequency plan | ||
- | <note important>''klk_bs_config'' is still required after this to complete the Basic Station configuration. | + | <note warning>''klk_bs_config'' is still required after this to complete the Basic Station configuration.</note> |
- | </note> | + | |
- | <note warning> | + | <note important> |
- | The TTN Basic Station server does not respond to websocket pings. It is therefore advised to disable this functionality when connecting to such a server. | + | * On TTN ''klk_ttn_config'' can only be used one time per gateway due to certain TTN restrictions (even after removing the gateway from TTN)\\ |
+ | * On TTI the gateway needs to be remove and purged in order to reuse ''klk_ttn_config'' | ||
</note> | </note> | ||
Line 258: | Line 259: | ||
# Use TTN configuration tool for TTI LNS where tenant is your Tenant ID | # Use TTN configuration tool for TTI LNS where tenant is your Tenant ID | ||
klk_ttn_config -u https://tenant.eu1.cloud.thethings.industries -t NNSXS.R6D3ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHI.ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIABCDEFGHIJKLMNOPQ -f EU_863_870 | klk_ttn_config -u https://tenant.eu1.cloud.thethings.industries -t NNSXS.R6D3ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHI.ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIABCDEFGHIJKLMNOPQ -f EU_863_870 | ||
- | |||
- | # Disable websocket pings | ||
- | klk_bs_config --enable --ping_interval None | ||
</code> | </code> | ||
++++ | ++++ | ||
Line 268: | Line 266: | ||
</note> | </note> | ||
+ | ++++How to generate an TTI API key?| | ||
+ | **Prerequisite:** You have to create a TTI account \\ | ||
+ | |||
+ | To automatically connect Kerlink Gateways to TTI LNS, you have to delegate some rights to Kerlink thanks to an “API key”. Please follow those steps: \\ \\ | ||
+ | Step 1 - Connect to your TTI user account \\ | ||
+ | {{:images:1_tti_user_account.jpg?250|}} \\ | ||
+ | |||
+ | Step 2 - Go to Personal API keys OR TTI organization API key \\ | ||
+ | {{:images:2_personal_api_keys.jpg?300|}} \\ | ||
+ | |||
+ | Step 3 - Add a new API key \\ | ||
+ | {{:images:3_add_api_key.jpg?900|}} \\ | ||
+ | |||
+ | Step 4 - Create the API key with rights limited to GW creation and edition \\ | ||
+ | {{:images:4_rights_limited.jpg?450|}} \\ | ||
+ | |||
+ | Step 5 - Save API key \\ | ||
+ | {{:images:5_save_api_key.jpg?450|}} \\ | ||
+ | ++++ | ||
==== Loriot LNS configuration tool ==== | ==== Loriot LNS configuration tool ==== | ||
Line 281: | Line 298: | ||
<note important> | <note important> | ||
''klk_bs_config'' is still required after this to complete the Basic Station configuration. | ''klk_bs_config'' is still required after this to complete the Basic Station configuration. | ||
- | </note> | ||
- | <note warning> | ||
- | The Loriot Basic Station server does not respond to websocket pings. It is therefore advised to disable this functionality when connecting to such a server. | ||
</note> | </note> | ||
Line 290: | Line 304: | ||
# Use Loriot configuration tool in region US902 with 3 channel plans (US915_CH16_23, US915_CH40_47 and US915_CH56_63) | # Use Loriot configuration tool in region US902 with 3 channel plans (US915_CH16_23, US915_CH40_47 and US915_CH56_63) | ||
klk_loriot_config -k ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJK-321abcdefgh -u https://eu1.loriot.io/1/nwk -n ABCD1234 -r US902-928 -p 3,6,8 | klk_loriot_config -k ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJK-321abcdefgh -u https://eu1.loriot.io/1/nwk -n ABCD1234 -r US902-928 -p 3,6,8 | ||
- | # Disable websocket pings | ||
- | klk_bs_config --enable --ping_interval None | ||
</code> | </code> | ||
++++ | ++++ | ||
Line 298: | Line 310: | ||
</note> | </note> | ||
+ | ++++How to generate an LORIOT API key?| | ||
+ | **Prerequisite:** LORIOT account \\ | ||
+ | [[https://docs.loriot.io/display/NMS/Create+an+API+key|LORIOT - Create an API key]] | ||
+ | ++++ | ||
==== AWS LNS configuration tool ==== | ==== AWS LNS configuration tool ==== | ||
Line 324: | Line 340: | ||
The ''klk_aws_config'' tool has been designed to be called from a [[wiki:systeme_mana:ztp|Zero Touch Provisioning]] job. | The ''klk_aws_config'' tool has been designed to be called from a [[wiki:systeme_mana:ztp|Zero Touch Provisioning]] job. | ||
</note> | </note> | ||
+ | |||
+ | ++++How to generate an AWS API key?| | ||
+ | **Prerequisite:** You have to create a AWS account \\ | ||
+ | |||
+ | To automatically connect Kerlink Gateways to AWS LNS, you have to delegate some rights to Kerlink thanks to an “API key”. Please follow those steps: \\ \\ | ||
+ | Step 1 - Connect to your AWS server \\ | ||
+ | |||
+ | Step 2 - Go to Console > Services > IAM then hitting the Add users button to create a new AWS user \\ | ||
+ | {{:images:1_aws_user_account.png?800|}} \\ | ||
+ | |||
+ | Step 3 - Name the user (= user ID) and set the access type to Programmatic Access \\ | ||
+ | <note important>DO NOT check “AWS Management Console access”</note> | ||
+ | {{:images:2_aws_access_type.png?500|}} \\ | ||
+ | |||
+ | Step 4 - DO NOT add user to any group. Also SKIP other steps until creation \\ | ||
+ | {{:images:3_aws_no_group.png?500|}} \\ | ||
+ | |||
+ | Step 5 - Select the new user \\ | ||
+ | {{:images:4_aws_select_user.png?500|}} \\ | ||
+ | |||
+ | Step 6 - In Security Credentials section: | ||
+ | * Select Application running outside AWS | ||
+ | * Give a tag value (optional) | ||
+ | * Copy Access Key ID and Secret | ||
+ | \\ | ||
+ | {{:images:5_aws_security.png?500|}} \\ | ||
+ | |||
+ | Step 7 - Add a new inline policy \\ | ||
+ | {{:images:6_aws_inline_policy.png?500|}} \\ | ||
+ | |||
+ | Step 8 - Switch to the JSON view and add the following content \\ | ||
+ | <code> | ||
+ | { | ||
+ | "Version": "2012-10-17", | ||
+ | "Statement": [ | ||
+ | { | ||
+ | "Sid": "VisualEditor0", | ||
+ | "Effect": "Allow", | ||
+ | "Action": [ | ||
+ | "iot:DeleteCertificate", | ||
+ | "iot:UpdateCertificate", | ||
+ | "iotwireless:GetWirelessGatewayCertificate", | ||
+ | "iotwireless:GetWirelessGateway", | ||
+ | "iotwireless:UpdateWirelessGateway", | ||
+ | "iotwireless:AssociateWirelessGatewayWithCertificate", | ||
+ | "iotwireless:ListWirelessGateways", | ||
+ | "iotwireless:GetServiceEndpoint", | ||
+ | "iot:CreateKeysAndCertificate", | ||
+ | "iotwireless:CreateWirelessGateway" | ||
+ | ], | ||
+ | "Resource": "*" | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | </code> \\ | ||
+ | |||
+ | Step 9 - Review policy \\ | ||
+ | This API user now has the minimum rights required | ||
+ | \\ | ||
+ | |||
+ | |||
+ | ++++ | ||
+ | ==== Gateway name customization option ==== | ||
+ | |||
+ | This option can be used to customize the gateway name displayed on LNS. | ||
+ | |||
+ | <code bash> | ||
+ | Optional parameters: | ||
+ | --naming Set gateway naming strategy | ||
+ | prefix[/scheme] | ||
+ | schemes: | ||
+ | "knet" : prefix-EUI[:-6] (default) | ||
+ | "eui" : prefix-EUI | ||
+ | "serial" : prefix-board serial | ||
+ | "model" : model-EUI[:-6] | ||
+ | </code> | ||
+ | |||
+ | ++++Examples:| | ||
+ | <code bash> | ||
+ | # Use TTN configuration tool | ||
+ | klk_ttn_config -u https://eu1.cloud.thethings.network -t NNSXS.R6D3ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHI.ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIABCDEFGHIJKLMNOPQ -f EU_863_870 --naming ttn-test/eui | ||
+ | </code> | ||
+ | {{:images:ttn.png?nolink&1000|}} | ||
+ | |||
+ | <code bash> | ||
+ | # Use Loriot configuration tool | ||
+ | klk_loriot_config -k ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJK-321abcdefgh -u https://eu1.loriot.io/1/nwk -n ABCD1234 -r US902-928 -p 3,6,8 --naming loriot-test/serial | ||
+ | </code> | ||
+ | {{:images:loriot.png?nolink&1000|}} | ||
+ | |||
+ | <code bash> | ||
+ | # Use AWS configuration tool | ||
+ | klk_aws_config -u some_user -k ABCDEFGHIJKLMNOPQRST-s ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMN-r eu-west-1 -l US915 -f 1 -b --naming aws-test/knet | ||
+ | </code> | ||
+ | {{:images:aws.png?nolink&1000|}} | ||
+ | |||
+ | ++++ |