Unsupported file format
Only .hex, .bin, .elf, and .axf firmware files are supported.
FLASH_UNSUPPORTED_FORMAT
Symptoms
- The selected file is rejected before flashing starts.
- You picked a file your toolchain produced, but MCUHex refuses it.
Likely causes
- The file is not one of the supported formats: .hex (Intel HEX), .bin (raw binary), .elf / .axf (linked image with symbols).
- A build byproduct was selected by mistake (.map, .o, .a, archive or compressed file).
- A .bin without base-address context — raw binaries carry no address, so MCUHex needs the correct flash base to place them.
How to fix it
-
Pick a supported artifact
Use your final linked output: the .elf/.axf from the linker, or the .hex/.bin your post-build step produces.
-
Generate .hex from .elf if needed
Any ARM GCC toolchain can convert the linked ELF into Intel HEX.
arm-none-eabi-objcopy -O ihex firmware.elf firmware.hex -
Prefer .elf when monitoring
Flashing the same .elf you load for symbols keeps the firmware and symbol addresses guaranteed-consistent — one artifact, no mismatch.