Telemetry
Uploading Data
TrackOut supports telemetry files from popular motorsport data loggers. All parsing happens in your browser, so your data stays private until you choose to save it.
Telemetry upload vs. Scan from device
This page covers raw telemetry file uploads such as .xrk, .xrz, and .vbo. The Scan from device button in the Track Days session form is a different workflow: it uses AI OCR on a screenshot or photo of a timing screen, rather than parsing a native telemetry file.
Supported file formats
| Format | Source | Notes |
|---|---|---|
.xrk | AIM RaceStudio 3 | Standard AIM session files, including expanded channel data |
.xrz | AIM RaceStudio 3 | Compressed AIM files, automatically decompressed |
.vbo | Racelogic VBOX, RaceBox app export | VBOX data logger files, including GPS-only sessions, and sessions exported as VBO from the RaceBox app or website. When the file includes Racelogic start/finish gates, lap times come from where the car crosses those gates, so they match the logger, including laps under 30 seconds on kart circuits. An unfinished last lap and laps with a pit stop or an off-track excursion are listed too, marked invalid, so they never count as your best lap. A VBOX Video logger also names the camera files recorded next to the .vbo -- choose them in the cockpit's Camera panel |
.cir | Racelogic circuit file | A VBO-format file under another name, read the same way as .vbo |
.racebox | RaceBox Mini, Mini S, Micro | Live captures and stored recordings saved from TrackOut |
.csv | RaceChrono, Harry's LapTimer, TrackAddict | GPS telemetry CSV exports with time, latitude, longitude, and speed |
Connect a RaceBox
In Analysis, Track Days, or Local lap analysis, choose Connect RaceBox in Chrome on macOS, allow Bluetooth access, and choose your device. Close the RaceBox app first so it releases the connection. Bluetooth requires HTTPS and a browser with Web Bluetooth support; other browsers can still upload saved .racebox capture files. Local lap analysis records raw telemetry -- Open Track Mode stays on signed-in Analysis. If RaceBox cannot be prepared, check your connection and choose Reload page. You may need to reopen any recording you were reviewing.
Use Start recording and Stop recording to capture live data in your browser. Keep the tab open and the device nearby. The GPS status shows when a position fix is available. TrackOut labels the device's speed as Ground speed, 3D speed, or Speed mode unknown, and a live recording keeps the mode it started with. Expand Connection details for the model, firmware, and serial. In signed-in Analysis, you can also open Track Mode, choose an exact nearby layout with timing data, and use the live speed, G, lap, best, and delta dashboard. Choose Readings only when you want a capture without lap timing.
For a Mini S or Micro, TrackOut checks stored recordings automatically and keeps a refresh control available. If memory is locked, enter the security code configured in the RaceBox app. Stop standalone recording before downloading stored data. Downloads leave the device's recordings intact. The original Mini supports live capture only.
Completing a stored-memory download automatically saves one .racebox backup. Choose Analyze capture to open that same capture without downloading it a second time. Keep the backup to return to the other recordings after opening one in analysis. If the device memory contains several recordings, select one to analyze. Choose Save capture file to keep a .racebox backup. A disconnected or stalled transfer keeps the data received so far, marked as interrupted. Interrupted captures cannot be analyzed; Save capture file exports a .racebox.partial recovery file that cannot be uploaded as a completed recording. Save it before clearing the capture and retrying. Closing the tab discards captures you have not saved.
RaceBox provides GPS, speed, acceleration, and rotation data, but it does not supply circuit gates or lap results. TrackOut compares a recording's GPS route with nearby layouts that have a surveyed start/finish marker. A clear match is timed automatically; if more than one layout fits, TrackOut asks you to choose the layout or keep the recording untimed. If no layout fits, the recording stays an untimed trace and does not establish a best lap. Calculated laps are labelled as TrackOut-calculated. Recordings without GPS fixes show sensor plots with an elapsed-time scrubber so you can inspect readings throughout the capture. Acceleration axes follow the device's mounting orientation.
VBOX export limits
VBOX .vbo uploads support files up to 50 MiB, 500,000 data rows, 256 columns, and 4 million header and data cells combined. Individual lines can be up to 64 KiB. The file can contain at most 504,096 lines total and 4,096 nonempty metadata lines, including section markers. If an export exceeds a limit, export a shorter recording or fewer channels and upload it again.
VBOX overnight and sparse files
A clock that runs past midnight, jumps backward by a second or more, or records rows with fewer than four satellites is read as-is -- those rows are skipped for lap timing rather than glued onto the previous stretch. A file whose every timestamp is zero opens as an untimed trace unless a sample rate is stated. A missing or unreadable clock follows the same rule. A few readable timestamps within a damaged clock are only used if they establish the recording’s sample rate. Duplicate column names stay separate (for example two Engine_RPM channels), and files saved with Latin-1 symbols such as a degree sign import instead of failing. Re-upload the original file if an older import looked glued, jumped, ran slow, or dropped a CAN channel.
CSV column requirements
TrackOut reads the header row and matches time and speed names without regard to case. Units in parentheses or brackets describe the values: Speed (km/h) and SPEED[km/h] are both recognized, while Time (ms) means milliseconds. Exports from RaceChrono, Harry's LapTimer, and TrackAddict can import without editing their supported headers.
| Column | Required | Accepted header names |
|---|---|---|
| Time | Yes | Time, Timestamp, or UTC Time, optionally followed by a supported numeric unit, such as Time (ms). Values can be elapsed time, a Unix epoch clock, or an HH:MM:SS clock with optional fractional seconds. Time (HH:MM:SS) and Time [HH:MM:SS] are also accepted. When both elapsed and UTC columns exist, the elapsed one is used. An epoch clock between 2000 and 2100 supplies the recording date; a wall-clock column carries none |
| Latitude | For the track map | Any header containing Latitude |
| Longitude | For the track map | Any header containing Longitude |
| Lap number | No | Lap, Lap #, Lap Number, LAPINDEX, Lap Index, Lap_Number, or Lap_Index |
| Speed | No | Any recognized speed name; a km/h, mph, kn, or m/s unit in the header is converted for you |
Numeric time values without a unit are interpreted as seconds. Label a millisecond export Time (ms) or Time[ms]; leaving it as Time changes its meaning. Supported numeric time units are:
| Header unit | Meaning |
|---|---|
s | Seconds (also the default when no unit is supplied) |
ms | Milliseconds |
us, µs, or μs | Microseconds |
ns | Nanoseconds |
min | Minutes |
h or hr | Hours |
For example, the timestamps 0, 100, and 200 under Time (ms) span 0.2 seconds. Formatted clocks such as 09:15:32.500 are read directly as clock fields, without applying a numeric scale again. An unsupported explicit numeric time unit is rejected; convert it to a supported unit before uploading.
Other declared units, such as Fahrenheit or bar, stay with their recorded channel values. Repeated channel names remain separate recorded sources rather than overwriting one another. Use Map channels to assign a recorded source to an analysis role.
A file without a lap column still imports as an untimed trace of the whole recording: it has no lap time and does not establish a best lap. When a file with a lap column stopped logging mid-lap, that trailing partial lap is marked invalid so it does not distort your best lap or consistency numbers.
CSV uploads support files up to 50 MiB, 256 columns, 64 KiB per row, and 4 million cells in the header and data rows combined. The file can contain at most 1,000,000 lines after the header and 1,000,050 lines total, including blank and metadata lines. If an export exceeds these limits, split it into shorter recordings or export fewer channels and upload again.
AIM XRK/XRZ import accuracy
Older AIM record formats support up to 500,000 telemetry records containing 4,000,000 sample values, and up to 4,000,000 decoded channel samples across the recording. A recording that exceeds a limit is rejected rather than opening with missing later data. Split longer recordings into shorter exports before uploading them.
AIM wire-format imports support up to 4,000,000 unique channel samples across direct and deferred decoding, and 4,000,000 expansion-device samples per file. If a recording exceeds either limit, export a shorter session or fewer channels and try again.
For AIM files, TrackOut reads GPS position, lap timing, CAN channels, and logger metadata when those records are present. The GPS samples are decoded into accurate map coordinates, so the driving line and track-map overlay are placed correctly instead of appearing offset or distorted. A new import also reads sample types, units, and IMU axes the way RaceStudio does, and maps one GPS receiver instead of mixing an internal and an external one into one line. When the recording has about a minute of GPS-backed driving with enough braking and cornering, TrackOut measures the logger's mounting from acceleration versus GPS and rotates G and yaw into the car -- even when the logger sat pitched or on its side. If it cannot measure the mounting, those logger IMU channels stay as _Raw instead of being rotated. Channels that share a logger label stay separate, each with its own samples and units -- they do not overwrite each other.
If a download was damaged in transfer -- dropped chunks or a GPS frame that does not check out -- TrackOut skips those frames and keeps reading, so later laps still map instead of vanishing. Already-saved sessions keep the parse they were imported with -- dropping the same file again opens that session instead of replacing it. Delete the saved session first, then upload the original file, if an older import looked sparse, jumped off the circuit, sat G too low, swapped long and lateral, or showed the wrong units.
TrackOut also handles compressed .xrz files, lap-number differences between loggers, out-lap handling (including AIM sessions whose only timed lap is labeled as an out-lap), and common CAN channels such as gear when the logger records them.
If you want to import a screenshot from a timer or phone app instead of a raw file, go to Track Days and use Scan from device while adding or editing a session.
How to upload
- Navigate to Analysis in the sidebar, or open My track days for a day-specific shortcut
- Click Upload telemetry, drag and drop a file onto Track Days, or pick Upload telemetry from a day's row menu. On a desktop-width window you can also drop a file on the Drop telemetry panel at the bottom of the sidebar from any page
- Select your telemetry file from your computer
- The file is parsed instantly in your browser
- Choose where it belongs: a likely Track Day, any other past day, an individual on-track session, Day only, or Leave unlinked
- Once linked, you will see the lap list and interactive charts. Analysis lets you Link, Relink, or Unlink saved analysis later
Uploaded files can be up to 50MB. An account can hold up to 500 saved sessions -- see Saving sessions if you need to make room.
Privacy first
The file is processed in your browser, and its data is saved only when you explicitly save the session. To find nearby layouts for RaceBox recordings or VBOX files without lap timing, TrackOut sends only an approximate area, about 10 km across. This applies during import, when choosing a layout for a saved RaceBox session, and in live RaceBox Track Mode. The lookup does not send your exact position; matching and timing happen in your browser. A layout whose venue pin sits away from the circuit is still found even when another nearby track already matches the same area, so that recording is timed instead of opening untimed.
Drag and drop
You can also drag and drop telemetry files directly onto the Track Days page. The drop zone accepts all supported file formats.
Dropping files on the sidebar
On a desktop-width window, the Drop telemetry panel at the bottom of the sidebar takes one or more files from any page, and Upload telemetry in Analysis does the same. Each file opens in the Drop telemetry dialog, one at a time:
- Reading -- the file is being decoded in your browser.
- Matched -- the file row says what TrackOut read (for example "AiM · 14 laps · 10 Hz GPS"). TrackOut found the one track day the file belongs to, from its date and the track its GPS resolves to, and the on-track session whose start time it fits when there is exactly one. The dialog shows the Car and Session and says what matched. Choose Open in Analysis to file it there, or Change to pick somewhere else.
- No match -- pick a car and a track day, or New track day for the track and date in the file, then choose Add as session.
- Can't read -- the file is not a format TrackOut reads. The dialog lists the exports that work; choose Try another file.
- Already imported -- the same file is already saved. The dialog says where it is and links to Open session. If the saved copy is archived because you deleted its car, the dialog names that car and offers Move to a car in your garage instead of saving a second copy.
Cancel sets the file aside without saving it. On a car's Driving tab, dropped files still appear as cards under the drop target.
RaceBox device-memory captures can hold several recordings, so their card opens the recording picker instead.
Automatic track detection
When you upload a file, TrackOut detects the track from the file name, any track day you attach the session to, and the decoded GPS location. If a matching track is found in the database, the official track centerline is loaded for accurate position mapping.
This means your driving line is displayed relative to the actual track layout, making it easier to identify where you are gaining or losing time in specific corners and sections.
For AIM .xrk files, TrackOut decodes the logger's recorded GPS solution directly, so the driving line and map position stay accurate even when the file's embedded track label is old or stale. Track detection uses the file name and any linked track day first, then falls back to the decoded GPS location when the name is missing or points at the wrong nearby circuit -- so a mislabeled session still attaches to the track it was actually recorded at.
Data channels
TrackOut automatically discovers and processes common channels from your telemetry data. AIM files can contain both standard channel names and logger-specific IDs, so TrackOut also exposes raw channels when they are useful for analysis.
Speed
- Channel names:
VSPD,SPD,GPS Speed,GPS_Speed,GPS Spd,GPS_Spd,Speed - Unit: mph
- Also recognized:
speed_mps, which stays in metres per second and is not converted for display - Plotted on the speed chart and used for speed-colored track map overlays
Racelogic VBOX files that record speed in km/h, mph, knots, or m/s are converted to mph so charts and lap summaries use the same units as AIM files. Re-upload if an older import looked about two-thirds too slow -- that was an mph file read as km/h.
G-Forces
- Channel names:
LatA,lateral_g(lateral),InlA,longitudinal_g(longitudinal), plus supported AIM expansion-channel names when present - Unit: G
- Used for the G-Force chart, friction circle plot, and braking zone detection
- On a new AIM import, these follow the car -- not the logger box -- when the recording has enough GPS-backed driving to measure the mounting. Otherwise the logger IMU channels stay _Raw. Delete the saved session first, then upload the original file, if an older import sat long G too low or swapped the axes.
Engine
- Channel name:
RPM - Unit: revolutions per minute
- Displayed in the channel analysis charts
GPS Position
- Channel names: Latitude, Longitude
- Used for track map rendering, track detection, and position-based data alignment
For VBOX files, TrackOut can build a usable analysis from GPS samples even when the file does not include the same lap-channel structure as an AIM export. A VBOX file with a GPS trace but no lap markers is timed on the start/finish line of the TrackOut layout it was driven on, when one nearby has its timing set up. Uploaded from Track Days, the import then shows Laps timed on with that track and layout. Layout timing uses usable GPS fixes and a known clock or stated sample rate, and never joins a lap across a recording clock reset. A lap that leaves the circuit before the line, such as an in-lap into the pit lane, is kept but marked invalid. With no such layout, the file is analyzed and saved as an untimed trace labelled Trace: it has no lap time and does not establish a best lap.
Explicit channel mapping
TrackOut reads throttle, brake, steering, RPM, gear or yaw rate on its own only from standard AiM, CSV or VBOX names. CAN and other vendor names stay under their own labels until you assign them in Map channels. High-value roles -- throttle, brake, steering angle, speed, RPM, gear, and brake pressure -- are listed first, followed by lateral G, longitudinal G, yaw rate and heading. A .cir file shares the VBOX assignment profile.
Yaw rate takes a gyro only: a RaceBox, AiM or VBOX IMU channel, or a CAN yaw such as Yaw_Rt, in degrees or radians per second. A channel computed from GPS, such as GPS Gyro, is refused with "This channel is computed from GPS, not a gyro." A CSV uploaded before gyro columns kept their own names stores every gyro column as YawR, which can't be mapped: the picker says "This channel's origin is unknown. Upload the file again to map its yaw rate."
Assignments are saved to your account for that car and logger type, so the next session from the same car opens with them. Mappings you made in this browser before move to your account the first time you open that car's sessions.
See Channel assignments.
Missing channels
If your data file does not contain a particular channel, the corresponding chart or feature will be unavailable. GPS data is required for the track map and position-based analysis.