Cumulusmx.db (preserving history)

Revision as of 16:11, 16 June 2022 by Sfws (talk | contribs)


As the name suggests, this file /CumulusMX/data/cumulusmx.db (note case for Linux environments) is only applicable for MX.

Database type

This file holds a SQLite3 database.

There are many software tools available that can read/edit SQLite3, this is not the place to get too technical, but take a look at sqlitebrowser in a Linux environment, and phpLiteAdmin in Microsoft Windows. Also, you could use any application that can read ODBC files (e.g. Libre Office's Base functionality), these can read the MX databases.

Releases 3.0.0 to 3.11.4 inclusive

The database only contains one table StandardData. In this forum post Steve Loft describes this table as being for a possible future enhancement. It is believed this is the table that Steve had developed in Cumulus 2, as a replacement for the Monthly_log_files. In another forum post he does give a little more detail about his proposal for Cumulus 3 (MX), and this is backed up by his choice of table name which suggests he was planning to either replace, or duplicate, the use of text files for logging data. It appears he was actually thinking about implementing Monthly_log_files#Enhancement never implemented from his inclusion of "Lo" and "Hi" values in the column list. Despite the evidence supporting that idea, it is a possible alternative that Steve Loft actually thought he could improve on the Recent history functionality, by storing the highest and lowest readings read from weather station in-between the one minute resolution. Whatever context it was to have been implemented in, its purpose was to improve the ability to Correct Extremes Records by storing the most frequent and accurate extremes possible.

Here is the relevant create table instruction, so this tells you the 17 fields in the table as Steve created it (these have never been changed): CREATE TABLE "StandardData"( "Timestamp" datetime primary key not null , "Interval" integer , "OutTemp" float , "LoOutTemp" float , "HiOutTemp" float , "DewPoint" float , "LoDewPoint" float , "HiDewPoint" float , "WindChill" float , "LoWindChill" float , "HiWindChill" float , "InTemp" float , "LoInTemp" float , "HiInTemp" float , "Pressure" float , "LoPressure" float , "HiPressure" float )

Whenever I have viewed this table (with phpLiteAdmin), there has been zero rows within the table. This is because although MX creates the table, currently it does not actually use it.


This table still exists in release 3.12.0 that introduces the second table described below.

Release 3.12.0 onwards

The first table, described above, remains in the database, but is still not being used. I wonder whether MX in the future will actually implement the intended use of this first table, as described above.

Release 3.12.0 introduces a second table RecentData into the same database. This is documented in the update.txt for CumulusMX at release 3.12.0 (beta build 3134) as "Change: Cumulus MX now uses a persistent database to store the recent 1 minute data - This means that charts, recent web tags, and internal calculations for trends and periodic values will be more accurate after a restart - If Cumulus MX is offline for a prolonged period, data for that offline period will obviously still be at the station logging interval resolution".


This second table has the following columns:

Column number # Column name Column type Properties Description Example column value
0 Timestamp datetime Primary Key, can never be NULL, No Default Value, Dates and times for the last 7 days, at whatever interval available (at logging interval for historic archive data, at one minute intervals while MX is running) 2021-07-31 19:44:00
1 WindSpeed float Not NULL, No Default Value The average wind speed (see Wind_measurement#Weather_Stations_and_Cumulus for links) calculated at the stated time, if necessary converted to units requested 2.2593056529
2 WindGust float Not NULL, No Default Value The spot gust speed recorded at the stated time, if necessary converted to units requested 6.99691241605804
3 WindLatest float Not NULL, No Default Value The spot latest wind speed recorded at the stated time, if necessary converted to units requested 3.15989597323001
4 WindDir integer Not NULL, No Default Value The wind bearing (0 =calm), (1 to 360 = number of degrees) 315
5 WindAvgDir integer Not NULL, No Default Value The average wind bearing over the defined period 270
6 OutsideTemp float Not NULL, No Default Value The measured outside air temperature, if necessary converted to units requested 17.0
7 WindChill float Not NULL, No Default Value The wind chill, either calculated by MX, or supplied by weather station. (Note: strictly only valid for low temperatures and significant wind speeds) (In the example used here, temperature in previous column was too high for wind chill, so the value was set to agree with 'OutsideTemp' column instead)
8 DewPoint float Not NULL, No Default Value The dew point, either calculated by MX, or supplied by weather station, for the stated time. 11.9134549845367
9 HeatIndex float Not NULL, No Default Value The USA Heat index as calculated by Cumulus for the stated time (if the temperature is high enough) (In the example used here, temperature in 'OutsideTemp' column was too low for heat index, so the value was set to agree with 'OutsideTemp' column instead)
10 Humidity float (1 decimal place) Not NULL, No Default Value The Relative Humidity reported by the station at the stated time 72.0
11 Pressure float Not NULL, No Default Value The sea level pressure at the stated time, either as reported by the station or calculated by Cumulus from the absolute pressure reported by the station, if necessary converted to units requested 996.400024414062
12 RainToday float Not NULL, No Default Value The rainfall for today so far, calculated by Cumulus from the rain counter (column 15) now minus the rain counter at start of day, if necessary converted to units requested 4.5
13 SolarRad integer Not NULL, No Default Value Solar radiation value reported by station at stated time 200
14 UV float Not NULL, No Default Value The Ultra Violet Index reported by station at stated time 3.0
15 raincounter float Not NULL, No Default Value The rain counter is used by Cumulus for all rainfall outputs, this is its value at stated time 550.4
16 FeelsLike float Not NULL, No Default Value The Feels Like temperature calculated by MX at stated time 17.0782773978147
17 Humidex float Not NULL, No Default Value The Canadian Humidity Index, calculated by Cumulus at the stated time 19.1775362738161
18 AppTemp float Not NULL, No Default Value The Apparent temperature, calculated by MX at the stated time 16.8864476063546
19 IndoorTemp float Not NULL, No Default Value The indoor temperature directly as reported by station at stated time 120.89999961853
20 IndoorHumidity integer (0 decimal places, contrast with column 10) Not NULL, No Default Value The indoor relative humidity directly as reported by station at stated time 61
21 SolarMax integer Not NULL, No Default Value The calculated maximum value for solar radiation at stated time 1026
22 Pm2p5 float Not NULL, No Default Value Air Quality expressed in terms of particulate matter of 2.5 μm, or less, (?? Rolling 24 hours average ??) 1.5
23 Pm10 float Not NULL, No Default Value Air Quality expressed in terms of particulate matter of 10 μm, or less, (?? Rolling 24 hours average ??) 1.7
24 RainRate float Not NULL, No Default Value The rainfall rate calculated for the stated time 303.2