LoRaWAN Network Server
Overview
The LoRaWAN module transforms Ignition into a complete LoRaWAN network server. It accepts connections from LoRaWAN gateways using the industry-standard Semtech Packet Forwarder protocol, manages device registrations, handles join procedures, and exposes all device and gateway data through real-time Ignition tags.
Features
- Complete Network Server - Full LoRaWAN network server implementation
- Multi-Gateway Support - Connect multiple gateways with automatic uplink deduplication
- OTAA & ABP Activation - Support for both Over-the-Air and pre-provisioned device activation
- Class A & C Devices - Support for battery-optimized and always-listening devices
- Real-Time Tags - All device and gateway data exposed via
[LoRaWAN]tag provider - Payload Decoders - JavaScript-based payload decoding with dynamic tag creation
- Adaptive Data Rate - Automatic optimization of device transmission parameters
- Downlink Queue - Queue and manage downlink messages to devices
- MAC Command Support - LinkCheck, LinkADR, DevStatus, RXParamSetup, and more
- Web Configuration - Full web UI for settings, gateways, and device management
- REST API - Complete API for device registration and downlink management
Technical Specifications
| Specification | Value |
|---|---|
| Module ID | com.operametrix.ignition.lorawan |
| Module Name | LoRaWAN |
| Current Version | 0.0.1 |
| Minimum Ignition Version | 8.3.0 |
| Scope | Gateway |
| License | Free module |
Supported Regions
| Region | RX2 Frequency | RX2 Data Rate | TX Power |
|---|---|---|---|
| EU868 | 869.525 MHz | SF12BW125 | 14 dBm |
| US915 | 923.3 MHz | SF12BW500 | 20 dBm |
| AU915 | 923.3 MHz | SF12BW500 | 20 dBm |
| AS923 | 923.2 MHz | SF10BW125 | 14 dBm |
Architecture
┌─────────────────────────────────────────────────────────┐
│ Ignition Gateway │
│ ┌─────────────────────────────────────────────────┐ │
│ │ LoRaWAN Network Server │ │
│ │ ┌─────────────┐ ┌──────────────────────────┐ │ │
│ │ │ UDP Server │ │ Device Registry │ │ │
│ │ │ (Port 1700) │ │ OTAA Join | Data Frames │ │ │
│ │ └──────┬──────┘ └──────────────────────────┘ │ │
│ │ │ │ │
│ │ ┌──────┴──────────────────────────────────┐ │ │
│ │ │ Tag Provider [LoRaWAN] │ │ │
│ │ │ Devices/* | Gateways/* | _Meta/* │ │ │
│ │ └─────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
▲
│ UDP (Semtech Protocol)
│
┌─────────────────┴─────────────────┐
│ │
┌────┴────┐ ┌────┴────┐
│ Gateway │ · · · · · · · · · · │ Gateway │
└────┬────┘ └────┬────┘
│ LoRa RF │
┌────┴────┐ ┌────┴────┐
│ Device │ │ Device │
└─────────┘ └─────────┘
Data Flow
- Uplink: Device transmits → Gateway receives → UDP to Ignition → Tags updated
- Downlink: Queue via API/tags → Wait for RX window → Gateway transmits → Device receives
- Join (OTAA): Device sends JoinRequest → Server validates → JoinAccept sent → Session established