Where do I set the AppEUI?

Hello, I’m trying to setup LoRa Server 0.22.0 with LoRA app server 0.14.0. Where do I set the AppEUI? When adding up a device I can set the Device EUI and the Application Key, but I can’t find any fields for AppEUI. The documentation includes a screenshot that shows an Application EUI field, but I’m not seeing that on any of the forms for devices or device-profiles.


1 Like


You have to add it when creating a node (“Node configuration” / “Node details”).


In the latest version, you don’t need to set this anymore :slight_smile:

Thanks for the response.

If you don’t need to create an AppEUI anymore, what do I use for AppEUI when setting up devices, as described here?

You device needs to know its JoinEUI (note it has been renamed from AppEUI to JoinEUI) as in the future it will be used by the network-server to find out which join-server is responsible for authenticating the join-request. However, I don’t believe the network needs to store this as the device will advertise this value on OTAA. Please see the LoRaWAN Backend Interfaces specification for more information on this: https://www.lora-alliance.org/lorawan-for-developers.

1 Like

Where does the join server fit in with the rest of the LoRa server architecture? Is the LoRa server acting as the join server?

LoRa App Server is acting as a default join-server. In the future LoRa Server will also support the DNS lookup meganism to perform the join-server address.

Hi all,

@brocaar, so LoRa App Server is acting as a default join-server. Then where can I find join server interface like web UI?

See the --js-bind config option for the join-server api port.

Thank you @brocaar . I think I need more study about the new LoRaWAN backend interface specification. :stuck_out_tongue:

Hi brocaar,
I am using Loraserver v 0.23.3 and Lora App Server v 0.17.1. My device join request causes error. I couldnt find any setting to set appeui. My other setting seems to be true. Lora server says:

level=info msg=“packet(s) collected” dev_eui=43…a1 gw_count=1 gw_macs=19…96 mtype=JoinRequest

The dev_eui in this message is same as my dev_eui setting. But the next message is an error:

level=error msg=“processing rx packet error: join-request to join-server error: response error, code: MICFailed, description: invalid mic” data_base64=“ADJoAPB+1bNwoXEJyYQY40Mfd5eAyeA=”

What can be the problem? How can I know what appeui/appkey/mic is calculated and it is not paired with the device message’s?

Best regards

There is no need to set the AppEUI / JoinEUI in LoRa App Server. If the entered details are set “correct” make sure they are also in the correct byte order (for some devices 0102030405060708 must be entered as 0807060504030201, see this example: https://docs.loraserver.io/lora-app-server/use/devices/).

My end device is RN2483. So the order is not reverse. The loraserver logs the device eui as expected

level=info msg=“packet(s) collected” dev_eui=43…a1 gw_count=1 gw_macs=19…96 mtype=JoinRequest
I can see it from the log. Where can I see the calculated AppEui and AppKey?
Or any more detail log for this error?

Some devices that are supposed to attach to my network already have AppEUIs programmed in, since the packets are being forwarded to their server from ours. Should I fret about this? I am already doing so I guess


Perhaps I should start this as a new thread.

Hello @orne, I need your advice on how to provision a new device. I have read the documentation, but I can’t find where can I get the AppEUI after creating a device in UI.

As long as you’re not using a join-server (LoRa App Server acts as a default join-server currently, regardless of the AppEUI value), the AppEUI / JoinEUI (two names, same field) does not matter. E.g. you can leave this to 0000000000000000.

1 Like

Thanks, So if I understand well, this means that in the RN2483 module I will have to set 0000000000000000 (or whatever else) as AppEUI. Is that correct?

Yes, that is correct.

Thank you very much!

Dear Brocaar,
1 question though.
I’ve seen that you implemented some parameters here and there that are not used for now but will be enforced in near future (like datarate of channels in the loraserver toml config).
Why not doing the same for the JoinEUI?
After all, lora-app-server plays the role of join server for now, but in the future?
Wouldn’t it be safer to have a field in the device config page to set the appeui (not mandatory ).
Then in a future release when join server will be handled externally or by another process, that would prevent from re-provisioning all devices within a network (and it can easily be a lot)…
What do you think?