I assume there is some USB bootloader on the board used to burn the new firmware to it. Can this bootloader be used to retrieve existing firmware from the board? I want to try to upgrade the board but wanna have current firmware if something goes wrong and it is impractical attm for me to connect the stlink2 or j-link to the board under the printer to retrieve it that way so if I can do it somehow from the shell Iād love it
Second question - any way to extract data from the HEX/BIN/ELF once I fetch it from the board in order to populate the config for the new firmware? Dunno if config is stored in prom for that reason or noone bothered to do that
Personally, I do not think it is needed at all but you go for the STM32CubeProgrammer which should read the flash also over USB without the need for a STlink.
Also I do not understand what you want to achieve here. There is nothing saved in the flash and all it takes are the simple settings during make menuconfig
I like to make backup of the original firmware⦠99.9% it will never be needed but⦠in some case can save some time and with weird $@^#$^& Iām experiencing latelyā¦
as for config, dunno I think āgpio pins to set at mcu startupā might be safety related / useful info ⦠but looking how default config for klipper looks like for this machine I doubt thereās anything there
FYI, if Klipper is running on the board, it is usually possible to use the scripts/dump_mcu.py tool to extract the flash. This is a low-level tool though and has limited documentation.