public void Dispose() { //_unloadZWavePort(); try { controller.DiscoveryEvent -= DiscoveryEvent; controller.UpdateNodeParameter -= controller_UpdateNodeParameter; controller.ManufacturerSpecificResponse -= controller_ManufacturerSpecificResponse; } catch { } // try { zwavePort.Disconnect(); } catch { } zwavePort = null; controller = null; }