RuuviTag as a Weather Station

This topic is dedicated to comments and conversations about the following RuuviLab tutorial:

If you don’t see any comments yet, don’t be afraid to be the first one to contribute!


Do you have generated data about battery usage with Weather Station use?

In simple, how long you can use RuuviTag with one battery?

And how easy it is to stretch lifetime of battery?


Most comprehensive real-world measurements can be found in live demo:

The battery voltage can go down to 2 V or so.

Current consumption of weather station is around 28-38 µA depending on transmission power, CR2477 battery should last for 2-3 years indoors. Stretching the battery life is easiest by lowering the transmission frequency, 8 µA current consumption can be achieved. At that consumption the limiting factor for lifetime is coin cell shelf life. PM me if you want to have a precompiled package with lower transmission rate, later we’ll make the tags configurable by Bluetooth.

Hi, what is the current transmission rate for Weather Station and how is the progress of making the transmission rate configurable? thanks


Latest firmware transmits at 2 Hz in URL mode, 1 Hz in RAW mode.
April firmware transmits at 2 Hz in both modes.
Right now easiest way to configure transmission power and is to change the setting in configuration and recompile. [EDIT] Same for intervals.

Currently both accelerometer and BME280 can be configured over GATT, however there is not exact date on when the transmission power and interval is configurable. Probably sometime during 2017.

FYI, the latest Ruuvi firmware transmits at +4dBm on both of the modes (RAW and URL). The hardware supports max +4dBm.

My battery from Kickstarter-batch went out last week. Ruuvitag was mainly used in sauna.

Thanks for letting us know. The tags ship nowadays with CR2477 which should last longer.

How long time it last?


Is this now possible ie. adjusting interval or transmission power? I’d like to see my RuuviTag to send data maybe every 15sec. Thank you.

Adjusting intervals is possible by recompiling firmware. An unofficial tag which sends always in raw mode once per 5 seconds at +4dBm can be downloaded from

Having rarer interval does not bring any concrete benefit, as the lifetime of the tag becomes limited by lifetime of the battery itself

Winters are cold in Finland. What is the spec of the batter I need to look for?

Will this one do?

EDIT: this adds extra cost to the tag, not happy.

I’ve used standard CR2477 batteries in freezer near -30C, but as the battery manufacturer of standard battery does not promise the battery will work at that temperature the tag might shut down.

CR2450HT are high temperature range batteries, they should reach from -40 to +125 C.

Hey Otso,

Would you be so kind and point out which configuration setting in which file sets the transmission frequency?

Thank you in advance.

Thanks for the quick help!

Can I ask what variable you need to change from these to reduce the transmission frequency to for example 15 seconds? The APPLICATION_ADV_INTERVAL? Or some of the loop timers?

Thanks in advance.

Loop timers control the rate at which the sensors are read but not the sampling rate of sensors themselves.

ADV_INTERVALs control the bluetooth transmission rate. If you set it to higher than the loop timers same data will be sent several times, if slower some data won’t be sent.

Valid range for the bluetooth advertisement rate is 100 ms … 10 000 ms, lower or higher should return error from the softdevice.

Okay thanks!

So it is not possible to set it to 10010 as that is higher than the max value. Is it okay if I set it to 9090?

And this would mean that the some measured data will not be sent, as the loop timers are lower values, meaning the loop will execute like 5 times between transmissions. Do I understand this right?

Actually the limit is a bit over 10 000, so 10 010 would be ok. I just never remember the exact value. Basically yes, 9 090 would be ok.


Great, thanks!