mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 22:47:29 -06:00
Add UI feedback on invalid firmware update
CURA-6537
This commit is contained in:
parent
b20a349b44
commit
3853fb6d19
4 changed files with 11 additions and 3 deletions
|
@ -75,4 +75,4 @@ class FirmwareUpdateState(IntEnum):
|
||||||
communication_error = 4
|
communication_error = 4
|
||||||
io_error = 5
|
io_error = 5
|
||||||
firmware_not_found_error = 6
|
firmware_not_found_error = 6
|
||||||
|
invalid_firmware_error = 7
|
||||||
|
|
|
@ -151,6 +151,8 @@ Cura.MachineAction
|
||||||
return catalog.i18nc("@label","Firmware update failed due to an input/output error.");
|
return catalog.i18nc("@label","Firmware update failed due to an input/output error.");
|
||||||
case 6:
|
case 6:
|
||||||
return catalog.i18nc("@label","Firmware update failed due to missing firmware.");
|
return catalog.i18nc("@label","Firmware update failed due to missing firmware.");
|
||||||
|
case 7:
|
||||||
|
return catalog.i18nc("@label","Firmware update failed due to invalid firmware file.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -27,6 +27,9 @@ class AvrFirmwareUpdater(FirmwareUpdater):
|
||||||
except (FileNotFoundError, AssertionError):
|
except (FileNotFoundError, AssertionError):
|
||||||
Logger.log("e", "Unable to read provided hex file. Could not update firmware.")
|
Logger.log("e", "Unable to read provided hex file. Could not update firmware.")
|
||||||
self._setFirmwareUpdateState(FirmwareUpdateState.firmware_not_found_error)
|
self._setFirmwareUpdateState(FirmwareUpdateState.firmware_not_found_error)
|
||||||
|
except Exception:
|
||||||
|
Logger.logException("e", "Failed to read hex file '%s'", self._firmware_file)
|
||||||
|
self._setFirmwareUpdateState(FirmwareUpdateState.invalid_firmware_error)
|
||||||
return
|
return
|
||||||
|
|
||||||
programmer = stk500v2.Stk500v2()
|
programmer = stk500v2.Stk500v2()
|
||||||
|
|
|
@ -5,13 +5,16 @@ See: http://en.wikipedia.org/wiki/Intel_HEX
|
||||||
This is a python 3 conversion of the code created by David Braam for the Cura project.
|
This is a python 3 conversion of the code created by David Braam for the Cura project.
|
||||||
"""
|
"""
|
||||||
import io
|
import io
|
||||||
|
from typing import List
|
||||||
|
|
||||||
from UM.Logger import Logger
|
from UM.Logger import Logger
|
||||||
|
|
||||||
def readHex(filename):
|
|
||||||
|
def readHex(filename: str) -> List[int]:
|
||||||
"""
|
"""
|
||||||
Read an verify an intel hex file. Return the data as an list of bytes.
|
Read an verify an intel hex file. Return the data as an list of bytes.
|
||||||
"""
|
"""
|
||||||
data = []
|
data = [] # type: List[int]
|
||||||
extra_addr = 0
|
extra_addr = 0
|
||||||
f = io.open(filename, "r", encoding = "utf-8")
|
f = io.open(filename, "r", encoding = "utf-8")
|
||||||
for line in f:
|
for line in f:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue