

# 設定閘道的子頻帶和篩選功能
<a name="lorawan-subband-filter-configuration"></a>

LoRaWAN 閘道執行 [LoRa Basics Station](https://doc.sm.tc/station) 軟體，讓閘道可以連接至 AWS IoT Core for LoRaWAN。若要連接至 AWS IoT Core for LoRaWAN，您的 LoRa 閘道首先會查詢 CUPS 伺服器的 LNS 端點，然後建立 WebSockets 資料與該端點的連線。在建立連線之後，可以透過該連線交換上行和下行框架。

## 篩選閘道收到的 LoRa 資料框架
<a name="lorawan-frequency-channels-subbands"></a>

在 LoRaWAN 閘道建立與端點的連線之後，AWS IoT Core for LoRaWAN 會以 `router_config` 訊息回應，指定 LoRa 閘道組態的一組參數，包括篩選參數 `NetID` 和 `JoinEui`。如需 `router_config` 以及如何與 LoRaWAN 網路伺服器 (LNS) 建立連線的詳細資訊，請參閱 [LNS 通訊協定](https://doc.sm.tc/station/tcproto.html)。

```
{
"msgtype"    : "router_config"
"NetID"      : [ INT, .. ]
"JoinEui"    : [ [INT,INT], .. ] // ranges: beg,end inclusive
"region"     : STRING             // e.g. "EU863", "US902", ..
"hwspec"     : STRING
"freq_range" : [ INT, INT ]       // min, max (hz)
"DRs"        : [ [INT,INT,INT], .. ]   // sf,bw,dnonly
"sx1301_conf": [ SX1301CONF, .. ]
"nocca"      : BOOL
"nodc"       : BOOL
"nodwell"    : BOOL
}
```

閘道通常透過 Wi-Fi、乙太網路或行動網路之類的高頻寬網路，將 LoRaWAN 裝置資料帶入和帶出 LNS。閘道通常會接收所有訊息，並將到達其中的流量傳遞給 AWS IoT Core for LoRaWAN。不過，您可以設定閘道來篩選某些裝置資料流量，這有助於節省頻寬使用量，並減少閘道與 LNS 之間的流量。

若要設定 LoRa 閘道以篩選資料框架，您可以在 `router_config` 訊息中使用參數 `NetID` 和 `JoinEui`。`NetID` 是接受的 NetID 值清單。任何 LoRa 資料框架若攜帶不是列出的資料框架，將遭到捨棄。`JoinEui` 是 JoinEUI 值的整數值編碼範圍的配對清單。聯結請求框架將由閘道捨棄，除非訊息中的欄位 `JoinEui` 在範圍 [BegEui,EndEui] 內。

## 頻率通道和子頻帶
<a name="lorawan-frequency-channels-subbands"></a>

對於 US915 和 AU915 RF 區域，無線裝置有 64 個 125KHz 和 8 個 500KHz 上行通道的選擇，以使用 LoRa 閘道存取 LoRaWAN 網路。上行頻率通道分為 8 個子頻帶，每個頻帶有 8 個 125KHz 通道和一個 500KHz 通道。對於 AU915 區域中的每個一般閘道，將支援一或多個子頻帶。

某些無線裝置無法在子頻帶之間跳躍，而且當連接到 AWS IoT Core for LoRaWAN 時，只能在一個子頻帶上使用頻率通道。對於要從這些裝置傳輸的上行封包，將 LoRa 閘道設定為使用該特定子頻帶。對於其他 RF 區域 (例如 EU868) 的閘道，不需要此組態。

## 使用主控台將您的閘道設定為使用篩選和子頻帶
<a name="lorawan-configure-gateway-channels-console"></a>

您可以將閘道設定為使用特定的子頻帶，也可以啟用篩選 LoRa 資料框架的功能。若要使用主控台指定這些參數：

1. 導覽至 AWS IoT 主控台的 [AWS IoT Core for LoRaWAN](https://console.aws.amazon.com/iot/home#/wireless/gateways) **Gateways** (閘道) 頁面，然後選擇 **Add gateway** (新增閘道)。

1. 指定閘道詳細資訊，例如 **Gateway's Eui** (閘道 Eui)、**Frequency band (RFRegion)** (頻帶 (RFRegion))，以及選用的 **Name** (名稱) 和 **Description** (描述)，然後選擇是否要將 AWS IoT 物件與您的閘道建立關聯。如需如何新增閘道的詳細資訊，請參閱 [使用主控台新增閘道](lorawan-onboard-gateway-add.md#lorawan-onboard-gateway-console)。

1. 在 **LoRaWAN configuration** (LoRaWAN 組態) 區段中，您可以指定子頻帶和篩選資訊。
   + `SubBands`：若要新增子頻帶，請選擇 **Add SubBand (新增子頻帶)**，並指定整數值清單，指出閘道支援哪些子頻帶。`SubBands` 參數只能在 `RfRegion` US915 和 AU915 中設定，而且在其中一個支援的區域內，必須具有範圍 `[1,8]` 中的值。
   + `NetIdFilters`：若要篩選上行框架，請選擇 **Add NetID** (新增 NetID)，然後指定閘道使用的字串值清單。來自無線裝置之傳入上行框架的 NetID 必須符合至少一個列出的值，否則框架會遭到捨棄。
   + `JoinEuiFilters`：選擇 **Add JoinEui range** (新增 JoinEui 範圍)，並指定閘道用來篩選 LoRa 框架的字串值組清單。指定為來自無線裝置之聯結請求一部分的 JoinEUI 值必須在至少其中一個 JoinEuiRange 值的範圍內，每個 JoinEuiRange 值都會列為一對 [BegEui, EndEui]，否則框架會遭到捨棄。

1. 然後，您可以繼續遵循 [使用主控台新增閘道](lorawan-onboard-gateway-add.md#lorawan-onboard-gateway-console) 中所述的指示來設定閘道。

在新增了閘道之後，如果您在 AWS IoT 主控台的 [AWS IoT Core for LoRaWAN](https://console.aws.amazon.com/iot/home#/wireless/gateways) **Gateways** (閘道) 頁面中選取已新增的閘道，則可以在 Gateway details (閘道詳細資訊) 頁面的 **LoRaWAN specific details** (LoRaWAN 特定詳細資訊) 區段中看到 `SubBands`，以及篩選條件 `NetIdFilters` 和 `JoinEuiFilters`。

## 使用 API 將您的閘道設定為使用篩選和子頻帶
<a name="lorawan-configure-gateway-channels-api"></a>

您可以使用您用來建立閘道的 [CreateWirelessGateway](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateWirelessGateway.html) API，以設定您想要使用並啟用篩選功能的子頻帶。使用 `CreateWirelessGateway` API，您可以指定子頻帶和篩選條件，作為您使用 `LoRaWAN` 欄位所提供之閘道組態資訊的一部分。下列顯示了包含此資訊的請求字符。

```
POST /wireless-gateways HTTP/1.1
Content-type: application/json

{
"Arn": "arn:aws:iotwireless:us-east-1:400232685877aa:WirelessGateway/
       a11e3d21-e44c-471c-afca-6716c228336a",
"Description": "Using my first LoRaWAN gateway",
   "LoRaWAN": { 
      "GatewayEui": "a1b2c3d4567890ab",
      "JoinEuiFilters": [
        ["0000000000000001", "00000000000000ff"],
        ["000000000000ff00", "000000000000ffff"]
      ],
      "NetIdFilters": ["000000", "000001"],
      "RfRegion": "US915",
      "SubBands": [2]
   },
   "Name": "myFirstLoRaWANGateway"  
   "ThingArn": null,
   "ThingName": null
}
```

您也可以使用 [UpdateWirelessGateway](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateWirelessGateway.html) API 來更新過濾條件，但不會更新子頻帶。如果 `JoinEuiFilters` 和 `NetIdfilters` 值是空值，這表示欄位沒有更新。如果這些值不是空值，並且包含空清單，則會套用更新。若要取得您指定的欄位值，請使用 [GetWirelessGateway](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetWirelessGateway.html) API。