A resposta de Arjan é boa. Técnico. Eu queria fornecer uma resposta de sabor diferente para ajudar aqueles que são novos e lutam para montar a imagem em relação aos gateways e como os pacotes se movem para frente e para trás.
Analogia...
You > Letter > Mailbox > Mailman > Post Office Dist > Recipient
|----------------- TX -------------------|
Node > Packet > Transmission > Gateway > Network Server > Application
|----------------- RX -------------------|
Node < Packet < Transmission < Gateway < Network Server < Application
Carta / Pacote tem um endereço. O carteiro / gateway pega a carta na sua caixa de correio ou em qualquer caixa de correio em que você soltou sua carta. Ela é manuseada até o destinatário. Se o endereço estiver errado, ele não chegará e você deverá ser notificado sobre isso. O destinatário pode enviar uma carta para você através do mesmo sistema.
Independentemente de você utilizar a The Things Network ou tentar construir seu próprio servidor privado usando algo como LoRaServer, será necessário um gateway ao alcance do seu nó / mote / dispositivo final para encaminhar mensagens para frente e para trás. Pense nas diferentes chaves no código do nó como os endereços na letra na analogia.
Você pode determinar se já existe um gateway TTN em sua área na página do mapa e se existe um ao alcance do seu nó, suas mensagens devem chegar ao seu TTN (supondo que você tenha registrado e aplicado as chaves no seu nó). Se não houver um gateway ao seu alcance, você poderá criar seu próprio. Há muitas opções para fazer isso.
No que diz respeito à configuração do gateway, dependendo da biblioteca que você escolher, normalmente você só precisa configurar alguns parâmetros no código-fonte ou em um arquivo global_conf.json ou local_conf.json.
Aqui está um exemplo de mexer com um RFM9X (baseado no SX1276) e um RPI3 B + usando single_chan_pkt_fwdque não fornece respostas ... lembre-se de que isso é apenas para ajustes / testes. Os exemplos de encaminhador e abaixo de global_conf.json não são plug-n-play e não devem ser invocados para a rede LoRaWan adequada. Um gateway compatível possui 3 rádios e pode processar vários canais e enviar / receber ao mesmo tempo. Este exemplo é apenas recebido do nó no canal único e não é muito confiável, mas apresenta a configuração. Cada um dos valores depende do hardware que você está usando e de onde está localizado ... ou onde o gateway está localizado, como EUA, UE, etc ... também vale a pena notar que esse global_conf.json não é um tamanho único serve para todos. Bibliotecas diferentes normalmente têm mais opções de configuração para vários rádios, canais, etc ... apenas para sua informação.
{
"SX127x_conf": // depending on your hardware/radio this could be something like sx1301..., sx127x...., etc..
{
"freq": 903000000, // depending on whether US (900 range), EU (800 range) or other...
"spread_factor": 7, // look this up
"pin_nss": 10, // wiringpi value = physical pin #24
"pin_dio0": 5, // wiringpi value = physical pin #18
"pin_rst": 21 // wiringpi value = physical pin #29
},
"gateway_conf":
{
"ref_latitude": 0.0,
"ref_longitude": 0.0,
"ref_altitude": 2,
"name": "WHATEVER NAME",
"email": "WHATEVER@EMAIL.TLD",
"desc": "WHATEVER DESC",
"servers":
[
{
"address": "localhost", // this one is private so localhost, but TTN lookup address
"port": 1700, // this one is private so localhost, but TTN lookup port
"enabled": true
} // you could add more... say you have a private one and TTN
]
}
}
Digamos que você esteja construindo um nó com o dispositivo e o código do Arduino. E você usa algo como a biblioteca LMIC-Arduino e o esboço de exemplo. Primeiro, você precisa determinar, com base no hardware do dispositivo, como configurar o pinmap para que o dispositivo funcione. Então, se você usar o TTN, siga qualquer um dos muitos guias para se registrar e obter as chaves necessárias inseridas no código do esboço. Você também precisa se certificar de que está transmitindo na frequência apropriada e tal ... para se alinhar com o gateway em sua área.