Use this page when an OTAA device stays at Not joined yet or shows a refused join. Work from the evidence: the device’s join badge on its LoRaWAN tab, and its join requests in the frames log (Devices > ⋯ > LoRaWAN frames).
Step 1: is the join request heard at all?
Look for Join request rows with the device’s DevEUI in the frames log while you power the device on.
| You see | Meaning | What to do |
|---|---|---|
| No join request at all | No gateway of yours heard the device. | Check that a gateway near the device is Online. Check the device is an EU868 device and is really trying to join (many devices need a button press or a magnet). Move the device closer to the gateway to test. |
| Join requests, but the device name is missing | The DevEUI is not one of your devices. | See “Unknown DevEUI” below. |
| Join requests with a red result | The join server refused it. | Find the reason in the table below. |
| A Join accept row with Sent via … but the device keeps asking | The device did not receive or accept the answer. | See “Join accept sent, device keeps trying” below. |
Step 2: the refusal reasons
| Badge or frames log | Code | Cause | What to do |
|---|---|---|---|
| Unknown DevEUI | unknown_deveui | The DevEUI is not registered, and no pairing window matched. | Check the DevEUI on the device’s label against the one you entered (16 digits, no swapped byte order). Add the device, or run pairing mode. |
| A device of another network | foreign_tenant | The DevEUI belongs to another organisation. | If the device is yours, it was registered elsewhere before. It must be removed there. Hermetry never says where. |
| Join refused: wrong AppKey? / Wrong AppKey | join_mic_failed | The integrity check failed with the stored AppKey. | Enter the AppKey again from the supplier’s sheet under Keys > New AppKey. Check you did not mix up AppKey and another key. For devices added by pairing: check the profile’s shared AppKey. |
| Join refused: other JoinEUI | join_eui_mismatch | The device sends a JoinEUI different from the stored one. | Change the stored JoinEUI to what the device sends (often 0000000000000000), or turn on anyJoinEui for the device through the API. |
| Join refused: DevNonce used before / DevNonce used before | devnonce_replay | The device reused a DevNonce. Common with 1.0.4 devices after a factory reset (their DevNonce starts again at 0). | Let the device keep trying: it moves on to new values. If it does not, set its AppKey again (Replace keys), which clears the DevNonce history. |
| No AppKey stored | no_appkey | The device has no key. | Set an AppKey under Keys. |
| Waiting for approval | pending_approval | Pairing mode added the device; nobody approved it. | Approve it. |
| Being added by pairing mode | pairing_pending | Normal: the first request of a device pairing mode found. | Wait for the device’s next join request. |
| ABP device: it does not join / ABP device sent a join request | not_otaa | The device is registered as ABP but runs OTAA. | Remove it and add it again as OTAA. |
| Join refused (mac_version_not_supported) | mac_version_not_supported | The stored LoRaWAN version is not 1.0.2, 1.0.3 or 1.0.4. | Set a supported version. LoRaWAN 1.1 devices must be switched to 1.0.x mode. |
Join accept sent, device keeps trying
The join server accepted the request and a gateway sent the answer, yet the device sends join requests again.
| Possible cause | What to check |
|---|---|
| The device is too far from the gateway for the answer | Uplinks reach the gateway but the answer does not reach the device. Check the RSSI and SNR of the join request; try nearer the gateway. |
| A duty-cycle limit at the gateway | The gateway’s lora.gw.dc_used_pct.<band> values; many confirmed uplinks or downlinks can use up the budget. |
| The gateway’s round trip is too slow | The gateway’s Round trip. A join accept goes 5 s (RX1) or 6 s (RX2) after the request; a link slower than that misses both. |
| The wrong region on the device | The device must be an EU868 device. |
| The gateway does not transmit | Check the gateway’s own log and lora.gw.dn_failed / lora.gw.dn_unknown. |
Join answer not sent (no gateway in time)
The join server accepted the request, but no gateway could send the answer in time: every gateway that heard it was offline, disabled, in local mode, out of duty-cycle budget, or too slow for both windows. Check the gateways near the device. The device tries again by itself.
After a successful join, no data
The badge says Joined, but no readings arrive. See Troubleshooting uplinks and downlinks.
Still stuck
Collect the device’s DevEUI, the time of a join attempt, and a screenshot of the frames log rows, and contact support.

