BGS5T will reset on MIDlet stop | Telit Cinterion IoT Developer Community
October 17, 2018 - 9:21am, 1702 views
Hello,
I have one MIDlet which has 5 diffrent configurations. In two of those configratuons module will reset if I stop the MIDlet or if MIDlet is stopped durring OTAP update, so OTAP won't finish.
What are the things that can reset the module when you are stopping the MIDlet? I have tryed killing all the threads except the thread(IMlet) which extends the MIDlet but it won't help. After IMlet thread starts all other threads and loads configuration her only job is to keep while loop runing, so that which toggles 1 GPIO port, to keep the HW watchdog runing. Watchdog resets the module after 3 minutes, so that can't be the problem.
I am trying to find watch diffrence could be between those configrations but I can't find it.
Program structure is like this:
Configurations only affect how is SerialThread working, how is data parsed and saved. There is no additional threads for any of the configurations,
Regards,
Jure
Hello,
So only hardware watchdog is used - the one built-in the terminal? And no software watchdog activated by A^SCFG command.
Maybe it would be good idea to load the default values for the hardware watchdog before applying your configuration - maybe something else is configured what causes this reset. You should also disable the watchdog in destroyApp() method before the MIDlet exits. That would prevent rebooting by hardware watchdog during OTAP.
Your app is using serial - you should not use baudrate 1200bps for ASC0 as it is used for watchdog configuration.
When is the module rebooted - right away after MIDLET stops or after a certain time? Does it also happen whn you stop the MIDlet with AT command?
Regards,
Bartłomiej
Both watchdogs are used, but they are both set to 3 minutes, so they shoudeln't be the problem. Reset happens imidatly after I stop the MIDlet. Even if I stop it with AT command.
Baud rate is 9600bps.
Regards,
Jure
Problem is solved, I am not 100% sure, but it could be that it happend becuse of some weird signal on TTL connection.
Regards,
Jure
The reset by watchdog will also depend on when it was kicked last time. So the module could be reset much sooner than 3 minutes after the MIDlet stops running. To prevent it you should deactivate both watchdogs in destroyApp() method and design the application properly so that the method is always called on app exit. I mean here that startApp() should only initialize the application and be finished.
But as reset always happens immediately the reason might be somewhere else. Please make sure that for example AT+CFUN=1,1 is not executed in some circumstances while the application exits. Please analyze destroyApp() code which is executed when the application stops - it may contain the answer.
Do you have any log? Is it always the same moment when the module exits? Are there any other apps running? What's the firmware version (ATI1)? Any hardware interfaces used?
BR,
Bartłomiej