mirror of
https://github.com/dw-0/kiauh.git
synced 2025-12-23 07:43:36 +05:00
Compare commits
2 Commits
336414c43c
...
aa1b435da5
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aa1b435da5 | ||
|
|
449317b118 |
@@ -11,11 +11,13 @@ from subprocess import CalledProcessError, check_output, Popen, PIPE, STDOUT, ru
|
||||
from typing import List
|
||||
|
||||
from components.klipper import KLIPPER_DIR
|
||||
from components.klipper.klipper import Klipper
|
||||
from components.klipper_firmware import SD_FLASH_SCRIPT
|
||||
from components.klipper_firmware.flash_options import (
|
||||
FlashOptions,
|
||||
FlashMethod,
|
||||
)
|
||||
from core.instance_manager.instance_manager import InstanceManager
|
||||
from utils.logger import Logger
|
||||
from utils.system_utils import log_process
|
||||
|
||||
@@ -106,18 +108,22 @@ def start_flash_process(flash_options: FlashOptions) -> None:
|
||||
if not SD_FLASH_SCRIPT.exists():
|
||||
raise Exception("Unable to find Klippers sdcard flash script!")
|
||||
cmd = [
|
||||
SD_FLASH_SCRIPT,
|
||||
"-b",
|
||||
flash_options.selected_baudrate,
|
||||
SD_FLASH_SCRIPT.as_posix(),
|
||||
f"-b {flash_options.selected_baudrate}",
|
||||
flash_options.selected_mcu,
|
||||
flash_options.selected_board,
|
||||
]
|
||||
else:
|
||||
raise Exception("Invalid value for flash_method!")
|
||||
|
||||
instance_manager = InstanceManager(Klipper)
|
||||
instance_manager.stop_all_instance()
|
||||
|
||||
process = Popen(cmd, cwd=KLIPPER_DIR, stdout=PIPE, stderr=STDOUT, text=True)
|
||||
log_process(process)
|
||||
|
||||
instance_manager.start_all_instance()
|
||||
|
||||
rc = process.returncode
|
||||
if rc != 0:
|
||||
raise Exception(f"Flashing failed with returncode: {rc}")
|
||||
|
||||
@@ -432,12 +432,10 @@ class KlipperFlashOverviewMenu(BaseMenu):
|
||||
print(menu, end="")
|
||||
|
||||
def execute_flash(self, **kwargs):
|
||||
from core.menus.advanced_menu import AdvancedMenu
|
||||
|
||||
start_flash_process(self.flash_options)
|
||||
Logger.print_info("Returning to MCU Flash Menu in 5 seconds ...")
|
||||
time.sleep(5)
|
||||
KlipperFlashMethodMenu(previous_menu=AdvancedMenu).run()
|
||||
KlipperFlashMethodMenu().run()
|
||||
|
||||
def abort_process(self, **kwargs):
|
||||
from core.menus.advanced_menu import AdvancedMenu
|
||||
|
||||
@@ -39,6 +39,7 @@ class AdvancedMenu(BaseMenu):
|
||||
self.options = {
|
||||
"3": Option(method=self.build, menu=True),
|
||||
"4": Option(method=self.flash, menu=False),
|
||||
"5": Option(method=self.build_flash, menu=False),
|
||||
"6": Option(method=self.get_id, menu=False),
|
||||
}
|
||||
|
||||
@@ -70,6 +71,10 @@ class AdvancedMenu(BaseMenu):
|
||||
def flash(self, **kwargs):
|
||||
KlipperFlashMethodMenu(previous_menu=self.__class__).run()
|
||||
|
||||
def build_flash(self, **kwargs):
|
||||
KlipperBuildFirmwareMenu(previous_menu=KlipperFlashMethodMenu).run()
|
||||
KlipperFlashMethodMenu(previous_menu=self.__class__).run()
|
||||
|
||||
def get_id(self, **kwargs):
|
||||
KlipperSelectMcuConnectionMenu(
|
||||
previous_menu=self.__class__,
|
||||
|
||||
Reference in New Issue
Block a user