I am using BC66NB module with OpenCPU to periodically get data from a sensor, send them to the server and go to deep sleep in between. Everything works fine for some time (some days to a few weeks) until the module doesn’t wake up anymore. I am pretty sure it isn’t a power related issue. The last communication with server is ok, so I guess it isn’t newtwork related either. I use fw version 07 and at+qrellock and atlocktime=0 to send the module to deep sleep as soon as possible.
Has anyone else encountered this or similar issue? I would be grateful for any insight.
How module wake-up from sleep PSM, RTC, PIN?
I use RTC. Also I am sending data only every sixth wake up and the last wake up before failure is always the one that sends data. Dont know if that makes any difference.
yep … RTC-PSM bug still exist… I send notices before year…
Does that mean that there is a bug in the firmware? Or is that a problem with platformio? Is there a fix or a workaround? Thanks for your insight.
OpenCPU? … PlatformIO just follow SDK
Ql_Rtc_… can create only N timers ( I forgot the number, 6 or 14 ) … after that crash
s32 Ql_Rtc_Start(u32 rtcId, u32 interval, uint8_t autoRepeat)
rtc_sw_timer_delete(p->rtc_handle); // ignore error
I’m sorry, I don’t think I understand that. Could you please explain a little bit further what is the problem?
Quectel user API Ql_Rtc_xxxx uses Mediatek SDK rtc_sw_timer module
This module have max [ 14 ] timer slots
After wakeup is used next slot and after 14 wakeups … no slot available, kernel crash…
workaround: reset module after N times wakeups
I’m sure it wakes up fine much more than 14 times. I always stop the timer after wakeup, calculate new period and start the rtc again.
try activate AND wakeup from PSM
if RTC “crash”, PSM will wakeup module,
this is other timers supported from DSP part
So if I understand correctly, You suggest trying to wake the module up maually after the crash to see what happens? This may take some time, but I will report back.
and PSM from cell … you will have both wakeup events
from RTC … if have problem - the cell will wakeup
Ah, now I think I understand. If I set the TAU timer, the TAU timer will wake the module up if the rtc fails.
That’s a great idea. I didn’t consider this probably because I thought it must be woken up by the same rtc anyway. You have been most helpful, thank You