Skip to content

Commit

Permalink
Launchpad: Pro MK3 firmware machine broke
Browse files Browse the repository at this point in the history
  • Loading branch information
mat1jaczyyy committed Sep 26, 2020
1 parent 0c44b49 commit 474cef2
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion Apollo/Elements/Launchpad.cs
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,17 @@ public class Launchpad {
)
);

public static PortWarning ProMK3LegacyRGBBroke { get; private set; } = new PortWarning(
"One or more connected Launchpad Pro MK3s are running a broken version of\n" +
"the official Novation firmware. While they will work with Apollo Studio,\n" +
"this version is known to not render RGB LEDs in Legacy mode.\n\n" +
"There is no fix at the moment. You should use Programmer mode.",
new PortWarning.Option(
"Scream at Novation to fix it",
"https://twitter.com/WeAreNovation"
)
);

public static void DisplayWarnings(Window sender) {
Dispatcher.UIThread.Post(() => {
if (MK2FirmwareOld.DisplayWarning(sender)) return;
Expand All @@ -157,7 +168,8 @@ public static void DisplayWarnings(Window sender) {
if (XFirmwareOld.DisplayWarning(sender)) return;
if (MiniMK3FirmwareOld.DisplayWarning(sender)) return;
if (ProMK3FirmwareUnsupported.DisplayWarning(sender)) return;
ProMK3FirmwareOld.DisplayWarning(sender);
if (ProMK3FirmwareOld.DisplayWarning(sender)) return;
ProMK3LegacyRGBBroke.DisplayWarning(sender);
}, DispatcherPriority.MinValue);
}

Expand Down Expand Up @@ -353,6 +365,9 @@ LaunchpadType AttemptIdentify(MidiMessage response) {
if (versionInt < 450) // Old Firmware
ProMK3FirmwareOld.Set();

if (versionInt == 461) // Broke Legacy mode
ProMK3LegacyRGBBroke.Set();

return LaunchpadType.ProMK3;
}
}
Expand Down

0 comments on commit 474cef2

Please sign in to comment.