public void GetWeatherLinkData(string PortName) { byte[] RawWeatherData; SerialPort serialPort; serialPort = OpenSerialPort(PortName); if (serialPort != null) { if (WakeSerialVantage(serialPort)) { Data = new WeatherLoopData(); RawWeatherData = RetrieveSerialData(serialPort, "LOOP 1", 95); if (RawWeatherData != null) { Data.LoopDataArray = RawWeatherData; } else { Show_Message("Lost Connection to Vantage Weatherstation"); } } else { Show_Message("Cannot Connect to Vantage Weatherstation"); } serialPort.Close(); } }
internal void Update(WeatherLinkHandler weather) { WeatherLoopData weatherLoopData = weather.Data; if (weatherLoopData == null) { return; } WeatherDataItems.Find(x => x.Name == "BarometricTrend").RawValueUpdate(weatherLoopData.BarometerTrend); WeatherDataItems.Find(x => x.Name == "Barometer").RawValueUpdate(weatherLoopData.Barometer); WeatherDataItems.Find(x => x.Name == "InsideTemperature").RawValueUpdate(weatherLoopData.InsideTemperature); WeatherDataItems.Find(x => x.Name == "InsideHumidity").RawValueUpdate(weatherLoopData.InsideHumidity); WeatherDataItems.Find(x => x.Name == "OutsideTemperature").RawValueUpdate(weatherLoopData.OutsideTemperature); WeatherDataItems.Find(x => x.Name == "WindSpeed").RawValueUpdate(weatherLoopData.WindSpeed); WeatherDataItems.Find(x => x.Name == "WindSpeed10MinAvg").RawValueUpdate(weatherLoopData.WindSpeed10MinAvg); WeatherDataItems.Find(x => x.Name == "WindDirectionNamed").RawValueUpdate(weatherLoopData.WindDirection); WeatherDataItems.Find(x => x.Name == "WindDirection").RawValueUpdate(weatherLoopData.WindDirection); WeatherDataItems.Find(x => x.Name == "OutsideHumidity").RawValueUpdate(weatherLoopData.OutsideHumidity); WeatherDataItems.Find(x => x.Name == "RainRate").RawValueUpdate(weatherLoopData.RainRate); WeatherDataItems.Find(x => x.Name == "UV").RawValueUpdate(weatherLoopData.UV); WeatherDataItems.Find(x => x.Name == "SolarRadiation").RawValueUpdate(weatherLoopData.SolarRadiation); WeatherDataItems.Find(x => x.Name == "StormRain").RawValueUpdate(weatherLoopData.StormRain); WeatherDataItems.Find(x => x.Name == "RainDay").RawValueUpdate(weatherLoopData.RainDay); WeatherDataItems.Find(x => x.Name == "RainMonth").RawValueUpdate(weatherLoopData.RainMonth); WeatherDataItems.Find(x => x.Name == "RainYear").RawValueUpdate(weatherLoopData.RainYear); WeatherDataItems.Find(x => x.Name == "DayET").RawValueUpdate(weatherLoopData.DayET); WeatherDataItems.Find(x => x.Name == "MonthET").RawValueUpdate(weatherLoopData.MonthET); WeatherDataItems.Find(x => x.Name == "YearET").RawValueUpdate(weatherLoopData.YearET); WeatherDataItems.Find(x => x.Name == "ConsoleBatteryVoltage").RawValueUpdate(weatherLoopData.ConsoleBatteryVoltage); }