Move38 / Blinks-SDK

Development for Blinks starts here. This codebase includes everything you need to get up and running in the Arduino IDE with Blinks.

Home Page:http://forum.move38.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Wake Neighbor with button press

jbobrow opened this issue · comments

A single button press should wake a contiguous group of Blinks

Would this only apply to button presses on a sleeping blink? So you'd have a collection on sleeping blinks and a button press on any other them wakes the rest?

For this to work, there must be a new power state between active and sleeping where the blink is still listening for IR.

What is a good name for this ready to be woken over IR by neighboring blink that wakes state?

This state could be pretty low power compared to active, but uses enough power that you would only want to stay in it for a finite period of time.

What is a good starting point for the maximum period of time a blink should be in this new state after an inactivity timeout? 1 hour? 1 day?

I think that waiting blinks will actually sleep most of the time to save power, and then occasionally wake to look around to see if a nearby blink woke up. The looker that can sleep between these wakes, the les power they will use in this state, but the longer it might take for them to notice that a nearby blink woke.

What is a good time-frame for these periodic checks? 100ms? 1 sec? 2 sec?

I'd suggest "tired" ("nap" or "catnap"?) for the newly named power state.
I.e. Active -> Tired/Catnap -> Sleep

To help with timeouts, what are the use cases where a low-power wakeup is useful?
E.g. Continued gameplay? So, "catnap" state for 1-2 hours post gameplay, than transitions to "Sleeping".

I think the timeframe for checking factors on how long a user would expect to wait before pressing the button. 2 seconds seems like a reasonable value.

Thanks @bigjosh,
I think @kenj1 's suggestions are good for the names, tired, nap, drowsy all work well. We can save those fingers from typing ready to be woken over IR by neighboring blink that wakes and add that in the comments 👍

With respect to the period of time that the Blinks should exist in this state, 2 hours feels nice, I wouldn't expect this next day, but I would expect it during my play session during a single night.

For the periodic checks, 200ms would allows for a relatively latency free wakeup. We have prototyped the look and feel of this here where we are using a 100ms wake delay from Blink to Blink.

Given that periodic wake-ups impact battery life; thoughts on low battery warning...

http://forum.move38.com/t/low-battery-warning-visible-to-user/107?u=kenj