MCPcopy Create free account
hub / github.com/ciniml/rust-dap

github.com/ciniml/rust-dap @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
311 symbols 642 edges 19 files ⚖ Apache-2.0 17 documented · 5% updated 2d agov0.3.0 · 2026-08-25★ 11110 open issues

Browse by type

Functions 256 Types & classes 55
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

A CMSIS-DAP implementation in Rust

English 日本語

概要

デバッグボード

Arm用のデバッグ・アダプタのプロトコルおよびファームウェアの規格であるCMSIS-DAPのRust実装です。

正しいWCID (Windows Compatibility ID) を返すことにより、Windowsでドライバの手動インストールを行わずに使用できます。 また、一部のボードではプローブ自体がGDBサーバとして動作し、ホストにOpenOCD/pyOCD/probe-rsを入れずにGDBからUSB-CDC経由で直接接続できます。

対応ボード

現在対応しているボードは以下の通りです。 各ボードごとの実装およびビルド・使用方法は、 boards ディレクトリ以下に含まれています。

ボード名 対応機能 ディレクトリ
Seeeduino XIAO CMSIS-DAP ./boards/xiao_m0
XIAO RP2040 CMSIS-DAP, UART ./boards/xiao_rp2040
Raspberry Pi Pico CMSIS-DAP (SWD/JTAG), UART, GDBサーバ, RTT ./boards/rpi_pico
Raspberry Pi Pico 2 CMSIS-DAP (SWD/JTAG), UART ./boards/rpi_pico2
Dabao Board (Baochip-1x) GDB サーバ(USB 上の RSP)、RTT ./boards/dabao

ファームウェアの入手

各ボード向けのビルド済みファームウェア (UF2 / ELF) は GitHub Releases に添付しています。 ソースからビルドする場合は、各ボードのディレクトリで cargo build --release を実行します。指定できるfeatureは各ボードのREADMEを参照してください。

USBの識別情報

ファームウェアは VID:PID 6666:4444、manufacturer fugafuga.org として認識されます。

USBのシリアル番号(および DAP_Info のシリアル番号)にはボード固有のIDを使用しており、pico-sdk / debugprobe と同じ形式の16桁の大文字HEX (RP2040: QSPIフラッシュのunique ID、RP2350: OTPのchip ID) です。複数のプローブを probe-rs --probe 6666:4444:<SERIAL> のように区別できます。 以前のリリースでは raspberry-pi-pico-swd のような固定文字列だったため、これに依存したudevルールやプローブ指定を使っている場合は更新してください。

ライセンス

ライセンスは Apache-2.0 License に従います。詳しくは LICENSE ファイルを確認してください。

Extension points exported contracts — how you extend this code

browse all types & interfaces →

Core symbols most depended-on inside this repo

browse all functions →

Shape

Method 212
Function 44
Class 34
Interface 12
Enum 9

Languages

Rust100%

Modules by API surface

rust-dap/src/bitbang.rs81 symbols
rust-dap/src/cmsis_dap.rs75 symbols
rust-dap-rp2040/src/pio/swd.rs30 symbols
rust-dap-rp2040/src/pio/jtag.rs29 symbols
rust-dap/src/interface.rs22 symbols
rust-dap/src/cursor.rs11 symbols
rust-dap-rp2040/src/swdio_pin.rs11 symbols
boards/xiao_m0/src/swdio_pin.rs11 symbols
boards/xiao_rp2040/src/main.rs8 symbols
boards/rpi_pico/src/main.rs8 symbols
rust-dap-rp2040/src/util.rs7 symbols
rust-dap-rp2040/src/line_coding.rs7 symbols

For agents

$ claude mcp add rust-dap \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page