Better Windows build-in DFU #3338
This commit is contained in:
parent
25d66ca053
commit
6d5ea798f8
|
@ -6,7 +6,7 @@ import java.net.URL;
|
||||||
import java.util.concurrent.atomic.AtomicReference;
|
import java.util.concurrent.atomic.AtomicReference;
|
||||||
|
|
||||||
public class rusEFIVersion {
|
public class rusEFIVersion {
|
||||||
public static final int CONSOLE_VERSION = 20211022;
|
public static final int CONSOLE_VERSION = 20211023;
|
||||||
public static AtomicReference<String> firmwareVersion = new AtomicReference<>("N/A");
|
public static AtomicReference<String> firmwareVersion = new AtomicReference<>("N/A");
|
||||||
|
|
||||||
public static long classBuildTimeMillis() {
|
public static long classBuildTimeMillis() {
|
||||||
|
|
|
@ -102,11 +102,17 @@ public class DfuFlasher {
|
||||||
if (stdout.toString().contains("Download verified successfully")) {
|
if (stdout.toString().contains("Download verified successfully")) {
|
||||||
// looks like sometimes we are not catching the last line of the response? 'Upgrade' happens before 'Verify'
|
// looks like sometimes we are not catching the last line of the response? 'Upgrade' happens before 'Verify'
|
||||||
wnd.appendMsg("SUCCESS!");
|
wnd.appendMsg("SUCCESS!");
|
||||||
|
wnd.appendMsg("Please power cycle device to exit DFU mode");
|
||||||
|
} else if (stdout.toString().contains("Target device not found")) {
|
||||||
|
wnd.appendMsg("ERROR: Device not connected or STM32 Bootloader driver not installed?");
|
||||||
|
wnd.appendMsg("ERROR: Please try installing drivers using 'Install Drivers' button on rusEFI splash screen");
|
||||||
|
wnd.appendMsg("ERROR: Alternatively please install drivers manually from 'drivers/silent_st_drivers/DFU_Driver' folder");
|
||||||
|
wnd.setErrorState(true);
|
||||||
} else {
|
} else {
|
||||||
wnd.appendMsg(stdout.length() + " / " + errorResponse.length());
|
wnd.appendMsg(stdout.length() + " / " + errorResponse.length());
|
||||||
wnd.appendMsg("ERROR: does not look like DFU has worked!");
|
wnd.appendMsg("ERROR: does not look like DFU has worked!");
|
||||||
|
wnd.setErrorState(true);
|
||||||
}
|
}
|
||||||
wnd.appendMsg("Please power cycle device to exit DFU mode");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void timeForDfuSwitch(StatusWindow wnd) {
|
private static void timeForDfuSwitch(StatusWindow wnd) {
|
||||||
|
|
|
@ -13,6 +13,8 @@ import java.awt.*;
|
||||||
* 3/7/2015
|
* 3/7/2015
|
||||||
*/
|
*/
|
||||||
public class StatusWindow implements StatusConsumer {
|
public class StatusWindow implements StatusConsumer {
|
||||||
|
private static final Color LIGHT_RED = new Color(255, 102, 102);
|
||||||
|
private static final Color LIGHT_GREEN = new Color(102, 255 ,102);
|
||||||
// todo: extract driver from console bundle? find a separate driver bundle?
|
// todo: extract driver from console bundle? find a separate driver bundle?
|
||||||
private final JTextArea logTextArea = new JTextArea();
|
private final JTextArea logTextArea = new JTextArea();
|
||||||
private final JPanel content = new JPanel(new BorderLayout());
|
private final JPanel content = new JPanel(new BorderLayout());
|
||||||
|
@ -41,6 +43,14 @@ public class StatusWindow implements StatusConsumer {
|
||||||
return content;
|
return content;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setErrorState(boolean isErrorState) {
|
||||||
|
if (isErrorState) {
|
||||||
|
logTextArea.setBackground(LIGHT_RED);
|
||||||
|
} else {
|
||||||
|
logTextArea.setBackground(LIGHT_GREEN);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public JFrame getFrame() {
|
public JFrame getFrame() {
|
||||||
return frameHelper.getFrame();
|
return frameHelper.getFrame();
|
||||||
}
|
}
|
||||||
|
@ -55,7 +65,7 @@ public class StatusWindow implements StatusConsumer {
|
||||||
@Override
|
@Override
|
||||||
public void appendMsg(final String string) {
|
public void appendMsg(final String string) {
|
||||||
SwingUtilities.invokeLater(() -> {
|
SwingUtilities.invokeLater(() -> {
|
||||||
String s = string.replaceAll(Character.toString((char)219), "");
|
String s = string.replaceAll(Character.toString((char) 219), "");
|
||||||
FileLog.MAIN.logLine(s);
|
FileLog.MAIN.logLine(s);
|
||||||
logTextArea.append(s + "\r\n");
|
logTextArea.append(s + "\r\n");
|
||||||
UiUtils.trueLayout(logTextArea);
|
UiUtils.trueLayout(logTextArea);
|
||||||
|
|
Loading…
Reference in New Issue