Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,8 @@ src/
│ ├── romraider.rs # RomRaider CSV parser
│ ├── speeduino.rs # Speeduino/rusEFI MLG binary parser
│ ├── aim.rs # AiM XRK/DRK binary parser
│ └── link.rs # Link ECU LLG binary parser
│ ├── link.rs # Link ECU LLG binary parser
│ └── woolich.rs # Woolich Racing Tuned CSV parser
└── ui/
├── mod.rs # UI module exports
├── sidebar.rs # File list and view options panel
Expand Down Expand Up @@ -199,6 +200,7 @@ The parser system uses a trait-based design for supporting multiple ECU formats:
- **`parsers/speeduino.rs`** - Speeduino/rusEFI MLG binary format parser
- **`parsers/aim.rs`** - AiM XRK/DRK binary format parser for motorsport data loggers
- **`parsers/link.rs`** - Link ECU LLG binary format parser
- **`parsers/woolich.rs`** - Woolich Racing Tuned CSV parser (HH:MM:SS.mmm timestamps, boolean channels)

**Supported ECU Systems:**

Expand All @@ -210,6 +212,7 @@ The parser system uses a trait-based design for supporting multiple ECU formats:
- AiM (XRK/DRK binary)
- Link ECU (LLG binary)
- Motorsport Electronics ME221/ME442 (ME Tuner CSV export)
- Woolich Racing Tuned (WRT CSV export — motorcycle ECUs)

To add a new ECU format:

Expand Down Expand Up @@ -291,4 +294,5 @@ Example log files are in `exampleLogs/` organized by ECU type:
- `exampleLogs/haltech/` - Haltech NSP CSV exports
- `exampleLogs/aim/` - AiM XRK/DRK files
- `exampleLogs/link/` - Link ECU LLG files
- `exampleLogs/woolich/` - Woolich Racing Tuned CSV exports
- Additional formats for parser testing
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "ultralog"
version = "2.9.0"
version = "2.10.0"
edition = "2021"
description = "A high-performance ECU log viewer written in Rust"
authors = ["Cole Gentry"]
Expand Down
14 changes: 12 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ A high-performance, cross-platform ECU log viewer written in Rust.

![CI](https://github.com/ClassicMiniDIY/UltraLog/actions/workflows/ci.yml/badge.svg)
![License](https://img.shields.io/badge/license-AGPL--3.0-blue.svg)
![Version](https://img.shields.io/badge/version-2.9.0-green.svg)
![Version](https://img.shields.io/badge/version-2.10.0-green.svg)

---

Expand Down Expand Up @@ -151,6 +151,13 @@ Configurable units for 8 measurement categories:
- **Features:** Automatic channel and unit detection from BlueDriver live data exports
- **Supported data:** All OBD-II PIDs logged by BlueDriver including RPM, speed, coolant temp, MAF, fuel trims, O2 sensors, and more

### Woolich Racing Tuned - Full Support

- **File type:** CSV exports from Woolich Racing Tuned (WRT) flash-tuning software
- **Features:** `HH:MM:SS.mmm` timestamp normalization, boolean channel parsing (`Clutch In` True/False), unit inference, trailing-comma handling
- **Supported devices:** Yamaha, Kawasaki, Suzuki, Honda, and BMW sportbike ECUs flashed/logged via the WRT datalogger
- **Supported data:** RPM, TPS, IAP (intake air pressure), AFR, Gear, Clutch In, Coolant Temp, IAT, and all logged channels

### Coming Soon
- AEM
- MaxxECU
Expand Down Expand Up @@ -284,6 +291,7 @@ UltraLog automatically detects the ECU format based on file contents:
- **AiM:** Identified by `<hCNF` tag in XRK/DRK files
- **Link ECU:** Identified by `lf3` magic bytes in LLG files
- **Emerald:** Identified by `.lg1` and `.lg2` file pair
- **Woolich Racing Tuned:** Identified by comma-delimited CSV starting with a `Log Time` column of `HH:MM:SS.mmm` timestamps

**Loading multiple files:**
- Each file opens in its own tab
Expand Down Expand Up @@ -581,7 +589,8 @@ UltraLog/
│ │ ├── aim.rs # AiM XRK/DRK parser
│ │ ├── link.rs # Link ECU LLG parser
│ │ ├── emerald.rs # Emerald ECU parser
│ │ └── bluedriver.rs # BlueDriver OBD-II parser
│ │ ├── bluedriver.rs # BlueDriver OBD-II parser
│ │ └── woolich.rs # Woolich Racing Tuned CSV parser
│ ├── analysis/ # Analysis tools
│ │ ├── filters.rs # Signal processing filters
│ │ ├── statistics.rs # Statistical analysis
Expand Down Expand Up @@ -666,6 +675,7 @@ The following trademarks are the property of their respective owners:
- **Subaru** is a trademark of Subaru Corporation
- **MegaSquirt** is a trademark of Bowling and Grippo
- **BlueDriver** is a trademark of Lemur Vehicle Monitors
- **Woolich Racing** and **Woolich Racing Tuned** are trademarks of Woolich Racing
- **AEM** is a trademark of AEM Performance Electronics
- **MoTeC** is a trademark of MoTeC Pty Ltd
- **MaxxECU** is a trademark of MaxxECU
Expand Down
Loading
Loading