For automotive diagnostics engineers
Know exactly what the ECU said.
CAN Data Extract records, decodes, simulates and shares diagnostic traffic on the CAN bus. UDS, KWP2000 and OBD over ISO-TP, decoded down to the byte, from a live car or a trace file.
| Time | If | ID | DLC | Direction | Payload | Decoded |
|---|---|---|---|---|---|---|
| 09:40:26.489 | can0 | 7E0 | 8 | → | 02 10 03 AA AA AA AA AA | DiagnosticSessionControl extended |
| 09:40:26.586 | can0 | 7E8 | 8 | ← | 06 50 03 00 32 01 F4 AA | positive P2* 5000 ms |
| 09:40:26.612 | can0 | 7E0 | 8 | → | 03 22 F1 90 AA AA AA AA | ReadDataByIdentifier 0xF190 VIN |
| 09:40:26.640 | can0 | 7E8 | 8 | ← | 10 14 62 F1 90 54 4D 42 | ISO-TP first frame, 20 bytes |
| 09:40:26.641 | can0 | 7E0 | 8 | → | 30 00 00 AA AA AA AA AA | flow control, continue |
| 09:40:26.655 | can0 | 7E8 | 8 | ← | 21 4A 4E 30 4E 5A 37 52 | consecutive 1 |
| 09:40:27.102 | can0 | 7E8 | 8 | ← | 03 7F 10 78 AA AA AA AA | NRC 0x78 response pending |
| 09:40:27.231 | can0 | 7E0 | 8 | → | 03 19 02 08 AA AA AA AA | ReadDTCInformation by status mask |
| 09:40:27.260 | can0 | 7E8 | 8 | ← | 07 59 02 FF 01 71 00 08 | positive 1 DTC, P0171 confirmed |
01 F4) highlighted by the byte decoder.What it does
From raw frames to answers you can check
Every decoded value keeps its raw bytes next to it, so you can check the arithmetic yourself.
Record
Capture from a USB CAN adapter on a real car, or import the trace files you already have. The desktop app scans the car for its VIN, ECUs, data identifiers and fault codes.
SocketCAN · PCAN · candump · PCAN TRC · VCDS · ODIS · MF4
Decode
A virtualised frame table that keeps up with the bus, ISO-TP stream reassembly, and a byte decoder that highlights which bytes mean what.
UDS (ISO 14229) · KWP2000 · OBD · ISO-TP · CAN FD
Simulate
Turn a recorded session into an ECU simulator config and replay the car on the bench, so you can test a diagnostic tool without the vehicle.
One or many ECUs · YAML config · built from traces
Share
Keep traces in collections, write CEL transforms that pull signals out of payloads, and share both with your team. Sign in with Google or Microsoft Entra ID.
Team namespaces · collections · saved transforms
Two ways to run it
Online app and desktop app
The same tool in two places. Start in the browser; install the desktop app when you need the hardware.
Screenshot placeholder · Online app
Live monitor
The frame table during a diagnostic session: several hundred frames, one response row selected, the inspector open beside it.
public/screenshots/monitor-light.png · monitor-dark.png
Online app
app.candataextract.com
Open traces, decode and transform them, and work in your team's collections from any browser. Nothing to install.
Log inScreenshot placeholder · Desktop app
Record
The desktop app capturing live: the interface selector set to a real adapter (can0 or PCAN_USBBUS1) at 500 kbit/s, the live indicator on, and frames arriving.
public/screenshots/record-light.png · record-dark.png
Desktop app
Windows · macOS · Linux
Everything in the online app, plus your own CAN hardware: record from a car, scan its ECUs, simulate ECUs on the bench, and stream captures to the cloud.
DownloadWritten the way you write it
Request before response, hex on the byte
→ 7E0#02 10 03
← 7E8#06 50 03 00 32 01 F4
- Service
- DiagnosticSessionControl (0x10), extended session
- Response
- positive, 50 = 10 + 40
- P2
- 00 32 = 50 ms
- P2*
- 01 F4 = 500 × 10 ms = 5000 ms
Supported
Protocols, formats and adapters
- Protocols
- UDS · KWP2000 · OBD · ISO-TP · CAN FD · 11-bit and 29-bit IDs
- Trace formats
- candump log · PCAN TRC · VCDS · ODIS · MF4
- Adapters
- SocketCAN on Linux · PCAN on macOS and Windows
Bring it to your team.
Free for public work. Pro and Enterprise keep your transforms and traces private, and Enterprise runs on your own servers.