public void LoadConfig() { log.Debug("LoadConfig()"); //clear the existing interface GPIOService.CloseGpio(); Solenoids.Clear(); List <Solenoid> solenoids = DataService.Proxy.GetSolenoids(device.Id); foreach (Solenoid s in solenoids) { DeviceSolenoid sol = new DeviceSolenoid(s); Solenoids.Add(sol); log.DebugFormat("Solenoid Id:{0}", sol.Id); if (device.PumpSolenoidId == sol.Id) { Pump = sol; log.DebugFormat("Found pump solenoid {0}", Pump.Id); } } Analogs.Clear(); List <Analog> analogs = DataService.Proxy.GetAnalogs(device.Id); foreach (Analog a in analogs) { DeviceAnalog an = new DeviceAnalog(a); Analogs.Add(an); } Alarms.Clear(); List <Alarm> alarms = DataService.Proxy.GetAlarms(device.Id); foreach (Alarm a in alarms) { DeviceAlarm al = new DeviceAlarm(a); Alarms.Add(al); } Schedules = DataService.Proxy.GetSchedules(device.Id); }