Generate UDS Specification
demo-repo/;
Load redundant-uC sample bundle stages a
1+1 primary/secondary pair (sample1_* + sample2_*) under
demo-repo/primary/ and
demo-repo/secondary/. Both bundles attach the
full Compliance Matrix (Compliance Matrix) CSV set so the
repo → Compliance Matrix → tex → pdf flow can be exercised without any
local files.
\cite{} references in LaTeX.
--gen-arxml-from-csv flag.
.cls
Parsed Summary
Chat with the parsed UDS Spec
Requires pip install udsdoc[llm] on the server.
For Ollama, pick Ollama (local) — Base URL, model, and API key
are filled in automatically. For other local servers (llama.cpp / vLLM /
LM Studio), pick OpenAI-compatible and set the Base URL manually
— your spec JSON never leaves your machine.
The default Anthropic path uses prompt caching so repeat questions are cheap.
Your API key, when supplied here, lives only in this browser tab.
UDS Workbench
Interactive tools for the parsed spec: simulate UDS requests, replay CAN traces, and export ODX/PDX for CANalyzer/CANoe. Hardware-in-the-loop testing against a real ECU is available in the collapsible section at the bottom.
Type any UDS request in hex. The server replies with the response the parsed configuration would produce (positive stub or the ISO 14229-1 NRC implied by the DcmDsd/DcmDspDid/DcmDspRoutine settings). Useful for sanity-checking the spec without an ECU on the bus.
Upload a Vector CANalyzer / CANoe trace. The server reassembles ISO-TP frames, decodes each UDS request/response pair and cross-checks them against the parsed spec (plus the Compliance Matrix verdict when present) — flagging e.g. a positive response on a service the OEM marked Rejected.
Generate an ODX 2.2 PDX bundle from the loaded repo session. Load it in CANoe via Diagnostic / ISO TP → Configuration → ODX/PDX to get the same Trace-window UDS decoding that CDD provides — no proprietary CDD file required.
🔌 Run on real ECU hardware (requires CAN interface)
Auto-generate a UDS test suite from the parsed spec and execute it
against the target ECU over CAN / ISO-TP. Requires
pip install udsdoc[ecu-test] and a physical CAN dongle.
For offline batch use:
udsdoc --ecu-test --ecu-interface vector --ecu-coverage input.arxml
Leave empty to reuse the parsed ARXML from the active repo session.
About udsdoc
udsdoc converts AUTOSAR DCM / CanTp / DEM ARXML configuration files into professional UDS (ISO 14229) specification documents. It supports LaTeX, HTML, and PDF output formats.
Version: —
- Parse AUTOSAR DCM ARXML — sessions, security levels, services, DIDs, routines, DTCs
- Optional DEM ARXML for full DTC event configuration
- Output formats: LaTeX (ZIP), HTML (ZIP), PDF
- Custom LaTeX class file (.cls) support
- DID C code scanning — extract global variable references from DID read/write functions
- RID C code scanning — extract global variable references from RID start/stop/result functions
- Parse & Preview — inspect specification before generating
- Works entirely in-browser — no data leaves your machine
Start the server with the CLI flag and access it in a browser:
udsdoc --serve
Optional web dependencies:
pip install udsdoc[web]