Documentation
Sketch / skeleton. Fill the sections below with real content as features stabilise; each section has a stable anchor so the navigation in the sidebar (and external links) won't drift.
Getting started
- Install Test0
- First launch — pick an EDIABAS implementation
- Detect a connected ECU
- Start your first log
Install Test0
Grab the installer from Downloads and run it.
The default install location is C:\Program Files\Test0
(machine-wide) or %LOCALAPPDATA%\Programs\Test0 (per-user).
If you also want the bundled ECU file collection, install
Test0 ECU files bundle afterwards — it auto-targets
<Test0>\Ecu.
First launch — EDIABAS implementation
Test0 ships with EdiabasLib as the default and works out of the box. If you have BMW INPA / Tool32 / ISTA installed, you can switch to BMW EDIABAS in Settings → EDIABAS.
Full details, including the Currently loaded verification panel and troubleshooting tips, are in the EDIABAS implementation guide.
Connect your adapter (COM port)
Plug in your OBD interface (K+DCAN, ENET, or a USB-to-serial cable) before launching Test0. On first run, Test0 scans the available serial ports and auto-selects the one that most looks like a real adapter, writing it into both its own settings and the EDIABAS config — so in the common case it just works with no manual setup.
If auto-detection picks the wrong port (or you later move the adapter to a
different USB socket and it gets a new COM number), open
Settings → EDIABAS and use Configure port…
to list every serial port and pick the right one. The dialog also shows a
note when it has auto-changed the port for you.
Detect a connected ECU
File → Detect ECU opens the detection dialog. Pick your
interface (the dialog reads ediabas.ini /
EdiabasLib.config for available interfaces), hit
Detect, and Test0 lists every ECU that responded.
Start your first log
From an ECU window:
- Pick a job from the list (e.g.
STATUS_LESEN). - Drag interesting result variables into the plot area.
- Hit the record button — Test0 polls the job at your chosen rate and
appends rows to a CSV in
<Desktop>\Test0_Logs(change the folder under Settings → Logging).
Setting up the AI chat panel
Test0 ships no API key — you bring your own. The chat panel works with any OpenAI-compatible provider (Claude, OpenAI, Groq, DeepSeek, Kimi, …) or a fully local Ollama install.
- Open the AI chat panel and pick a provider from the Provider dropdown.
- Paste your API key. It's saved to
testo.iniunder[ai] <provider>ApiKey— not in any config file that ships with the app. - For local Ollama, no key is needed — point the provider
at your local endpoint (default
http://localhost:11434).
To add a provider that isn't in the list, edit
config/ai_providers.json (each block becomes a Provider choice),
restart Test0, then pick it and paste your key.
Where Test0 keeps things
| What | Where |
|---|---|
| CSV data logs | <Desktop>\Test0_Logs (configurable in
Settings → Logging) |
| Settings | testo.ini, next to testo.exe |
| Application log (for bug reports) | testo.log, next to testo.exe |
| ECU description files | <Test0>\Ecu |
| Bundled EdiabasLib runtime | <Test0>\ediabaslib |
| BMW EDIABAS config (if using BMW's install) | C:\EDIABAS\Bin\ediabas.ini /
obd.ini |
Reference
| Topic | Where |
|---|---|
| EDIABAS implementation choice + troubleshooting | EDIABAS guide |
| MCP server overview (Model Context Protocol) | MCP overview |
| MCP client setup | MCP client setup |
Troubleshooting
- ECU dropdown is empty
- Most often: wrong EDIABAS implementation, or wrong ECU folder. See the EDIABAS troubleshooting section.
- "COM port in use by another program"
- Close any other diagnostic software holding the port (INPA, Tool32, a serial terminal, ISTA). Only one program can own a serial port at a time.
- Worked before, now can't connect after re-plugging the adapter
- USB-to-serial adapters can get a new
COMnumber when moved to a different socket. Test0 re-detects automatically on most launches; if not, set it manually in Settings → EDIABAS → Configure port…. - App won't start / missing Qt6 DLL
- The installer should bundle every Qt dependency. If you're running
a manual build, run
windeployqt testo.exein the build directory. - BMW EDIABAS loads but jobs time out
- Usually a missing helper (
api64.exe,ebas32.dll) inC:\EDIABAS\Bin. Reinstall BMW's tools to restore them. - Reporting a bug
- Grab
testo.logfrom next totesto.exeand attach it — it records ECU detection, port scanning, and EDIABAS activity, which is usually enough to pin down the problem.