Hi,
The program assumes that the WS1001 console is sending weather data values based on US units (not metric). Since the weather data contained in the easyweather output file must be expressed in metric units, the program converts the appropriate data values before writing the easyweather output file. So if your ws1001 weather station is set to display metric units, the program should not perform the conversion. I can add an option to ws1001wxdata.pl to handle data given in metric units, so that the program does not convert the data values before writing the easyweather file. In the mean time, you could modify your copy of ws1001wxdata.pl so that it does not convert the affected data values. For example, replace
# outdoor temp
$ewdata[9] = (($msgcontent[13] =~ /\d/) ? (($msgcontent[13] - 32.) * $f2c) : $msgcontent[13]);
with
# outdoor temp
$ewdata[9] = $msgcontent[13];
-Bill