Other Parts Discussed in Thread: CC2640R2F, CC2540
Hi all,
I start learning BLE technology. As a starting point I want to code the coin cell battery-powered reed switch event counter. The goals are: long cell battery life, internal counter, an ability to send counter data to a central device on demand or periodically. And I have few newbie questions:
- I can implement it as advertiser/observer. It's easy but not optimal. If I implement a service and use master/slave connection, I can use connection events with few seconds intervals and save power. As far as I understand, I should implement advertising by request (button) for few seconds, then connect to it, and stop advertising. But what if a master device was unavailable for, say, 10 minutes or an hour? The slave drops connection and now there are neither connection events, nor advertisements. So master will not be able to connect again automatically, I should press a button to start advertisements again. What is a usual practice to make connection self reestablishing and still not wasting power on advertisements if master lost for few minutes or an hour?
- And another question: when in low power state, CC2541 consumes near 1uA. What is a usual practice to wakeup on reed switch event? I can enable internal pullup/down, or use an external resistor. But to have comparable power consumption it should be around 100-300M. Is it ok, or maybe some other methods exist? The same is actually applied to BLE keyboards and remotes. How to keep current low and still be able to wakeup on dry contact event?