diff --git a/Artemis/Artemis/KeyboardProviders/Corsair/K70.cs b/Artemis/Artemis/KeyboardProviders/Corsair/K70.cs index 792cc2d48..63b7b702f 100644 --- a/Artemis/Artemis/KeyboardProviders/Corsair/K70.cs +++ b/Artemis/Artemis/KeyboardProviders/Corsair/K70.cs @@ -30,6 +30,11 @@ namespace Artemis.KeyboardProviders.Corsair return false; throw; } + catch (WrapperException) + { + CueSDK.Reinitialize(); + return true; + } return true; diff --git a/Artemis/Artemis/KeyboardProviders/Corsair/K95.cs b/Artemis/Artemis/KeyboardProviders/Corsair/K95.cs index 3fba9ab96..517ce6c14 100644 --- a/Artemis/Artemis/KeyboardProviders/Corsair/K95.cs +++ b/Artemis/Artemis/KeyboardProviders/Corsair/K95.cs @@ -30,6 +30,11 @@ namespace Artemis.KeyboardProviders.Corsair return false; throw; } + catch (WrapperException) + { + CueSDK.Reinitialize(); + return true; + } return true; diff --git a/Artemis/Artemis/Models/MainModel.cs b/Artemis/Artemis/Models/MainModel.cs index e5eaba72f..f92b66d46 100644 --- a/Artemis/Artemis/Models/MainModel.cs +++ b/Artemis/Artemis/Models/MainModel.cs @@ -115,11 +115,23 @@ namespace Artemis.Models // Disable everything if there's no active keyboard found if (!keyboardProvider.CanEnable()) { + string message; + if (keyboardProvider.Name.ToLower().Contains("Corsair")) + { + message = "Couldn't connect to the " + keyboardProvider.Name + ".\n " + + "Please check your cables and/or drivers (could be outdated) and that Corsair Utility Engine is running.\n\n " + + "If needed, you can select a different keyboard in Artemis under settings."; + } + else + { + message = "Couldn't connect to the " + keyboardProvider.Name + ".\n " + + "Please check your cables and/or drivers (could be outdated).\n\n " + + "If needed, you can select a different keyboard in Artemis under settings."; + } + ActiveKeyboard = null; MessageBox.Show( - "Couldn't connect to the " + keyboardProvider.Name + ".\n " + - "Please check your cables and/or drivers (could be outdated).\n\n " + - "If needed, you can select a different keyboard in Artemis under settings", + message, "Artemis (╯°□°)╯︵ ┻━┻", MessageBoxButtons.OK, MessageBoxIcon.Warning);