HeavyWeather History File Format -------------------------------- Last Updated 2005/7/8 Compiled by Ben Udall By default, weather history is stored in the history.dat file in the HeavyWeather folder. HeavyWeather and HeavyWeatherPro use two different formats, both of which are presented below. Initial format information for HeavyWeatherPro was taken from Cyril Cavadore's program (http://www.astrosurf.com/cavadore/meteo/stations_meteo/lacrosse/) ******************* HeavyWeather V2.0 beta La Crosse WS-2310 and WS-2315 weather stations Each row of data is stored in 36 byte chunks starting from the beginning of the file (no header). Row Offset Type Name Unit ------ --------- ---------------- ----- 00 ULong [4] unknown - (Value is always 1) 04 ULong [4] Timestamp seconds from 1/1/1900 00:00:00 (GMT) 08 Float [4] Abs Pressure hectopascals (millibars) 12 Float [4] Wind Speed meters/second 16 ULong [4] Wind Direction see below 20 Float [4] Total Rainfall millimeters 24 Float [4] Indoor Temp Celsius 28 Float [4] Outdoor Temp Celsius 32 UWord [2] Indoor Humidity % 34 UWord [2] Outdoor Humidity % At the end of the file is an additional 28 bytes providing information about the dataset as a whole. Offset Type Description ------ --------- ---------------- 00 ULong [4] unknown 04 Ulong [4] unknown (0) 08 Float [4] unknown (5.698) 12 ULong [4] unknown (0) 16 ULong [4] Number of rows 20 ULong [4] Timestamp of the first row of data 24 ULong [4] Timestamp of the last row of data ******************* HeavyWeatherPro V1.1 La Crosse WS-3610 weather station Each row of data is stored in 56 byte chunks starting from the beginning of the file (no header). ROW OFFSET Type Name Unit ------ --------- ---------------- ----- 00 Double [8] Timestamp days from 12/30/1899 00:00:00 (GMT) 08 Float [4] Abs Pressure hectopascals (millibars) 12 Float [4] Relative Pressure hectopascals (millibars) 16 Float [4] Wind Speed meters/second 20 ULong [4] Wind Direction see below 24 Float [4] Wind Gust meters/second 28 Float [4] Total Rainfall millimeters 32 Float [4] New Rainfall millimeters 36 Float [4] Indoor Temp celsius 40 Float [4] Outdoor Temp celsius 44 Float [4] Indoor Humidity % 48 Float [4] Outdoor Humidity % 52 ULong [4] unknown - (Value is always 0) Since the timestamp is a double, the fractional part represents fractions of a day. This is probably the same type as the Delphi TdateTime type. More information about this type can be found here: http://www.aimtec.com.au/articles/ItsAboutTime/Default.htm ******************* Wind Direction Wind direction is encoded as an integer between 0 and 15. To get the wind direction in degrees, multiply the value by 22.5. To get compass directions (moving clockwise) 0 is North, 1 is North-Northeast, 2 is Northeast, etc... 0 N 1 NNE 2 NE 3 ENE 4 E 5 ESE 6 SE 7 SSE 8 S 9 SSW 10 SW 11 WSW 12 W 13 WNW 14 NW 15 NNW