diff --git a/klippy/mcu.py b/klippy/mcu.py index 7f1f7f51..2209ce4e 100644 --- a/klippy/mcu.py +++ b/klippy/mcu.py @@ -567,6 +567,9 @@ class MCU: if start_reason == 'firmware_restart': raise error("Failed automated reset of MCU '%s'" % (self._name,)) if self._config_crc != config_params['crc']: + if config_params['is_shutdown']: + raise error("Can not update MCU '%s' config as it is shutdown" + % (self._name,)) self._check_restart("CRC mismatch") raise error("MCU '%s' CRC does not match config" % (self._name,)) move_count = config_params['move_count'] diff --git a/src/basecmd.c b/src/basecmd.c index 08dc6ec2..8ce7a27c 100644 --- a/src/basecmd.c +++ b/src/basecmd.c @@ -201,8 +201,8 @@ static uint32_t config_crc; void command_get_config(uint32_t *args) { - sendf("config is_config=%c crc=%u move_count=%hu" - , is_finalized(), config_crc, move_count); + sendf("config is_config=%c crc=%u move_count=%hu is_shutdown=%c" + , is_finalized(), config_crc, move_count, sched_is_shutdown()); } DECL_COMMAND_FLAGS(command_get_config, HF_IN_SHUTDOWN, "get_config");