The application is down

Hello all,

I have been using an application on TTN for the past year without any issues. But two days ago, All my 72 nodes stopped transmitting data at almost the same time (5/23/2019 22:47:45). I have tried to register new devices on the same application but they don’t work.

However, when I register the same device in a different application, they start working.
The only difference between the applications is the handler.

The working application is using ttn-handler-asia-se, and the not working application is using ttn-handler-eu. Would this be the cause?
The image below shows an overview of the not working application.
image

It’s worth mentioning, that I made a new application using ttn-handler-eu. It is not working either.

Would it be possible to change my handler without having my devices removed?
I am using ABP. therefore, I need to set the DEVADDR.

@Maj

Hi Sam. I know there are issue with cross-region routing. Since the gateways you are connecting to are in the Australian region and your application is in the European region, I suspect you are seeing the effects of this issue.

It’s not possible to change an application’s hander AFAIK. I once had a script to migrate devices between applications, which I’ve since lost (@htdvisser - do you still have this?). Alternatively you could export/import using ttnctl and a custom script.

FYI, you should use meshed-handler (Australia) to avoid the cross-region routing issue.

Hi Andrew,

Thanks for the response on weekend,
I have checked the setting of the applications, and I am able to change the handler. But all the devices will be removed.

Since I am using ABP, then I have to change the DEVADDR on all my nodes which is time taking. Initially, I was using Meshed-Handler, but the integration tab is closed to the public.
Another thing is I keep getting this error on my screen every time I change a device tab on my browser.
Capture

Its strange but my Applications also stopped at exactly the same time, and I have identical experience.
I have changed to meshed and recrated the devices and it all seems to be working again.

Thanks for your post it helped me greatly.
Cheers

Bit late reply, but if it’s still an issue, you can use package go.htdvisser.nl/migrate to migrate devices between applications.

1 Like

@htdvisser, given the assignment of DevAddr per region (like an EU DevAddr would start with 0x2601): is migration between regions supported as well?

By the way: on a Mac with a freshly installed Go 1.12.6, go get go.htdvisser.nl/migrate yields some errors. But using git clone ... along with go run . --help, like you also documented, works fine. Same errors when using Go 1.11.11.

Errors with Go 1.12.6
$ go get go.htdvisser.nl/migrate
# github.com/TheThingsNetwork/api/protocol/lorawan
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:57:26: cannot use cmd.MACCommand() (type lorawan.MACCommand) as type lorawan.Payload in append:
	lorawan.MACCommand does not implement lorawan.Payload (UnmarshalBinary method has pointer receiver)
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:83:58: cannot use cmd (type lorawan.Payload) as type lorawan.MACCommand in argument to MACCommandFromMACCommand
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:101:5: mac.AppEUI undefined (type lorawan.JoinRequestPayload has no field or method AppEUI)
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:103:33: cannot convert m.DevNonce (type "github.com/TheThingsNetwork/ttn/core/types".DevNonce) to type lorawan.DevNonce
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:110:40: payload.AppEUI undefined (type *lorawan.JoinRequestPayload has no field or method AppEUI)
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:112:36: cannot convert payload.DevNonce (type lorawan.DevNonce) to type "github.com/TheThingsNetwork/ttn/core/types".DevNonce
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:124:5: mac.AppNonce undefined (type lorawan.JoinAcceptPayload has no field or method AppNonce)
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:124:17: undefined: lorawan.AppNonce
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:125:5: mac.NetID undefined (type lorawan.JoinAcceptPayload has no field or method NetID)
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:132:17: cannot use m.CFList.Freq[0] (type uint32) as type lorawan.Payload in field value:
	uint32 does not implement lorawan.Payload (missing MarshalBinary method)
../../go/src/github.com/TheThingsNetwork/api/protocol/lorawan/message_conversion.go:132:17: too many errors

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.