La risposta di Arjan è buona. Tecnico. Volevo fornire una risposta dal sapore diverso per aiutare coloro che sono nuovi e in difficoltà a mettere insieme il quadro per quanto riguarda i gateway e il modo in cui i pacchetti si muovono avanti e indietro.
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
Lettera / Pacchetto ha un indirizzo. Il postino / gateway preleva la lettera dalla tua casella di posta o da qualsiasi casella di posta in cui hai lasciato cadere la tua lettera. Viene gestita fino al destinatario. Se l'indirizzo è errato, non arriverà e dovresti ricevere una notifica. Il destinatario può inviarti una lettera tramite lo stesso sistema.
Sia che tu utilizzi The Things Network o provi a costruire il tuo server privato usando qualcosa come LoRaServer, avrai bisogno di un gateway a portata del tuo nodo / mote / end-device per inoltrare i messaggi avanti e indietro. Pensa alle diverse chiavi nel codice del nodo come agli indirizzi sulla lettera nell'analogia.
Puoi determinare se c'è già un gateway TTN nella tua area sulla loro pagina della mappa e se ce n'è uno a portata del tuo nodo, i tuoi messaggi dovrebbero raggiungere il tuo TTN (supponendo che tu abbia registrato e applicato le chiavi al tuo nodo). Se non c'è un gateway a portata di mano, puoi crearne uno tuo. Ci sono molte opzioni per farlo.
Per quanto riguarda la configurazione del gateway, a seconda della libreria scelta, in genere è sufficiente configurare alcuni parametri nel codice sorgente o in un file global_conf.json o local_conf.json.
Ecco un esempio di armeggiare con un RFM9X (basato su SX1276) e un RPI3 B + usando single_chan_pkt_fwdquale btw non fornirà risposte ... tieni presente che è solo per armeggiare / testare. Entrambi gli esempi forwarder e below global_conf.json non sono plug-n-play e non devono essere considerati affidabili per una corretta rete LoRaWan. Un gateway conforme ha 3 radio e può elaborare più canali e inviare / ricevere contemporaneamente. Questo esempio è appena ricevuto dal nodo sul singolo canale e non è molto affidabile ma presenta la configurazione. Ognuno dei valori dipende dall'hardware che stai utilizzando e da dove ti trovi ... o dove si trova il gateway come US, EU, ecc ... vale anche la pena notare che tale global_conf.json non ha una dimensione si adatta a tutto. Diverse librerie in genere hanno più opzioni di configurazione per più radio, canali, ecc ... solo FYI.
{
"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
]
}
}
Diciamo che stai costruendo un nodo con dispositivo e codice Arduino. E usi qualcosa come la libreria LMIC-Arduino e uno schizzo di esempio. Devi prima determinare in base all'hardware del dispositivo come configurare la pinmap affinché il dispositivo funzioni anche. Quindi, se hai intenzione di utilizzare TTN, segui una delle tante guide per registrarti e ottenere le chiavi necessarie che inserisci nel codice dello schizzo. Devi anche assicurarti di trasmettere sulla frequenza appropriata e così ... per allinearti con il gateway nella tua zona.