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