# TTN gateway is receiving uplinks but the end device isn't

**URL:** <https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566>\
**Category:** The Things Stack v3\
**Tags:** end-devices\
**Created:** [June 6, 2025, 7:43am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566 "2025-06-06T07:43:57Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 6, 2025, 7:43am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/1 "2025-06-06T07:43:57Z")

</div>

My end device console in TTN(dragino lora shield with DHT11 sensor) is not receiving uplinks although the gateway is receiving uplinks. I used ABP. The NWKSKEY, APPSKEY and device address in my code are correct(msb format and device addr in uint32\_t format).

 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/3X/0/1/01496315891a776e2d19f30c4b778a82508a1d00.png)  
 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/3X/7/3/73455dcc090870776cd7782e0ea5c782ff07cb8c.png)

---

<div class="post-metadata">

**Author:** ![Jeff-UK](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/jeff-uk/32/35697_2.png) [@Jeff-UK](https://www.thethingsnetwork.org/forum/u/Jeff-UK)\
**Post date:** [June 6, 2025, 10:03am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/2 "2025-06-06T10:03:47Z")

</div>

Try switching to OTAA and see how it performs then would be 1st step - assuming you have everying else configured corrrectly, Keys, MSB/LSB, freq plan etc. Also check what spread of channels the received messages at GW are seen on. Which firmware stack are you using? (source link). Signal strength high but not a concern at this point (another meter or two of seperation might be useful). Can you post configs from server and device and any serial o/p from device?

Also change (reduce!!!) uplink rate - just letting it run free hammering uplinks wont solve problem, perhaps add a push to send button then you can see a message in isolation… with such a strong signal and good SNR suprised to see missing fcounts so clearly something else is wrong…

---

<div class="post-metadata">

**Author:** ![kersing](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/kersing/32/44777_2.png) [@kersing](https://www.thethingsnetwork.org/forum/u/kersing)\
**Post date:** [June 6, 2025, 12:45pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/3 "2025-06-06T12:45:23Z")

</div>

At what frequency are the uplinks received by the gateway? And which frequencies have been configured for the end device?

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 7, 2025, 5:16pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/5 "2025-06-07T17:16:59Z")

</div>

Both gateway and end device is configured at 865402500 Hz.

---

<div class="post-metadata">

**Author:** ![kersing](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/kersing/32/44777_2.png) [@kersing](https://www.thethingsnetwork.org/forum/u/kersing)\
**Post date:** [June 7, 2025, 5:51pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/6 "2025-06-07T17:51:23Z")

</div>

Your end device uses multiple frequencies. Which? And what is configured in the TTN console for that device (device settings, Network layer, Advanced MAC settings, did you add any frequencies there)?

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 9, 2025, 7:46pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/7 "2025-06-09T19:46:31Z")

</div>

I use only one frequency(865402500). I can show you the settings of my device.

 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/3X/8/d/8d1e02389a2d97bce0f8bb73b43d2a4a4a239827.png)  
 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/3X/b/d/bd328ec2d98971f7cfd06039593ed42459d71fe2.png)  
 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/3X/7/9/79d90cef2dd7efa1aee725dbd815d1a94afc8023.png)  
 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/3X/1/c/1c4d8ce57aaca3e5b3c8b1e14a936bcf57ac3ed7.png)  
 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/3X/1/8/18aadf1d8076a119ba3019b1ddff6f20df929866.png)

Here is my arduino code:

#include \<lmic.h\>  
#include \<hal/hal.h\>  
#include \<SPI.h\>  
#include \<DFRobot\_DHT11.h\>

DFRobot\_DHT11 DHT;  
#define DHTPIN 3

// ABP credentials (replace with your own)  
static const u1\_t NWKSKEY[16] = { 0xA7, 0x63, 0xC1, 0x3F, 0xBE, 0xA4, 0x04, 0xB8, 0x4F, 0xA3, 0x2D, 0x91, 0x3C, 0xEF, 0xBE, 0x2E };  
static const u1\_t APPSKEY[16] = { 0x45, 0x0E, 0x3F, 0xB6, 0x04, 0x2E, 0x8D, 0x51, 0x66, 0x05, 0xF5, 0xF1, 0x8C, 0x3E, 0x15, 0x93 };  
static const u4\_t DEVADDR = 0x260D65BF;

// LoRa pins for Dragino LoRa Shield  
const lmic\_pinmap lmic\_pins = {  
.nss = 10,  
.rxtx = LMIC\_UNUSED\_PIN,  
.rst = 9,  
.dio = {2, 6, LMIC\_UNUSED\_PIN}  
};

void os\_getArtEui(u1\_t\* buf) {}  
void os\_getDevEui(u1\_t\* buf) {}  
void os\_getDevKey(u1\_t\* buf) {}

osjob\_t sendjob;  
const unsigned TX\_INTERVAL = 30; // seconds

void do\_send(osjob\_t\* j) {  
delay(2000); // allow DHT to stabilize  
DHT.read(DHTPIN);

Serial.print("Temperature: ");  
Serial.println(DHT.temperature);  
Serial.print("Humidity: ");  
Serial.println(DHT.humidity);

uint8\_t payload[2];  
payload[0] = (uint8\_t)DHT.temperature;  
payload[1] = (uint8\_t)DHT.humidity;

LMIC\_setTxData2(1, payload, sizeof(payload), 0);  
Serial.println(F(“Packet queued”));  
}

void onEvent(ev\_t ev) {  
Serial.print(os\_getTime());  
Serial.print(": ");  
switch(ev) {  
case EV\_TXCOMPLETE:  
Serial.println(F(“EV\_TXCOMPLETE (Transmission complete)”));  
os\_setTimedCallback(&sendjob, os\_getTime() + sec2osticks(TX\_INTERVAL), do\_send);  
break;  
default:  
Serial.println(F(“Unknown event”));  
break;  
}  
}

void setup() {  
Serial.begin(9600);  
delay(1000);  
Serial.println(F(“Starting LoRa DHT11 ABP TTN Sender…”));

os\_init();  
LMIC\_reset();

// Set up single IN865 channel (865.4025 MHz)  
for (int i = 0; i \< 9; i++) {  
if (i != 1) LMIC\_disableChannel(i);  
}  
LMIC\_setupChannel(1, 865402500, DR\_RANGE\_MAP(DR\_SF7, DR\_SF7), BAND\_CENTI);

LMIC\_setSession(0x1, DEVADDR, NWKSKEY, APPSKEY);  
LMIC.seqnoUp = 0;  
LMIC.seqnoDn = 0;  
LMIC\_setLinkCheckMode(0);  
LMIC\_setDrTxpow(DR\_SF7, 14); // SF7, TX power 14 dBm

// Give sensor time to stabilize  
delay(2000);  
DHT.read(DHTPIN);

// Start transmission only after sensor read  
do\_send(&sendjob);  
}

void loop() {  
os\_runloop\_once();  
}

---

<div class="post-metadata">

**Author:** ![descartes](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/descartes/32/47220_2.png) [@descartes](https://www.thethingsnetwork.org/forum/u/descartes)\
**Post date:** [June 9, 2025, 8:28pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/8 "2025-06-09T20:28:32Z")

</div>

This config of you overriding the LMIC settings, particularly the channel settings, is quite far outside the general design & intent of LoRaWAN, so anything could be happening to break the system.

But at the very least, you need to add the frequency you are using to the device on the console.

Or go with OTAA as it sorts out so much of this ‘stuff’ for you.

---

<div class="post-metadata">

**Author:** ![kersing](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/kersing/32/44777_2.png) [@kersing](https://www.thethingsnetwork.org/forum/u/kersing)\
**Post date:** [June 9, 2025, 8:44pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/9 "2025-06-09T20:44:20Z")

</div>

> [@nibil97](#):
>
> I use only one frequency(865402500)

That does not sound LoRaWAN compatible. Devices in India should use three channels as listed in the [TTN channel plan](https://www.thethingsnetwork.org/docs/lorawan/frequency-plans/).

If you look at the received data in the gateway part of TTN, what is the frequency listed? (Please show the json TTN provides when you click on the received data line formatted using the tools at the top of the textbox.)

Can you **stop** hammering the airwaves and TTN infrastructure every 30 seconds? You should adhere to the TTN fair use policy which limits you to 30 seconds airtime a day. With this frequency of transmitting you can only run the device for a under 2 hours before breaching the fair use policy.

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 9, 2025, 8:58pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/10 "2025-06-09T20:58:13Z")

</div>

This is my internship project only. I am new to this field and I fixed TX\_INTERVAL as 30 seconds only for testing this. My intention is to just demonstrate this to my professor. Yeah, I can provide you the json data of uplink.

```auto
{
  "name": "gs.up.receive",
  "time": "2025-06-09T20:53:31.755356560Z",
  "identifiers": [
    {
      "gateway_ids": {
        "gateway_id": "dragino-gateway-iot",
        "eui": "A84041FFFE1BF050"
      }
    }
  ],
  "data": {
    "@type": "type.googleapis.com/ttn.lorawan.v3.GatewayUplinkMessage",
    "message": {
      "raw_payload": "QL9lDSaACgABKtE9vIm1",
      "payload": {
        "m_hdr": {
          "m_type": "UNCONFIRMED_UP"
        },
        "mic": "PbyJtQ==",
        "mac_payload": {
          "f_hdr": {
            "dev_addr": "260D65BF",
            "f_ctrl": {
              "adr": true
            },
            "f_cnt": 10
          },
          "f_port": 1,
          "frm_payload": "KtE="
        }
      },
      "settings": {
        "data_rate": {
          "lora": {
            "bandwidth": 125000,
            "spreading_factor": 7,
            "coding_rate": "4/5"
          }
        },
        "frequency": "865402500000000",
        "timestamp": 3318223085,
        "time": "2025-06-09T20:53:31.673762Z"
      },
      "rx_metadata": [
        {
          "gateway_ids": {
            "gateway_id": "dragino-gateway-iot",
            "eui": "A84041FFFE1BF050"
          },
          "time": "2025-06-09T20:53:31.673762Z",
          "timestamp": 3318223085,
          "rssi": -44,
          "channel_rssi": -44,
          "snr": 7.8,
          "location": {
            "latitude": 26.185423425317786,
            "longitude": 91.69131398900774,
            "source": "SOURCE_REGISTRY"
          },
          "uplink_token": "CiEKHwoTZHJhZ2luby1nYXRld2F5LWlvdBIIqEBB//4b8FAQ7aGgrgwaDAjLk53CBhC2zZLnAiDIu4isydoC",
          "channel_index": 7,
          "received_at": "2025-06-09T20:53:31.753182390Z"
        }
      ],
      "received_at": "2025-06-09T20:53:31.753182390Z",
      "correlation_ids": [
        "gs:uplink:01JXB7GGZBPFCYVBKRJG21NGZK"
      ],
      "crc_status": true
    },
    "band_id": "IN_865_867"
  },
  "correlation_ids": [
    "gs:uplink:01JXB7GGZBPFCYVBKRJG21NGZK"
  ],
  "origin": "ip-10-102-13-194.ap-southeast-2.compute.internal",
  "context": {
    "tenant-id": "CgN0dG4="
  },
  "visibility": {
    "rights": [
      "RIGHT_GATEWAY_TRAFFIC_READ"
    ]
  },
  "unique_id": "01JXB7GGZBT7K8YSX2BAS39YN7"
}

```

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 9, 2025, 9:12pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/11 "2025-06-09T21:12:20Z")

</div>

How to add frequency? Do I need to change the Rx2 freq and desired Rx2 freq in advanced mac settings of network layer to 865.4025 MHz?

---

<div class="post-metadata">

**Author:** ![descartes](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/descartes/32/47220_2.png) [@descartes](https://www.thethingsnetwork.org/forum/u/descartes)\
**Post date:** [June 9, 2025, 10:04pm UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/12 "2025-06-09T22:04:20Z")

</div>

> [@nibil97](#):
>
> This is my internship project only. I am new to this field and I fixed TX\_INTERVAL as 30 seconds only for testing this. My intention is to just demonstrate this to my professor.

I only passed my driving test last week your Honour, so I thought I’d drive really fast to see what it is like …

Then I saw a community first aid station and thought I’d take all the bandages just in case, so nothing is left for the rest of the community.

> [@nibil97](#):
>
> How to add frequency?

Add it to the “Factory preset frequency list” - the extensive documentation is well worth reading.

> [@nibil97](#):
>
> Do I need to change the Rx2 freq and desired Rx2 freq in advanced mac settings of network layer to 865.4025 MHz?

No. You need to learn the basics of LoRaWAN as this is a fundamental.

PS, Please ensure you use the \</\> tool to format the text/logs/JSON please - you can edit your post to do this now.

---

<div class="post-metadata">

**Author:** ![stevencellist](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/stevencellist/32/46434_2.png) [@stevencellist](https://www.thethingsnetwork.org/forum/u/stevencellist)\
**Post date:** [June 10, 2025, 5:05am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/13 "2025-06-10T05:05:04Z")

</div>

> [@kersing](#):
>
> That does not sound LoRaWAN compatible.

The IN865 band does list 865.4025MHz as one of the three main uplink channels, so this frequency looks perfectly fine, without the need to define this frequency as a factory preset channel.

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 10, 2025, 5:37am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/14 "2025-06-10T05:37:18Z")

</div>

I formatted the code. Please check it.

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 10, 2025, 5:56am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/15 "2025-06-10T05:56:40Z")

</div>

I added my frequency to factory preset frequency. It didn’t help.

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 10, 2025, 7:59am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/16 "2025-06-10T07:59:12Z")

</div>

My professor gave me dragino LG01 gateway. Is that the real cause for not getting the uplinks to end device?

---

<div class="post-metadata">

**Author:** ![kersing](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/kersing/32/44777_2.png) [@kersing](https://www.thethingsnetwork.org/forum/u/kersing)\
**Post date:** [June 10, 2025, 7:59am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/17 "2025-06-10T07:59:18Z")

</div>

> [@stevencellist](#):
>
> The IN865 band does list 865.4025MHz as one of the three main uplink channels, so this frequency looks perfectly fine, without the need to define this frequency as a factory preset channel.

The point is that the device should use all three available channels, LoRaWAN devices should never use just one channel to avoid saturating the frequency.

The use of a single channel usually means a non LoRaWAN compliant gateway (single channel packet forwarder) is being used which is detrimental to the network.

So why is this ABP device just using that single channel? @nibil97

---

<div class="post-metadata">

**Author:** ![descartes](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/descartes/32/47220_2.png) [@descartes](https://www.thethingsnetwork.org/forum/u/descartes)\
**Post date:** [June 10, 2025, 8:58am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/18 "2025-06-10T08:58:36Z")

</div>

> [@nibil97](#):
>
> My professor gave me dragino LG01 gateway. Is that the real cause for not getting the uplinks to end device?

Yes, please disconnect it immediately, it is not supported on TTN and its presence disrupts the network as you have discovered. See: [Single Channel Packet Forwarders (SCPF) are obsolete and not supported](https://www.thethingsnetwork.org/forum/t/single-channel-packet-forwarders-scpf-are-obsolete-and-not-supported/31117)

---

<div class="post-metadata">

**Author:** ![descartes](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/descartes/32/47220_2.png) [@descartes](https://www.thethingsnetwork.org/forum/u/descartes)\
**Post date:** [June 10, 2025, 9:00am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/19 "2025-06-10T09:00:36Z")

</div>

> [@stevencellist](#):
>
> without the need to define this frequency as a factory preset channel.

YMMV - last time I used ABP, when v3 was all new & shiney and they’d just plumbed in a fresh water supply to the street, if you didn’t put all eight frequencies in for the channel plan you were using, it didn’t work.

Things on The Things Server may have progressed since then.

---

<div class="post-metadata">

**Author:** ![nibil97](https://www.thethingsnetwork.org/forum/letter_avatar_proxy/v4/letter/n/54ee81/32.png) [@nibil97](https://www.thethingsnetwork.org/forum/u/nibil97)\
**Post date:** [June 10, 2025, 9:43am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/20 "2025-06-10T09:43:57Z")

</div>

My ABP device uses single channel gateway, so I configured only one channel. Now I tried configuring 3 channels and it didn’t work.

---

<div class="post-metadata">

**Author:** ![descartes](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/descartes/32/47220_2.png) [@descartes](https://www.thethingsnetwork.org/forum/u/descartes)\
**Post date:** [June 10, 2025, 10:24am UTC](https://www.thethingsnetwork.org/forum/t/ttn-gateway-is-receiving-uplinks-but-the-end-device-isnt/71566/21 "2025-06-10T10:24:36Z")

</div>

It doesn’t matter, your Single Channel Packet Forwarder won’t be able to cope with three channels like a proper gateway can and because it creates a denial of service to other users, should NOT BE USED!

Please confirm that this LG-01 is disconnected. If you tutor has a problem, ask them to message me or @kersing on the forum.
