Gemalto is now part of the Thales Group, find out more.

You are here

UDP connection loss after migration from EHS6 to ELS61 | Thales IoT Developer Community

October 13, 2021 - 7:43pm, 4781 views

Hello again,

We recently migrated our data logging java app from EHSx to ELS61 platform. Not many changes were needed, we can still build the app form the same codebase, just switching the WTK.

We use UDP protocol for data transfer from module to server and we have been using it very successfully for several years without issues on EHSx plaftorm (even on TC65i). But now, moving to ELS61, we are noticing connection failures occurring every few hours. In previous platforms, this event was so rare we just used the watchdog to kick in and reset the device after an hour since last data exchange.

On ELS61, this happens several ***** daily and so frequent restarts look bad on the stability statistics charts.

Most of the time, our app is waiting in DatagramConnection.receive method. Every few hours, there are no received datagrams for 5 minutes (should come at least every minute) and then the method throws an InterruptedIOException. On retry, the exception is thrown instantly.

So, is there a setting, mybe a timer that would not get triggered by UDP-only data transfer? We are seeing this behavior on 50+ devices, so it's not just one piece gone rouge.

Next issue is trying to work around it by resetting the network on InterruptedIOException and not triggering the watchdog.

We tried with AT+COPS=2, then AT+COPS=0, but more ***** than not, the module freezes at AT+COPS=2. As we don't use ATCommandListener yet, that essentially freezes our comm Thread, and again, we wait for the watchdog.

We tried with AT+CFUN=4 followed by AT+CFUN=1, that put the module permanently in Airplane ****, even restart didn't help.  Like AT+CFUN=1 was never executed. We don't want to got that way. If this happens in the field, we're doomed. Watchdog is no help here...

Next is to try only with AT+CGACT=0/AT+CGACT=1, maybe that will be enough...

So, what say you. What is different in ELS61 UDP or what else can I try to make it just work all the time?

Thank you in advance for any comments or suggestions!