At the moment the Sensor node uses a "pull" model whereby the node is constantly active & listening for a Companion to connect to it so that it can pull telemetry from the Sensor node. This is a very poor design for battery powered sensor nodes.
A better model would be for a Push Sensor whereby the node spends most of its time in DeepSleep, waking up occasionally to send out a message on a pre-configured Private Channel, before going back to sleep. This will significantly improve battery life.
Since wake-up from Deep Sleep after timeout is not available on nRF52 this would only be an option for ESP32-based devices, however the fact that the node spends 99.9% of the time in Deep Sleep means that extended battery life on ESP should not be a problem.
- Sleep Duration - configurable but no less than 1 minute
- Private Channel to which the telemetry data should be sent as a message.
- By default, battery voltage and MCU temp should be included in the message, however all attached I2C sensor data should also be included in the telemetry message by default.
I believe creating a Push Sensor model will significantly increase the adoption & uptake of the Sensor role.
At the moment the Sensor node uses a "pull" model whereby the node is constantly active & listening for a Companion to connect to it so that it can pull telemetry from the Sensor node. This is a very poor design for battery powered sensor nodes.
A better model would be for a Push Sensor whereby the node spends most of its time in DeepSleep, waking up occasionally to send out a message on a pre-configured Private Channel, before going back to sleep. This will significantly improve battery life.
Since wake-up from Deep Sleep after timeout is not available on nRF52 this would only be an option for ESP32-based devices, however the fact that the node spends 99.9% of the time in Deep Sleep means that extended battery life on ESP should not be a problem.
I believe creating a Push Sensor model will significantly increase the adoption & uptake of the Sensor role.