Willy-JL 2ea37d003c Reorganize GPIO apps in subfolders 1 jaar geleden
..
.catalog 27d4d8c1d8 Fix merge 2 jaren geleden
gui 27d4d8c1d8 Fix merge 2 jaren geleden
icons 27d4d8c1d8 Fix merge 2 jaren geleden
lib cba196ae84 Add dap_link from https://github.com/xMasterX/all-the-plugins 2 jaren geleden
usb 55abecde15 uArT rEfAcToRiNg!1!! (jk its better now) 2 jaren geleden
.gitsubtree ff24807dc8 Fix remote fetch order 1 jaar geleden
README.md cba196ae84 Add dap_link from https://github.com/xMasterX/all-the-plugins 2 jaren geleden
application.fam 2ea37d003c Reorganize GPIO apps in subfolders 1 jaar geleden
dap_config.h cba196ae84 Add dap_link from https://github.com/xMasterX/all-the-plugins 2 jaren geleden
dap_link.c c3547182b2 Fix UART deinit issues and crashes 1 jaar geleden
dap_link.h cba196ae84 Add dap_link from https://github.com/xMasterX/all-the-plugins 2 jaren geleden
dap_link.png cba196ae84 Add dap_link from https://github.com/xMasterX/all-the-plugins 2 jaren geleden

README.md

Flipper Zero as CMSIS DAP/DAP Link

Flipper Zero as a Free-DAP based SWD\JTAG debugger. Free-DAP is a free and open source firmware implementation of the CMSIS-DAP debugger.

Protocols

SWD, JTAG , CMSIS-DAP v1 (18 KiB/s), CMSIS-DAP v2 (46 KiB/s), VCP (USB-UART).

WinUSB for driverless installation for Windows 8 and above.

Usage

VSCode + Cortex-Debug

Set "device": "cmsis-dap"

BluePill configuration example ```json { "name": "Attach (DAP)", "cwd": "${workspaceFolder}", "executable": "./build/firmware.elf", "request": "attach", "type": "cortex-debug", "servertype": "openocd", "device": "cmsis-dap", "configFiles": [ "interface/cmsis-dap.cfg", "target/stm32f1x.cfg", ], }, ```
Flipper Zero configuration example ```json { "name": "Attach (DAP)", "cwd": "${workspaceFolder}", "executable": "./build/latest/firmware.elf", "request": "attach", "type": "cortex-debug", "servertype": "openocd", "device": "cmsis-dap", "svdFile": "./debug/STM32WB55_CM4.svd", "rtos": "FreeRTOS", "configFiles": [ "interface/cmsis-dap.cfg", "./debug/stm32wbx.cfg", ], "postAttachCommands": [ "source debug/flipperapps.py", ], }, ```

OpenOCD

Use interface/cmsis-dap.cfg. You will need OpenOCD v0.11.0.

Additional commands:

  • cmsis_dap_backend hid for CMSIS-DAP v1 protocol.
  • cmsis_dap_backend usb_bulk for CMSIS-DAP v2 protocol.
  • cmsis_dap_serial DAP_Oyevoxo use DAP-Link running on Flipper named Oyevoxo.
  • cmsis-dap cmd 81 - reboot connected DAP-Link.
Flash BluePill ``` openocd -f interface/cmsis-dap.cfg -f target/stm32f1x.cfg -c init -c "program build/firmware.bin reset exit 0x8000000" ```
Flash Flipper Zero using DAP v2 protocol ``` openocd -f interface/cmsis-dap.cfg -c "cmsis_dap_backend usb_bulk" -f debug/stm32wbx.cfg -c init -c "program build/latest/firmware.bin reset exit 0x8000000" ```
Reboot connected DAP-Link on Flipper named Oyevoxo ``` openocd -f interface/cmsis-dap.cfg -c "cmsis_dap_serial DAP_Oyevoxo" -c "transport select swd" -c "adapter speed 4000000" -c init -c "cmsis-dap cmd 81" -c "exit" ```

PlatformIO

Use debug_tool = cmsis-dap and upload_protocol = cmsis-dap. Documentation. Remember that Windows 8 and above do not require drivers.

BluePill platformio.ini example ``` [env:bluepill_f103c8] platform = ststm32 board = bluepill_f103c8 debug_tool = cmsis-dap upload_protocol = cmsis-dap ```