diff --git a/config.yaml b/config.yaml index 44aedee..f6b7754 100644 --- a/config.yaml +++ b/config.yaml @@ -1,7 +1,7 @@ bootloader_bin_path: /home/ly0kos/work/Verify/FW/tftp_app/bootloader/bootloader_z100_800M.bin bootloader_bit_path: /home/ly0kos/work/Verify/FW/tftp_app/bootloader/pl_arm_wrapper_hw_platform_0/pl_arm_wrapper.bit bootloader_elf_path: /home/ly0kos/work/Verify/FW/tftp_app/bootloader/app.elf -erase_all: true +erase_all: false firmware_bin_path: /home/ly0kos/work/Verify/FW/V1.3.1.3.3_06_01_pmu_cpld_check/V1.3.1.3.3_06_01_pmu_cpld_check.bin flash_model: s25fl256s1 flash_type: qspi-x4-single diff --git a/src/gui/widgets.py b/src/gui/widgets.py index 9706ff1..9cdc556 100644 --- a/src/gui/widgets.py +++ b/src/gui/widgets.py @@ -797,9 +797,11 @@ class UartMonitorWindow(ctk.CTkToplevel): self.title("UART Monitor") self.geometry("680x540") self.minsize(480, 360) - self.grab_set() self.protocol("WM_DELETE_WINDOW", self._on_close) + # Defer grab_set until window is viewable (avoids "window not viewable" error) + self.after(50, self._do_grab) + self._port = port self._baudrate = baudrate self._monitor: UartMonitor | None = None @@ -814,6 +816,13 @@ class UartMonitorWindow(ctk.CTkToplevel): # Try to open serial port after window is drawn self.after(100, self._try_open) + def _do_grab(self) -> None: + """Acquire grab once window is viewable.""" + try: + self.grab_set() + except Exception: + pass # Window may have been destroyed already + # ── Title Bar ────────────────────────────────────────────── def _build_title_bar(self) -> None: diff --git a/xicom_zynq_bin1785783 b/xicom_zynq_bin1785783 new file mode 100644 index 0000000..1c9660f Binary files /dev/null and b/xicom_zynq_bin1785783 differ