Overview
The frequency plan and network server address must match the real operating environment. Each network server instance runs with one fixed frequency plan; in the public Firefly cloud each SaaS hostname is therefore paired with a plan (see Plan overview table). Mistakes here often make gateways look reachable while delivering no usable payloads or unreliable downlinks.
When this page applies
This page is relevant when:
- a new region is being set up
- a gateway is on the wrong plan
- Firefly is not sending or receiving against the expected address
- distinguishing SaaS from a self-hosted installation
Prerequisites
For planning, the following should be known:
- target region of the device or gateway
- gateway type in use
- whether the deployment is public Firefly SaaS or self-hosted
In niotix, region and endpoint URLs must match the same Firefly context: align the Virtual Device and Firefly connector configuration with this page.
Frequency plans
Firefly supports the following frequency plans.
Plan overview table
Plan |
Network server host |
Countries (excerpt) |
|---|---|---|
EU868 |
fireflyiot.com (UDP), ns.fireflyiot.com (WSS) |
Albania, Andorra, Austria, Belgium, Bosnia and Herzegovina, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, Moldova, Monaco, Montenegro, Netherlands, North Macedonia, Norway, Poland, Portugal, Romania, San Marino, Serbia, Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey, Ukraine, United Arab Emirates, United Kingdom, Vatican City |
US915 |
us1.ns.fireflyiot.com (UDP), us1.ns.fireflyiot.com (WSS) |
Canada, Mexico, Puerto Rico, United States of America |
AU915 |
br1.ns.fireflyiot.com (UDP), br1.ns.fireflyiot.com (WSS) |
Argentina, Australia, Bolivia, Brazil, Chile, Ecuador, New Zealand, Paraguay, Peru, Uruguay |
AS923 |
sg1.ns.fireflyiot.com (UDP), sg1.ns.fireflyiot.com (WSS) |
Brunei, Cambodia, Hong Kong, Indonesia, Japan, Laos, Malaysia, Myanmar, Philippines, Singapore, Taiwan, Thailand, Vietnam |
IN865 |
in1.ns.fireflyiot.com (UDP), in1.ns.fireflyiot.com (WSS) |
India |
KR920 |
kr1.ns.fireflyiot.com (UDP), kr1.ns.fireflyiot.com (WSS) |
South Korea |
CN470 |
cn1.ns.fireflyiot.com (UDP), cn1.ns.fireflyiot.com (WSS) |
China |
The listed hostnames apply to the public Firefly SaaS. In self-hosted environments, hostname and port are defined by the respective deployment configuration.
The country entries are an excerpt. The authoritative source is the “Channel Plan per Country” table in RP002-1.0.4 Regional Parameters, where some countries list multiple possible channel plans in priority order.
Channel frequencies
All values in MHz. For EU868, AS923, IN865, and KR920, the listed uplink frequencies are the same as the downlink channels for RX1 window 1 (see get_rx1_freq in the respective band modules).
EU868
| Direction / window | Channel group | Frequencies (MHz) |
|---|---|---|
| Uplink (125 kHz) | 0–2 | 868.1; 868.3; 868.5 |
| Uplink (125 kHz) | 3–7 | 867.1; 867.3; 867.5; 867.7; 867.9 |
| Downlink RX1 (125 kHz) | center frequency = uplink center for the selected channel | 868.1; 868.3; 868.5; 867.1; 867.3; 867.5; 867.7; 867.9 (same as uplink) |
| Downlink RX2 (250 kHz) | fixed RX2 window (LoRaWAN) | 869.525 |
US915
| Direction | Frequencies (MHz) |
|---|---|
| Uplink (125 kHz, active by default) | 902.3; 902.5; 902.7; 902.9; 903.1; 903.3; 903.5; 903.7 |
| Downlink (500 kHz) | 923.3; 923.9; 924.5; 925.1; 925.7; 926.3; 926.9; 927.5 |
AU915
| Direction | Frequencies (MHz) |
|---|---|
| Uplink (125 kHz, active by default) | 915.2; 915.4; 915.6; 915.8; 916.0; 916.2; 916.4; 916.6 |
| Downlink (500 kHz) | 923.3; 923.9; 924.5; 925.1; 925.7; 926.3; 926.9; 927.5 |
AS923
| Direction / window | Channel group | Frequencies (MHz) |
|---|---|---|
| Uplink (125 kHz) | 0–2 | 923.2; 923.4; 923.6 |
| Uplink (125 kHz) | 3–7 | 922.2; 922.4; 922.6; 922.8; 923.0 |
| Downlink RX1 (125 kHz) | center frequency = uplink center for the selected channel | 923.2; 923.4; 923.6; 922.2; 922.4; 922.6; 922.8; 923.0 (same as uplink) |
| Downlink RX2 (250 kHz) | fixed RX2 window (LoRaWAN) | 923.2 |
IN865
| Direction / window | Channel group | Frequencies (MHz) |
|---|---|---|
| Uplink (125 kHz) | 0–2 | 865.0625; 865.4025; 865.9850 |
| Uplink (125 kHz) | 3–7 | 865.2325; 866.1850; 866.3850; 866.5850; 866.7850 |
| Downlink RX1 (125 kHz) | center frequency = uplink center for the selected channel | 865.0625; 865.4025; 865.9850; 865.2325; 866.1850; 866.3850; 866.5850; 866.7850 (same as uplink) |
| Downlink RX2 (250 kHz) | fixed RX2 window (LoRaWAN) | 866.55 |
KR920
| Direction / window | Frequencies (MHz) |
|---|---|
| Uplink (125 kHz) | 922.1; 922.3; 922.5; 922.7; 922.9; 923.1; 923.3 (seven channels) |
| Downlink RX1 (125 kHz) | 922.1; 922.3; 922.5; 922.7; 922.9; 923.1; 923.3 (same as uplink) |
| Downlink RX2 (fixed RX2 window, LoRaWAN) | 921.9 |
Note: RX2 (921.9 MHz) is the fixed second receive window in LoRaWAN / Firefly (921900000 Hz in the KR920 band module); it is not one of the seven uplink / RX1 center frequencies.
CN470 (active on the server: uplink indices 80–87 of the 470 MHz grid; downlink the first eight channels of the 500 MHz grid)
| Direction | Frequencies (MHz) |
|---|---|
| Uplink | 486.3; 486.5; 486.7; 486.9; 487.1; 487.3; 487.5; 487.7 |
| Downlink | 500.3; 500.5; 500.7; 500.9; 501.1; 501.3; 501.5; 501.7 |
Network server host per plan: see the Plan overview table.
For production setups, always verify that gateway, device profile, and Firefly region match exactly.
Impact on operations and troubleshooting
When the frequency plan or address does not fit, common symptoms include:
- no or too few uplinks
- inconsistent downlinks
- gateways that look connected but carry no usable traffic
- join problems
Checks should always cover together:
- Firefly region
- gateway configuration
- device profile
- target address and port
- SaaS vs self-hosted environment
Common questions
Is US915 always tied to us1.ns.fireflyiot.com?
In the public Firefly cloud, that pairing is the intended and documented US915 mapping for that host. The DNS name does not technically enforce the plan—what matters is the configuration of the network server that is actually reached and that target, gateway, and devices all match the intended plan. In self-hosted environments other hostnames can serve the same role; there the deployment configuration decides, not the fixed SaaS name.
Datasheets list several LoRa regions—which one is relevant for a live deployment?
What matters is the channel plan and region you have actually configured and run in production—not every region the device could support on paper. Keep the device profile, gateway settings, and the Firefly target / frequency context aligned to that same real configuration.
Why does a gateway receive packets but still behave inconsistently?
In many cases, the frequency plan does not fully match the Firefly region, or the gateway is sending to the wrong address or environment (SaaS vs self-hosted). See Impact on operations and troubleshooting.