From e697a5522eecb096ec02a1c5269e07f81c29e911 Mon Sep 17 00:00:00 2001 From: Isaac Barham Date: Mon, 14 Sep 2026 12:19:34 -0400 Subject: [PATCH] Ford: use 15 mph for the lower channel test speed --- openpilot/selfdrive/controls/lib/ford_channel_test.py | 2 +- openpilot/selfdrive/controls/tests/test_ford_channel_test.py | 2 ++ openpilot/tools/lateral_maneuvers/FORD_CHANNEL_TEST.md | 4 ++-- openpilot/tools/lateral_maneuvers/README.md | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/openpilot/selfdrive/controls/lib/ford_channel_test.py b/openpilot/selfdrive/controls/lib/ford_channel_test.py index e25b143778..3f6329413a 100644 --- a/openpilot/selfdrive/controls/lib/ford_channel_test.py +++ b/openpilot/selfdrive/controls/lib/ford_channel_test.py @@ -7,7 +7,7 @@ from openpilot.selfdrive.controls.lib.ford_path import FordPath PARAM = 'FordChannelTestMode' CONFLICTS = ('LateralManeuverMode', 'LongitudinalManeuverMode', 'JoystickDebugMode') -SPEEDS = (10.*CV.MPH_TO_MS, 20.*CV.MPH_TO_MS) +SPEEDS = (15.*CV.MPH_TO_MS, 20.*CV.MPH_TO_MS) AMPLITUDE = {'c0': .03, 'c1': .01} BASELINE_S, PULSE_S, RELEASE_S = .5, .5, 2. TOTAL_S = BASELINE_S + PULSE_S + RELEASE_S diff --git a/openpilot/selfdrive/controls/tests/test_ford_channel_test.py b/openpilot/selfdrive/controls/tests/test_ford_channel_test.py index 9d72cdebd6..72033d58f2 100644 --- a/openpilot/selfdrive/controls/tests/test_ford_channel_test.py +++ b/openpilot/selfdrive/controls/tests/test_ford_channel_test.py @@ -129,6 +129,8 @@ def test_full_suite_with_serialized_20hz_plans_and_100hz_receiver(): assert all(stages == {'baseline', 'pulse', 'release'} for stages in phases.values()) assert all(45 <= counts[run, 'pulse'] <= 55 and 195 <= counts[run, 'release'] <= 205 for run in phases) assert {(t.speed, t.channel, t.direction) for t in TRIALS} == {(v, c, s) for v in SPEEDS for c in AMPLITUDE for s in (1, -1)} + assert [t.description for t in TRIALS] == [f'{channel} {direction} {mph} mph' + for mph in (15, 20) for channel in ('C0', 'C1') for direction in ('right', 'left')] @pytest.mark.parametrize('changes', [{'driver_input': True}, {'healthy': False}, {'lat_active': False}, diff --git a/openpilot/tools/lateral_maneuvers/FORD_CHANNEL_TEST.md b/openpilot/tools/lateral_maneuvers/FORD_CHANNEL_TEST.md index 4f872df354..cacc6e9b7f 100644 --- a/openpilot/tools/lateral_maneuvers/FORD_CHANNEL_TEST.md +++ b/openpilot/tools/lateral_maneuvers/FORD_CHANNEL_TEST.md @@ -1,10 +1,10 @@ # Ford C0 / C1 comparison -This separate diagnostic measures the wheel response to small C0 and C1 pulses at **10 and 20 mph**. It requires the Ford model-action controller and a CAN FD Ford. It makes no change to normal controller tuning. +This separate diagnostic measures the wheel response to small C0 and C1 pulses at **15 and 20 mph**. It requires the Ford model-action controller and a CAN FD Ford. It makes no change to normal controller tuning. 1. While offroad, enable **Settings → Developer → Ford C0 / C1 test** on comma four. This selects the test for the next onroad session and turns off the other maneuver/joystick modes. 2. Use a clear, straight test area with room for a small lateral deviation. Engage ACC and lateral control, then hold the speed shown on screen. Testing requires two continuous seconds of steady, nearly straight driving without steering or pedal input. It will not start if you are manually holding the accelerator. -3. At 10 mph it runs **C0 right, C0 left, C1 right, C1 left**. Repeat those four trials at 20 mph. Each trial holds the starting commands for 0.5 seconds, pulses one field for 0.5 seconds, then restores the starting commands for 2 seconds to observe release. +3. At 15 mph it runs **C0 right, C0 left, C1 right, C1 left**. Repeat those four trials at 20 mph. Each trial holds the starting commands for 0.5 seconds, pulses one field for 0.5 seconds, then restores the starting commands for 2 seconds to observe release. 4. Follow the displayed phase and target speed. Normal model tracking resumes between trials and after completion. If a trial aborts, **disengage and reengage** to retry it; clearing steering input alone does not restart the pulse. Stop if the area no longer provides room for the test. 5. After “Ford tests finished,” end the route and upload all logs. The test toggle clears when the device returns offroad or the manager restarts. diff --git a/openpilot/tools/lateral_maneuvers/README.md b/openpilot/tools/lateral_maneuvers/README.md index 8588bd93eb..c10fcc1cfd 100644 --- a/openpilot/tools/lateral_maneuvers/README.md +++ b/openpilot/tools/lateral_maneuvers/README.md @@ -5,7 +5,7 @@ Test your vehicle's lateral control tuning with this tool. The tool will test the vehicle's ability to follow a few lateral maneuvers and includes a tool to generate a report from the route. -Ford CAN FD with the model-action controller also has a separate [C0 / C1 comparison](FORD_CHANNEL_TEST.md) at 10 and 20 mph. +Ford CAN FD with the model-action controller also has a separate [C0 / C1 comparison](FORD_CHANNEL_TEST.md) at 15 and 20 mph. ## Instructions