> For the complete documentation index, see [llms.txt](https://docs.intrepidcs.com/vspy-3-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.intrepidcs.com/vspy-3-documentation/3.9.20/application-notes/application-note-xcp-driver-example/application-note-xcp-driver-example-part-1-process-overview.md).

# Application Note: XCP Driver Example - Part 1: Process Overview

### Process Overview

In creating your first application for XCP there are generally several steps that occur. These steps are given below:

1. Implement an XCP driver into your ECU code.
   1. Intrepid provides an example XCP driver in the files SpyCCode.c and SpyCCode.h contained in the Intrepid\_XCP\_Driver.zip file.
   2. The Microsoft Visual Studio Project (CXCPSim.vsproj), contained in the Intrepid\_XCP\_Driver.zip file can be used with Vehicle Spy's C Code interface to allow you to test, understand and modify the XCP driver implementation.
2. \[optional step] Using the compiler and linker for your ECU, generate a supported debugger format to be read into the Intrepid ASAP2 editor. Supported formats include:
   1. IEEE695
   2. ELF / DWARF
   3. MAP file
   4. COFF format for TI Processor\\
3. Load the generated debugger file into the Intrepid ASAP2 editor / creator. If you do not have a debugger file, you can enter all information into the ASAP2 editor / creator manually.
4. Enter information needed for the ASAP2 specification including:
   1. CRO
   2. DTO
   3. Scaling for symbols
   4. Association of symbols to one another
   5. DAQ table event information.
5. Generate an ASAP2 file
6. Load the ASAP2 file into Vehicle Spy
7. Use Vehicle Spy to connect to your ECU and perform the real-time memory monitoring and editing.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.intrepidcs.com/vspy-3-documentation/3.9.20/application-notes/application-note-xcp-driver-example/application-note-xcp-driver-example-part-1-process-overview.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
