Repository navigation
v2.13.1 — RaceChrono CSV v3 imports
Highlights
UltraLog now opens RaceChrono track sessions. Export a session from RaceChrono or RaceChrono Pro as CSV v3 and drop it straight into UltraLog — your GPS trace, phone sensors, and OBD/CAN channels land on one synchronized timeline, with lap numbers and the GPS Track Map working out of the box. Analyze your track days on a big screen instead of a phone.
This one came straight from a user request: a RaceChrono user asked whether UltraLog could read their lap-timing exports and shared a full 2.5-hour, 125 MB session from a track day to test against. That real session — 515,000 rows, 34 channels, six recording fragments — now parses in under half a second. Thank you for the data; real files are what make format support solid.
New: RaceChrono CSV v3 imports
- Everything on one timeline. RaceChrono merges GPS (position, speed, bearing, altitude, fix quality), phone sensors (accelerometer, gyroscope, magnetometer, lean angle), and any OBD-II/CAN channels you logged (RPM, oil temperature, throttle, …) into one table — UltraLog reads it all.
- The Track Map just works. Latitude/longitude arrive in decimal degrees under their standard names, so the v2.13.0 GPS Track Map appears automatically: the circuit drawn beside your chart, laps detected, any channel painted onto the racing line.
- Lap and fragment aware. RaceChrono sessions that were paused and resumed at the track record multiple fragments, and the in-file elapsed time resets at each one. UltraLog builds its time axis from the GPS timestamps instead, so the whole day stays in order. Lap numbers come along as a channel.
- Duplicate channels stay distinguishable. RaceChrono logs some channels once per source — you'll see
speed (gps)next tospeed (calc)so you can compare the GPS speed against RaceChrono's calculated one. - Resilient parsing. Sessions survive an Excel/Numbers/Sheets round-trip (trailing-comma padding is handled), a malformed row is skipped rather than failing the file, and temperatures exported as
.Cdisplay as °C. - Clear guidance on the wrong export. Only CSV v3 is supported — pick it in RaceChrono's export dialog. Loading a CSV v1/v2 export shows a clear "re-export as CSV v3" message instead of a confusing failure, and
.vbo/.rczare not supported.
Improved: unit preferences now cover more source units
Channels logged in °C, °F, m/s, or meters now honor your display unit preferences — previously they were shown as logged regardless of your settings. This applies to RaceChrono's GPS speed (m/s) and altitude (m), and to the °C temperatures written by the AiM, ECUMaster, Emerald, MHD, RomRaider, and Woolich parsers. Meters follow the short-distance convention: the metric preference keeps meters, the miles preference shows feet — so GPS altitude never displays as 0.003 mi.
Documentation catch-up
- The Supported ECU Formats wiki gained full pages for RaceChrono plus the five formats that shipped without one: MHD Tuning, BlueDriver, Motorsport Electronics, DynamicEFI, and Locomotive — and its auto-detection list now covers all 15 formats.
- README and ultralog.co now list the complete format roster.
Under the hood
- Fixed a fixture path casing bug that had been silently skipping the RomRaider and OBDLink example-file tests on Linux CI — they run (and pass) again.
- A RaceChrono file missing its
Formatmetadata line now reports exactly that, instead of an unsupported-version error.
Installation
macOS
- Download the appropriate
.dmgfile for your Mac:- Intel Mac:
ultralog-macos-intel.dmg - Apple Silicon (M1/M2/M3/M4):
ultralog-macos-arm64.dmg
- Intel Mac:
- Open the DMG and drag UltraLog to your Applications folder
- Launch UltraLog from Applications. The app is signed and notarized by Apple, so it opens without a Gatekeeper warning.
Windows
- Download
ultralog-windows.zip - Extract the zip file
- Run
ultralog-windows.exe
Linux
- Download
ultralog-linux.tar.gz - Extract:
tar -xzf ultralog-linux.tar.gz - Run:
./ultralog-linux
What's Changed
🔄 Other Changes
- Release v2.13.1 — RaceChrono CSV v3 support by @SomethingNew71 in #85
Full Changelog: v2.13.0...v2.13.1