DAPLink
DAPLink is an open-source interface firmware project that enables programming and debugging of applications on Arm Cortex CPUs. It runs on a secondary MCU connected to the SWD or JTAG port of the target application MCU, a configuration common on most development boards. Enumerating as a USB composite device, DAPLink creates a bridge between the development computer and the CPU debug access port. Key features include MSC drag-and-drop flash programming, CDC virtual COM port for log, trace, and terminal emulation, CMSIS-DAPv2 WinUSB for driver-less vendor-specific bulk debug, CMSIS-DAPv1 HID debug channel, and WebUSB CMSIS-DAP HID support. DAPLink is compatible with numerous ARM microcontroller-based Hardware Interface Circuits from vendors including Maxim Integrated, Nuvoton, NXP, Segger, and STMicroelectronics. These can be standalone debuggers or integrated into development kits. Many kits ship with DAPLink pre-installed or support running it as firmware. The project supersedes the older mbed CMSIS-DAP inter