Hello, fellow developers!
Right now I'm trying to decrease the current consumption of my BLE/Thread Node witch is build on the nRF52840 dongle. It is crucial for me not to lose BLE connections,
thus I cannot use switched multiprotocol. My idea is to stay at BLE for the most time and use Thread only for a short period (assuming that during this period I still can
handle BLE connections).
I've found two possible functions for this. Both of them clear the instance of OpenThread and the first one deinitialize drivers as well.
void thread_deinit(void)
{
ASSERT(mp_ot_instance != NULL);
otInstanceFinalize(mp_ot_instance);
otSysDeinit();
mp_ot_instance = NULL;
}
void thread_soft_deinit(void)
{
ASSERT(mp_ot_instance != NULL);
otInstanceFinalize(mp_ot_instance);
mp_ot_instance = NULL;
}
I assume I should use thread_soft_deinit() and reinitialize thread instance when I want to have Thread up and running. Unfortunately, thread_instance_init() does all from scratch
(including thread drivers) and there is no functionality for thread instance only initialization.
Is there any possible way to solve this issue? Thx in advance.
