pimoroni / enviro

MIT License
104 stars 83 forks source link

Ability to synchronise readings from multiple Enviro modules #6

Closed lowfatcode closed 1 year ago

lowfatcode commented 2 years ago

Currently scheduling is always relative (e.g. "every five minutes"). This makes it tricky to setup multiple Enviro boards that collect data at the same time.

Options:

We definitely want to avoid making the configuration overly complex with too many options. It's harder for the user to reason about.

ExperiMentor commented 2 years ago

Seems worthwhile implementing, even if simply (without complete versatility).

Given that people can choose unusual sampling frequencies (eg, every 23 minutes), it could simply be implemented as 'make the first measurement at an integer multiple of the interval past the hour' - at 00, 23 or 46 in this example - instead of always "now" as at present. That would satisfy most needs

helgibbons commented 2 years ago

Submitting every fourth reading (instead of every five) would a nice option to have in provisioning, as it aligns nicely with the hour and skirts neatly under the limits of the free tier of Adafruit IO. Maybe with a 'recommended for Adafruit IO' label?

lowfatcode commented 1 year ago

Readings are now synchronised to clock time rather than just relative to last boot up.

This means, for example, if you pick readings every 20 minutes you'll get one at roughly :00, :20, and :40 after the hour.

In https://github.com/pimoroni/enviro/commit/f8616058408be221a04db8b6c138ea2f15d2bae8