This fork supports the Proper Torque Modification available for select Honda platforms. We are calling this PTC.
Check your car's torque-mod status and files. The sheet is the source of truth for supported cars, rack firmware, and the file intended for each EPS.
PTC combines modified EPS firmware with software that knows how that firmware behaves. The firmware and the software tune are a pair: using one without the other can produce the wrong steering response.
Flashing an EPS writes a real steering ECU. Confirm the exact car, rack, and firmware in the status sheet; keep the vehicle on stable power; do not interrupt a flash; and ask in Discord before guessing. A wrong or interrupted flash can leave the EPS unusable.
- Check the status sheet for your exact car and EPS firmware.
- Factory-reset the device before changing branches. This is required when moving between NRDR, clean, bare, or another fork.
- From the openpilot root, run
python3 flash.py, choose the latest PTC firmware listed for your exact rack, and follow every prompt. Read the EPS flashing guide before starting. - Install the branch that matches how much experimentation you want.
- Start with the branch defaults. Change one setting at a time and keep notes.
These branches are tuned for the current PTC firmware. Legacy 2X and other older torque mods have a different, non-linear response and are not the tuning target.
Validated PTC files are designed to provide more usable steering authority than the older legacy torque-mod files. The fork adds a static Honda PID base, rack-aware steering geometry, steering filters, driver-override handling, and optional vehicle-specific tuning tools.
On the seven PTC Honda platform fingerprints in the current code, the base is static at every speed: kp = 0.03, ki = 0.01, and kf = 0.000012. Optional Low, Standard, and Highway P/I/F controls scale that base; 100% means no change.
This is research software, not a safety certification and not a self-driving system. The driver must supervise it at all times.
Some steering racks can develop stutter: a low-frequency feedback loop that may make noise or rock the wheel back and forth like a ratchet. Stutter is usually more of a control-quality problem than an EPS-hardware problem, but it can push the torque sensor past the driver-override threshold. NRDR may then mistake it for you taking the wheel and instantly drop NRDR's steering assist torque—even mid-turn.
If this happens, take over and disengage safely. Once parked, go to Settings → nrdr → Lateral Tuning → Override Tuning and raise Driver Override Threshold one 100-point step at a time; use the lowest value that stops false overrides. For drops near center, raise Override Threshold Center Boost too, or set it equal to the main threshold so the lower near-center threshold is not used. The normal editable defaults are 1400 for the main threshold and 1000 near center. Both controls run from 100 to 5000, and 1200 represents the car's stock threshold even when its raw sensor value is different.
The handcrafted profile never locks or restores these controls; after applying it, you can immediately adjust either threshold by hand. Do not max either control: higher thresholds make NRDR slower to yield to real driver input. This is only a false-detection workaround, not a cure. If stutter is strong, repeatable, or affects control, stop testing that firmware, return to a known-good configuration, and report the exact rack/firmware plus logs in Discord.
Many Hondas also have a non-linear variable steering ratio inside the rack. A single wrong ratio can make the car track too far inside or outside a curve even when higher P/I/F gains do not help. NRDR now makes the geometry source an explicit choice; the driving model can never silently replace it.
You MUST factory-reset before switching branches. Development branches are source/QC lanes, not promised end-user releases.
nrdr-clean— compliance build intended to retain the rules needed for standing with comma and its services. Usesconnect.comma.ai.nrdr-nightly— newest precompiled NRDR build. Experimental or incomplete safety-related work may be present. Use at your own risk. Usesstable.konik.ai.nrdr-staging-<DATE>— precompiled snapshot cut from development, normally namednrdr-staging-MM.DD.YYYY. Use one to pin a known-good build or identify when a regression appeared. Usesstable.konik.ai.
nrdr-bare— stock openpilot plus the hardcoded PTC tune and the minimal dynamic steer-ratio/controller integration needed for it. It omits the larger NRDR feature set. Usesconnect.comma.ai.nrdr-bare-only-tune— stock openpilot with only the hardcoded PTC tuning dependency. It lacks dynamic steer-ratio tuning and the wider lateral enhancements, so it may not track as well on non-linear racks, but it is the smallest and most upstreamable branch. Usesconnect.comma.ai.
Source and QC branches
nrdr-architecture-developmentisolates NRDR-owned code underopenpilot/nrdrfor review and future integration.nrdr-development-newcarries the same active behavior in the older layout while the architecture rewrite is validated.nrdr-developmentremains the existing development branch during that transition.
Settings appear only when they apply to the detected car and hardware. A control may be gray because the car is engaged, another steer-ratio mode is selected, or an exact data source is unavailable. Applying a handcrafted profile does not lock anything. Start from defaults, change one thing at a time, and never use a slider to hide a firmware mismatch.
Handcrafted lateral profile and vehicle learning
- Apply Handcrafted Lateral Profile is a one-shot action, not a mode. It writes and verifies the current reviewed profile, then turns its request back OFF. The Clarity v17 profile includes the exact recognized firmware steer-ratio mode and current 47-setting lateral tune; other reviewed Hondas retain their safe legacy controller-only profile. Every control stays manually editable, and later edits survive reports, restarts, and future drives until you deliberately press Apply again.
- Loaded Vehicle & Tune shows the detected fingerprint, EPS firmware, controller, geometry, and the actual gains in use. Check this before assuming a setting loaded.
- Learned Steer Ratio remains here as a read-only diagnostic. Choose whether to use it inside Controller Tuning Dungeon → Steer Ratio Tuning.
- Learn Tire Stiffness (Auto) lets openpilot learn how strongly the tires respond. OFF pins the factor to
1.0. - Learn Angle Offset (Auto) learns which sensor angle means straight ahead. Turn it OFF temporarily if a bad learned offset is pulling the car sideways.
- Run Tune Report Scan reads saved drive logs and summarizes tracking by speed. It is a diagnosis helper, not an automatic permission to change gains.
Controller Tuning Dungeon
- Interpolated Torque/PIF Blend is an experimental modified-EPS Honda option. OFF keeps today's controller unchanged. ON mixes two complete steering controllers: the older torque controller and today's P/I/F controller. Torque Share shows both sides together, such as
Torque 60% / P/I/F 40%; they always total 100%.- P/I/F keeps using steering-wheel angle feedback. The torque side uses the generic
f13de17yaw-feedback branch: steering angle through 2 m/s, an exact angle-to-calibrated-yaw transition from 2–5 m/s, and calibrated yaw response at 5 m/s and above. This historical generic branch was not road-proven on Honda. If required yaw is unavailable, invalid, stale, or non-finite, the torque side does not reuse angle or update its controller state; the final request temporarily returns to 100% P/I/F. - Spoofed Lateral Acceleration Factor tells the torque side how many
m/s²count as full steering torque. Higher values make that side ask for less torque for the same curve. It scales the torque side's feedback error and non-friction feedforward, but never its direct friction term. - Low-Speed / Standard-Speed / Highway Torque Friction set direct normalized torque below 25 mph, from 25-50 mph, and above 50 mph. Fresh defaults are
0.12 / 0.10 / 0.06. The controller crossfades smoothly over 24-26 mph and 49-51 mph instead of stepping at a boundary. These values are independent of the lateral-acceleration factor, so high values can reach the steering limit quickly. - These six settings can be saved while driving and are held as one snapshot for the entire engagement. Edits made while engaged apply together after the next disengage and re-engage. If already disengaged, wait up to 10 seconds for settings to sync before engaging. Existing single-friction tunes are still copied into missing bands during upgrade, preserving their behavior until a band is deliberately changed. The legacy torque state resets when you disengage. NNLC is a separate controller; on the Clarity, this mode bypasses and resets it so a hidden third controller cannot change the selected percentages.
- P/I/F keeps using steering-wheel angle feedback. The torque side uses the generic
- P / I / F scales are split into Low (below 25 mph), Standard (25–50 mph), and Highway (50 mph and above). P reacts now, I corrects an error that will not go away, and F prepares for the curve the model already requested.
100%keeps the tuned base. - Steer Ratio Tuning has four mutually exclusive modes:
- Manual is represented by all three switches being OFF. On supported Hondas it blends the global On-Center and Final values (
15.38and10.93defaults) using hidden car-specific outer-angle information. On every other car the sliders stay disabled and the stock ratio remains untouched. - Use Comma Steer Ratio Learner uses Comma's valid live learned ratio as one number at every steering angle. It uses the car's stock ratio until the first valid sample, then holds the last valid value through brief message dropouts so geometry cannot jump mid-turn.
- Use nrdr Steer Ratio Learner uses NRDR's fixed curve made from real steering-angle logs. Despite the historical name, it does not keep learning while you drive. It is currently available only for the exact Honda Clarity fingerprint.
- Use Firmware Steer Ratio follows the curve read from an exactly recognized steering-rack firmware and keeps the car's stock straight-ahead ratio as its starting point.
- Manual is represented by all three switches being OFF. On supported Hondas it blends the global On-Center and Final values (
- Selecting unsupported NRDR-raw or firmware mode does not borrow data from a related car. The whole controller uses the stock car ratio and reports the fallback. The mode and both manual endpoints can be saved while driving. Edits made while engaged apply together after the next disengage and re-engage; if already disengaged, wait up to 10 seconds for settings to sync before engaging. Geometry changes are latched so measured curvature and desired angle cannot switch separately mid-turn.
Developers and reviewers can find the exact raw-data provenance and math in the steer-ratio mode reference.
- StarPilot PID Additions enables borrowed turn-in, unwind, and left/right scaling that was not built for Honda. Leave it OFF unless you are deliberately comparing it.
- Rate Damping (D) Strength / Fade-Out Speed resists fast wheel movement to calm low-speed ringing, then fades away with speed. Too much makes steering heavy.
- Center Boost / Threshold / Minimum Speed adds extra P correction only near center and only above the chosen speed. It does not multiply I, F, or damping.
- Predictive Lateral Stiction tapers and holds torque as the wheel reaches a stable target, then releases immediately for driver input, lane changes, faults, or steering limits.
- NNLC is the optional Clarity neural lateral controller. Activation speed chooses the PID-to-NNLC handoff; KP, KI, and KF scale its three terms. Lane changes remain on PID; explicit Firmware Steer Ratio mode or an active Interpolated Torque/PIF Blend disables NNLC.
Driver override and steering filters
- Driver Override Threshold decides how much driver torque means “the human is steering.” Override Threshold Center Boost can use a lower value near center. Raising either value delays the handoff to the driver.
- Increase Driver Override Hysteresis makes brief torque spikes less likely to cause a false handoff.
- Pass-through assist torque on override, Fade Down, Fade Up, and Torque Retain control how assist leaves and returns when you take the wheel. These directly affect driver handoff; adjust cautiously.
- Low Pass Filter (tau) smooths fast steering commands. Its three speed-band tau values trade chatter for delay: larger is smoother but laggier.
- Legacy Steer Delta Rate Limiter / Delta Up / Delta Down caps how quickly torque may change. It is an older alternative; values that are too restrictive add lag.
Longitudinal tuning
- Live Learning Gas learns gas response and wind compensation. While it is ON, the four personality PID scales stay at 100%.
- Distance 1–4 PID Scales change feedback for Aggressive, Standard, Relaxed, and Econ. They apply only with a gas-pedal interceptor and Live Learning Gas OFF.
- Keep Feedforward Static lets a personality scale change P and I without multiplying the tuned feedforward.
- Nidec ECU-Matched Long, Full Nidec Brake Authority, and Roen Nidec Acceleration Limits change Nidec gas/brake shaping and authority. They are vehicle-specific; do not copy another car's result blindly.
- Honda Bosch-A Radar is experimental. With Alpha Long, its reverse-engineered tracks feed braking and acceleration decisions, while factory Honda AEB/CMBS is unavailable. Disable it if objects look wrong.
- Set-Speed Overshoot Allowance permits a small target above the selected speed. Cruise Mismatch Correction fixes a repeatable displayed-versus-actual cruising error.
- Stopping Decel Rate, Stop Accel, Planner Stopping Rate, and vEgo Stopping/Starting shape the final approach to zero and the move-off transition.
- Honda Dashboard Variant B is currently a placeholder and has no effect.
Special, device, and remote tools
- Injection Test multiplies lateral PID output by about ten. It is a stress test, not a driving mode; leave it OFF unless you understand the test and have a controlled environment.
- Alternative Dashboard Speed/Distance repurposes cluster graphics for lead speed, device speed, radar distance, or acceleration. It requires openpilot longitudinal control.
- Clear Dashboard Fault Codes hides selected camera/FCM indicators and suppresses the stock FCW chime; it does not repair a fault. Spoof Camera Messages is only for a dead or absent stock camera.
- Cruise Button Sub-Mode / Visibility Time makes the first button press open a blinking preview; presses inside that window perform the change.
- Show Footage / File Server creates local, offroad-only QR links to recorded drive files.
- Re-register with konik is only for a Konik build that cannot come online after switching backends. Clean builds remove this action.
- Prevent Automatic Shutdown bypasses normal offroad shutdown timing and can drain the vehicle battery. Manual Power Off still works.
- Force Update requests the updater while the car is off. Remote Action Status reports progress.
Use only firmware confirmed for your exact EPS. Keep both hands ready, stay attentive, and obey local laws. You are responsible for the vehicle, the flash, and every setting you change.