ARM Build adds Build and Download submenus to folder context menus in the VS Code Explorer and Example Hub.
Both commands search below the selected folder for MDK/*.uvprojx. If multiple projects are found, ARM Build asks for confirmation and then processes every project sequentially using each fixed <project-name>_Debug target. MDK Debug uses UV4.exe -j0 -b for an incremental build. MDK Debug (Rebuild) uses UV4.exe -j0 -r to rebuild all target files, ensuring compiler warnings are reported consistently even when no source files changed since the previous run. Build logs reuse one ARM Build terminal, with error and warning diagnostics highlighted in red and yellow and clean result counts in green. Each HEX file is reported from its project's MDK/output/debug directory. A batch summary is shown only when multiple projects are built.
Download > MDK Debug Hex is available on physical example folders (not Example Hub aggregate nodes). It requires exactly one MDK/output/debug/*.hex file below the selected folder. The pyOCD target is extracted from the board folder immediately below projects (for example, ev_hc32f460_lqfp100_v1 becomes HC32F460). ARM Build runs pyocd flash --target <CHIP> --erase chip <HEX> in a separate ARM Download terminal. Missing or multiple HEX files are reported as errors.
Development
Open this extension folder in VS Code and press F5 to start an Extension Development Host.
Settings
armBuild.mdkUv4Path: optional path to UV4.exe or the MDK installation directory. When empty, ARM Build checks common Keil locations, environment variables, and PATH.