Hello All,
I have a requirement where temperature Sensor is collecting temperature data constantly. If temperature data is changed by at least 10% from previous value. When this change occurs, if the phone is nearby, the data must be delivered to the phone within 450msec.
For Above requirement I am bit confused between this two approach,
Approach 1) Phone always connected when nearby. Configure Sensor as Peripheral mode and keep it in continuous connection (Bonded) with Phone. For sending data within 450Msec i will keep Min Connection interval as 100 and Max connection interval as 400 and Slave latency to value for saving power i:e 5. So keeping Connection interval 450Msec ,Slave latency 5 and Rx/Tx payload to 20, Device consumes around 5.1uA. Refer https://devzone.nordicsemi.com/nordic/power/w/opp/2/online-power-profiler-for-ble This satisfies above scenario where i want data within 450msec. But here I have to keep Peripheral device always connected to Phone. Not sure if this is a good approach.
Approach 2) Increase ADV rate for sending fast. Configure Sensor as Peripheral and keep on Advertising at 1000Msec. If there is change in sensor data ADV will switch too Fast mode for example 20Msec for next 1 min. Once new sensor data are available then in ADV frame will raise flag. Based on new ADV frame flag phone will decide too connect with sensor and collect data. Here also connection interval and other parameters will be same as above scenario. But here I am not sure if this whole thing can complete within 450msec. Usually how long it takes for establishing a connection ?
Is there any other approach I can use if not above then.
Your inputs are highly appreciated.
Regards,
Jayesh