13 KiB
Credits and Code Provenance
StarPilot stands on work by comma.ai, FrogPilot, and many other open-source contributors. This document records provenance that is not adequately represented by StarPilot's historical commit authorship. It is not an assertion that an upstream contributor endorses, maintains, or is responsible for StarPilot's adaptation.
Ford support adapted from BluePilot
StarPilot commit 3f6ccd104e826643887930b41ad3b4086b833d32
introduced a substantial adaptation of Ford work from BluePilot's bp-7.0 branch. That commit's
message thanked the project, but it did not record a source revision or preserve the upstream
authors in the code. This file corrects that provenance gap without rewriting published history.
The exact checkout used for the original port was not recorded and therefore cannot now be proven.
At the time of the import,
3a838bba6d3d280592c2fd0496b3378977ae25f1,
was the tip of the public bp-7.0 line. Some imported platform lines instead trace to the
contemporaneous development line at
59e3f2f16a38ff0c16d173b0ccddded23aaa1cd8.
Those histories were merged the next day as
e1d051d7ba270261b4455068bd68f1a58db15a4a,
which is the complete bp-7.0 snapshot used for this audit. This reconstruction is deliberately
recorded as a range rather than pretending that the missing original source SHA can be recovered.
Upstream authors and work
- Alan Polk (
alan-polk) is the principal upstream author of the Ford curvature controller, angle-primary controller, manual-turn behavior, controller integration, and related panda safety work. Important lineage commits includedb2bdff05,d0aac605f,8f8d6d15f, and97867c1eb. - John Christman contributed
bp-7.0lateral integration, platform data, and the upstream anti-stall work referenced by StarPilot's recovery logic, includingec0ab181cand9012f7666, with additional vehicle data inf0c6bf51f. - Jacob Neulight contributed measured shadow-curvature and steering-pinion curvature/safety
work, including
699c17d9fand26030f3cb. - Nathan Ingraham contributed the separate high-speed damping adjustment in
1db52bc79and3610e3f18. - Praeuner contributed the damping-range update in
b600a8fdb. - tonesto7 contributed to the Ford integration and CAN-message history represented in the
imported branch, including
7f9212f7f. - Haibin Wen and sunnypilot contributors are named in file-level notices on upstream Ford extension files that informed StarPilot's vehicle-state and lateral-limit integration. Their published copyright and license notices are retained in THIRD_PARTY_NOTICES.md.
- Dirk Petersen, Alex Troxel, Kacer Aleks, and other BluePilot contributors supplied Ford
fingerprints, VIN/platform data, tests, and integration changes that are represented in the
imported vehicle-support set. Examples include
3706b5645,694bdbb7a, anda02c06ef3.
This list identifies contributors whose work was found during the repository and blame audit. The BluePilot repository and its Git history remain the authoritative record and may identify further contributors.
Local-to-upstream map
| StarPilot area | Upstream lineage | What StarPilot changed |
|---|---|---|
starpilot/car/ford/lateral.py |
human_turn.py, lateral_curv_ext.py, and values_ext.py at the reference snapshot above; earlier StarPilot revisions also adapted lateral_angle_ext.py |
Consolidated the runtime implementation on the extended-curvature strategy, integrated StarPilot Params, and added live-delay curvature lookahead and local tuning behavior. |
starpilot/car/ford/fordcan.py |
fordcan_ext.py and the extended-lateral protocol, especially 8f8d6d15f |
Reduced the extension to the curvature CAN constructors used by StarPilot and adapted it to the local controller interface. |
opendbc_repo/opendbc/car/ford/ |
Ford controller/state/interface/radar/platform changes in the bp-7.0 snapshot |
Integrated the changes directly into StarPilot's opendbc layout instead of retaining sunnypilot mixins; subsequent fixes and behavior differ by file. |
opendbc_repo/opendbc/safety/modes/ford.h and Ford safety tests |
BluePilot panda enforcement for four-signal curvature and angle-primary control, especially 8f8d6d15f, plus shadow-curvature work |
Retained the extended-curvature checks, removed runtime path-angle selection, and continued adding local regression coverage. |
| Ford Params and settings surfaces | BluePilot's curvature tuning concepts | Renamed and implemented in StarPilot's native Params/Galaxy architecture; no BluePilot or sunnypilot UI classes were retained. |
The local code has materially diverged, but the first four rows remain derivative in design and in parts of their implementation. Future ports should cite the exact upstream commit in the importing commit and at the relevant source boundary; when history can be retained cleanly, use a merge, subtree, or cherry-pick with origin metadata rather than a single squashed attribution.
Hyundai, Kia, and Genesis support adapted from sunnypilot
Portions of StarPilot's HKG angle steering, CAN integration, panda safety enforcement, safety tests,
firmware fingerprints, and cruise-button management are adapted from sunnypilot. Some upstream HKG
authorship is retained in StarPilot's Git history, and StarPilot commit
e33305151
identified its ICBM/CSLC work as a sunnypilot port. Other substantial imports were committed locally
without recording an exact source revision, so this section documents the reconstructed lineage.
The exact checkout used for each historical import cannot now be proven. The reference snapshots used for this audit are:
sunnypilot/sunnypilothkg-angle-steering-2025atcfb38312d, whose opendbc submodule points to the next snapshot.sunnypilot/opendbchkg-angle-steering-2025atcc4b08625.sunnypilot/opendbcmasteratf95f996f5, used to audit later HKG fingerprints and extension history.
Upstream authors and work
- Haibin (Jason) Wen contributed the original Kia EV9 HDA2/LFA2 angle-steering port, Hyundai
angle integration and signals, non-SCC platform support, and Intelligent Cruise Button Management.
Important lineage commits include
abe78de2c,333de6f1a,559a37426, and862828ad6. - Shane Smiskol contributed foundational angle-command limiting, driver-override behavior, and
EPS-fault avoidance, including
228a397a3and42d84ff6c. - DevTekVE contributed substantial angle-controller integration, tuning, platform support, panda
safety logic, and tests, including
c77c7ec2e,7ded99dba,3819ca7f0, and8d134e98f. - Nicholas Evans, dany7915, janpoo6427, Tinkerpet, royjr, Taylor Hoshino, Intelli, Joshua Mack, Mark McCallister, Discountchubbs, and other sunnypilot contributors supplied vehicle ports, fingerprints, firmware data, safety-limit updates, and related integration represented in the adapted HKG support.
This list identifies contributors found during the repository, commit, and blame audit. The sunnypilot repositories and their Git histories remain the authoritative record and may identify additional contributors.
Local-to-upstream map
| StarPilot area | Upstream lineage | What StarPilot changed |
|---|---|---|
opendbc_repo/opendbc/car/hyundai/carcontroller.py |
Angle controller and driver-override work in sunnypilot/opendbc hkg-angle-steering-2025 |
Integrated the controller into StarPilot's opendbc layout and added substantial local longitudinal, smoothing, recovery, and platform behavior. |
opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py, interface.py, and values.py |
Angle commands, signal selection, safety flags, limits, and platform integration from the angle branch | Combined later upstream changes with StarPilot flags, Params, platform tuning, and local CAN/CAN-FD behavior. |
opendbc_repo/opendbc/safety/modes/hyundai_canfd.h and its tests |
Angle-command safety enforcement and regression tests from the angle branch | Extended and reorganized the safety mode and tests for StarPilot's current supported modes. |
opendbc_repo/opendbc/car/hyundai/fingerprints.py and HKG platform data |
sunnypilot HKG extension/fingerprint history on master plus angle-branch vehicle ports |
Flattened extension data into the local opendbc tree and continued adding and updating platforms. |
| HKG cruise-button management and settings integration | sunnypilot ICBM/CSLC concepts and implementation history, including 862828ad6 and 2277e3d49 |
Adapted the feature to StarPilot/FrogPilot controls and settings; later revisions changed or removed portions of the original integration. |
The current implementation is not a wholesale copy of either reference snapshot and has diverged substantially. Its HKG angle-control and supporting safety architecture nevertheless remain derivative in design and in identifiable portions of the implementation. The applicable upstream notices are preserved in THIRD_PARTY_NOTICES.md.
Policy for future third-party ports
Before publishing a third-party port:
- Read every repository-level and file-level license that may cover the source. Stop and ask the rightsholder when the terms or their scope conflict.
- Record the repository URL, exact commit SHA, source paths/symbols, authors found in the relevant history, and the local destination in the importing commit and this file.
- Preserve required copyright and license notices verbatim. Reorganization, translation, and AI-assisted rewriting do not remove source provenance.
- Retain authorship/history with a merge, subtree, or
cherry-pick -xwhen practical. For a true adaptation, keep the local adapter as commit author and use anAdapted-from:trailer and source comments; do not addCo-authored-by:for a person without their agreement. - Describe material local deviations and make clear that upstream contributors do not support or endorse the downstream version.
See THIRD_PARTY_NOTICES.md for licensing notices.