Arm Mbed DAPLink is an open-source software project that enables programming and debugging application software on running on Arm Cortex CPUs. Commonly referred to as interface firmware, DAPLink runs on a secondary MCU that is attached to the SWD or JTAG port of the application MCU. This configuration is found on nearly all development boards. Enumerating as a USB composite device, it creates a bridge between your development computer and the CPU debug access port. DAPLink enables developers with:
- MSC - drag-n-drop programming flash memory
- CDC - virtual com port for log, trace and terminal emulation
- HID - CMSIS-DAP compliant debug channel
- WEBUSB HID - CMSIS-DAP compliant debug channel
More features are planned and will show up gradually over time. The project is constantly under heavy development by Arm, its partners, numerous hardware vendors and the open-source community around the world. DAPLink has superseded the mbed CMSIS-DAP interface firmware project. You are free to use and contribute. Enjoy!
For more detailed usability information see the users guide.
There are many ARM microcontroller-based Hardware Interface Circuits (HICs) that DAPLink interface firmware runs on. These can be found as standalone boards (debugger) or as part of a development kit. Some branded circuits that are known to be IO compatible are:
- NXP OpenSDA based on K20, K22 and KL26
- NXP LPC-Link2 based on LPC11U35 or LPC4322
- Segger J-Link OB based on Atmel SAM3U
- Maxim Epsilon based on MAX32550 - coming soon
There are many board builds (board = HIC + target combination) created from this repository. Quarterly releases will contain new features and bugfixes. Standalone bugfixes are released once reported, verified and fixed. Both quarterly and bugfix releases will result in the build number being incremented. Many development kits and products ship with DAPLink interface firmware or are capable of running DAPLink firmware. The current release builds and instructions for updating DAPLink interface firmware is hosted on the DAPLink release site. Release notes and previous release builds can be found under GitHub releases.
Look for an interesting feature or defect under issues or start a new thread to engage with the developers and maintainers. You must sign the contributor agreement before any contributions can be accepted.
Information for setting up a development environment, running the tests or creating a release build can be found in the developers guide.