Wind average not correct (resolved)


this snippet of data shows 6 measurements where wind gust isn’t zero, but the average wind speed is zero. How can that be? A wind gust of 3.2 km/h and an average of 0.0?? either the max should be zero, or the average should be non-zero!

I wonder if this is a rounding issue/bug? Any average wind speed below 0.5 is rounded down to zero incorrectly.

Nah, i just did a quick check and it was easy to find a reported value of 0.4 km/h. Anyway a measured peak of 3.2 averaged together with three measurements of 0.0 should give an average of 0.8.

Most likely this is a rounding issue - an average speed less than 0.05 will round to 0.0 in the display.

I just figured out what is going on. The unit conversion is done after the rounding, instead of the better reverse alternative!

The average is rounded to the nearest one tenth of a m/s. So the only values are 0.0, 0.1, 0.2, 0.3, 0.4 m/s etc. Afterwards it is converted to km/h creating the only possible values of 0.0, 0.4, 0.7, 1.1, 1.4, 1.8, 2.2 km/h etc.

That’s why it doesn’t show the correct value for the average of 0.2 km/h but 0.0

This is a great example of why rounding should be done as late in a calculation as possible. Round only the final value if possible.

Good catch, @sunny. This is a bug - the one-minute wind speed records are stored to the hundredth of a m/s (0.01 m/s) but the other “buckets” (5-minute, 30-minute, etc.) are only stored to the tenth of a m/s (0.1 m/s). We’ll get that fixed in the next API update.


its probably also the reason that no wind direction is shown in these circumstances.

1 Like