/// <summary> /// Resets the POR bit if it was set /// </summary> /// <param name="localSummit">SummitSystem for the api call</param> private void ResetPOR(SummitSystem localSummit) { if (localSummit == null || localSummit.IsDisposed) { _log.Warn("Summit Disposed"); return; } _log.Info("POR was set, resetting..."); APIReturnInfo bufferReturnInfo; try { // reset POR bufferReturnInfo = localSummit.ResetErrorFlags(Medtronic.NeuroStim.Olympus.DataTypes.Core.StatusBits.Por); if (bufferReturnInfo.RejectCode != 0) { return; } // check battery BatteryStatusResult theStatus; localSummit.ReadBatteryLevel(out theStatus); if (bufferReturnInfo.RejectCode != 0) { return; } // perform interrogate command and check if therapy is enabled.s GeneralInterrogateData interrogateBuffer; localSummit.ReadGeneralInfo(out interrogateBuffer); if (interrogateBuffer.IsTherapyUnavailable) { _log.Warn("Therapy still unavailable after POR reset"); return; } } catch (Exception e) { _log.Error(e); } }