Skip to content

Ford: tighten hands-free UI gating to strict lateral control#108

Draft
adgower wants to merge 3 commits intoBluePilotDev:bp-6.0.1-betafrom
adgower:bp-6.0.1-beta
Draft

Ford: tighten hands-free UI gating to strict lateral control#108
adgower wants to merge 3 commits intoBluePilotDev:bp-6.0.1-betafrom
adgower:bp-6.0.1-beta

Conversation

@adgower
Copy link

@adgower adgower commented Mar 9, 2026

Tighten Ford hands-free cluster UI gating so the hands-free icon only appears when lateral is actually in control.

Before this change, the existing send_hands_free_cluster_msg toggle could flow through the Ford UI path too loosely. This patch keeps the same param chain and downstream behavior, but derives a stricter runtime flag in opendbc_repo/opendbc/car/ford/carcontroller.py before passing it on.

New gating:

  • require CC.latActive
  • if MADS is available, require CC_SP.mads.state == MADSState.enabled
  • if MADS is unavailable, preserve current non-MADS behavior

Verification

  • toggle off still suppresses hands-free UI
  • mads.state == enabled with CC.latActive=True still allows hands-free UI
  • lat-only MADS with mads.state == enabled still allows hands-free UI
  • paused, overriding, and softDisabling now suppress hands-free UI
  • standby/resume cases where MADS is not strictly in control no longer forward the hands-free flag

adgower added 3 commits March 9, 2026 10:12
Keep the existing `send_hands_free_cluster_msg` param chain, but only
forward a derived runtime flag when lateral is actually in control.

In Ford `carcontroller.py`, require `CC.latActive` and, when MADS is
available, require `CC_SP.mads.state == MADSState.enabled` before
showing the hands-free cluster UI. Pass that stricter flag through the
DM helper path and ACC UI path without changing `create_acc_ui_msg()`
behavior or any public interfaces.

Non-MADS behavior is unchanged.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant