Hello,
I'm still a beginner with mesh so excuse me, if this might be a silly question or has been answered before. I did not find a post that quite resembled my problem.
So for my use case I want to power my sensor node and display multiple states. (For now implemented as on off server since I haven't wrote my own model yet)
Because the sensor node is supposed to be powered by a battery, I'm trying to use as less power as possible.
So far I have implemented the use case in both regular and LPN + Friend Node.
When I configured the low power node, I expected it to consume less power than the relaying switch application, but so far (even with the friendship established) the low power application shows no difference to the relaying switch application. In fact it even consumes more power than my optimized switch application.
I tried to change the parameters of the friend connection and disabling the LEDs, but it does not seem to make any difference.
#define FRIEND_REQUEST_TIMEOUT_MS (MESH_LPN_FRIEND_REQUEST_TIMEOUT_MAX_MS)
/** The upper limit for two subsequent Friend Polls. */
#define POLL_TIMEOUT_MS (SEC_TO_MS(30)) // changed from 10
/** The time between LPN sending a request and listening for a response. */
#define RECEIVE_DELAY_MS (10) // changed from 100
From my measurements it looks like the application is never entering low power mode, even though the poll timeout is set to 30 seconds.
You can see that the nRF module consumes more power for a short period of time to establish the friendship, but nothing is changing after that.
So my question is what might stop the application from entering low power mode and how to pause the application manually. (1)
And also: In this case the sensor only really needs to send data, not receive any. What is the best way to realize that type of sensor in a mesh? Would it be possible to set NRF52 to deep sleep mode and only wake up by toggling a GPIO, still keeping it a member of the mesh by keeping it al LPN? (2)