Personal NotAutopilot fork for one specific car.
2014 Tesla Model S85 (pre-AP, tech non-P) · comma 3 · Tinkla Buddy IC · Comma Pedal · Tinkla Bosch radar.
This is a personal openpilot fork for one specific Tesla. It is not production-ready for other cars — tunes, LUTs, and CAN bit-layouts are calibrated against a single 2014 S85 with specific retrofit modules.
- Not affiliated with comma.ai — comma 3 / openpilot are products of comma.ai
- Not the NotAutopilot organization — this is a downstream personal fork; for general pre-AP Tesla support go to NotAutopilot/openpilot
- Use at your own risk — driver is responsible for all consequences
This fork uses submodules for opendbc, panda, msgq, rednose,
teleoprtc and tinygrad. Always clone recursively, or the build will
fail and Tesla pre-AP / F4 panda code will be missing:
git clone --recursive https://github.com/sveinmer/openpilot.git
# or, after a non-recursive clone:
git submodule update --init --recursiveGit LFS is required. UI assets (icons, fonts), the driving model
(*.onnx) and most third_party libraries are stored as Git-LFS pointers
backed by comma's public LFS server. With git-lfs installed they are pulled
automatically by git clone; otherwise install it and pull once:
sudo apt-get install git-lfs # or: brew install git-lfs
git lfs install
git lfs pullIf icons/fonts show up as ~130-byte text files, LFS did not run.
On the comma 3 setup screen → Custom Software → Other:
| URL | Branch | Update cadence |
|---|---|---|
main.c3.cdma.no |
main |
Stable — bumped after live-validation |
dev.c3.cdma.no |
dev |
Rolling — synced from private after every live deploy |
URLs are HTTP 301-redirects to installer.comma.ai/sveinmer/<branch>.
After the recursive clone + LFS pull above, install dependencies and build with the upstream openpilot tooling:
tools/op.sh setup # install system + Python dependencies (Ubuntu/macOS)
tools/op.sh build # build openpilotThis is the standard commaai/openpilot dev flow — see the upstream development docs for simulator, replay and test usage. Note that car-specific tunes here are calibrated for one S85 and will not match other vehicles.
| Component | Model |
|---|---|
| Vehicle | 2014 Tesla Model S85 (Standard 85 kWh, tech-package, non-Performance) |
| Compute | comma 3 (F4 internal panda — not comma 3X) |
| Instrument cluster mod | Tinkla Buddy R2S 1.44 |
| Longitudinal control | Comma Pedal (throttle + regen via accel-cmd) |
| Forward sensing | Tinkla Bosch radar (GTW-emulated) |
✅ Lateral via EPAS + standalone panda safety
✅ Longitudinal via Comma Pedal (VirtualDAS cascade: jerk-limit → FF table → inner PID + grade comp)
✅ Lead-following with Bosch radar
✅ Buddy IC integration (lanes, lead vehicle, speed limit sign, gauge widgets)
✅ comma 3 F4 internal panda firmware (revived from upstream bye bye f4)
This fork stands on:
- commaai/openpilot — the upstream driver-assistance platform
- NotAutopilot/openpilot — pre-AP Tesla support, comma-pedal long-control architecture
- Tinkla project — first proved openpilot works on pre-AP Teslas; CAN-stack, Buddy IC integration, Bosch radar GTW-emulation
- xnor-tech/openpilot — AP1 Model S support baseline
- MagZu/openpilot — feedforward-dominant pedal architecture reference
- FrogPilot / OPGM Bolt — pedal tuning patterns
This is a personal fork — PRs are not accepted here. For community contributions to pre-AP Tesla openpilot, see NotAutopilot/openpilot.
MIT (inherited from upstream commaai/openpilot).
Private development happens at a private fork. Public mirror updated via
scripts/sync_to_public.sh after every live-validated deploy. The script
sanitizes:
- Deletes:
docs/,evidence/,.claude/, build artifacts, proprietary firmware blobs - Anonymizes: device IPs, dongle-ID, email, personal names
- Updates submodule pins to public mirrors
- Squashes to a single orphan commit (no private history exposed)
Submodule public mirrors:
opendbc_repo→ sveinmer/nap-c3-opendbcpanda→ sveinmer/nap-c3-panda