Case study

RKD Telemetry Extractor: decoding Race-Keeper track-day recordings

Documents the proprietary .rkd telemetry format written by Race-Keeper “Instant Video” recorders, whose bundled player runs only on Windows, and implements matching Python and Go parsers that export GPS and IMU channels as Telemetry Overlay CSV and GPX. The author credits Claude Code with the hex-dump analysis and hypothesis testing, anchored by known car IDs, circuit location and speeds. Field meanings rest on physical cross-checks from the author’s own recordings, and several record types remain partly unknown.

Requirements and limitations

  • The reviewed pin is Python package version 1.0.0 from February 2026. It decodes the 8-byte signature, meta header, 10-byte record headers and the configuration, GPS, accelerometer, gyroscope, periodic, timestamp and terminator records, then exports 30 Hz Telemetry Overlay CSV, roughly 5 Hz GPX and a session summary. It reads telemetry only; the .mp4 video is used as is, and OBD-II channels are unsupported because the source recordings had no scanner connected.
  • Users supply .rkd files from their own Race-Keeper recordings. The repository includes a truncated sample of about 50 GPS fixes from the author’s 2021 session with reference CSV and GPX output, but not the vendor player, the USB-stick contents or full recordings. Python 3.9+ and the Go toolchain use only standard libraries; README says Go 1.21+, while go.mod declares go 1.24.7.
  • Research notes and a session log attribute the analysis to Claude Code (claude-opus-4-6) across three February 2026 sessions plus a fourth for tests, documentation and the Go port. The README and notes give about four hours, while the log’s per-session durations total more. The JSONL transcripts are described but not published, so the dialogue cannot be checked from the repository.
  • Reported validation compares recorded speed with haversine-derived speed (under 1% error), checks mean vertical acceleration against 1 g, fits a gyroscope divisor of about 28 against GPS heading changes and matches altitude to circuit topography. The CRC polynomial, periodic and timer fields, two terminator fields and the exact gyroscope calibration remain unknown or empirical. CI runs Python 3.9, 3.11 and 3.13 tests with a 100% branch-coverage gate, and Go tests on Ubuntu and macOS that compare Go output with the committed Python reference CSV and GPX; this collection ran neither suite.
  • The project declares MIT and states that it is independent of and not endorsed by Race-Keeper or Trivinci Systems LLC. Decoding is limited to the hardware revision and recordings the author examined, and other devices or firmware versions may differ. The reviewed sources establish no REA use.

About this entry

Type
Case study
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Targets
App

Sources reviewed

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Primary sources

  1. RESEARCH_NOTES.md GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  2. README.md GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  3. RKD_FORMAT_SPEC.md GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  4. SESSION_LOG.md GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  5. samples/README.md GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  6. python/pyproject.toml GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  7. go/go.mod GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  8. .github/workflows/ci.yml GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37
  9. LICENSE GitHub · sam-dumont/rkd-telemetry-extractor · Revision 8db9f37