mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-10-01 03:43:46 +08:00
Ford: support hybrid Q3 platforms (#31568)
* bump * ford: remove dynamic dashcam lockout for hybrids * releases? * Revert "releases?" This reverts commit 88d950043d79b8c00535f48ed84b854bc2ab2557. * bump * Reapply "releases?" This reverts commit db5079dc3f1a6bce70bd04430be45704d8604e76. * 097 old-commit-hash: 378ba114f9d4852374d76c7ebc0318a80cd29c43
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
Version 0.9.7 (2024-XX-XX)
|
Version 0.9.7 (2024-XX-XX)
|
||||||
========================
|
========================
|
||||||
* New driving model
|
* New driving model
|
||||||
|
* Support for many hybrid Ford models
|
||||||
|
|
||||||
Version 0.9.6 (2024-02-27)
|
Version 0.9.6 (2024-02-27)
|
||||||
========================
|
========================
|
||||||
|
|||||||
+1
-1
Submodule panda updated: b4442a7c93...6aa4b55033
@@ -18,17 +18,10 @@ class CarState(CarStateBase):
|
|||||||
self.shifter_values = can_define.dv["Gear_Shift_by_Wire_FD1"]["TrnRng_D_RqGsm"]
|
self.shifter_values = can_define.dv["Gear_Shift_by_Wire_FD1"]["TrnRng_D_RqGsm"]
|
||||||
|
|
||||||
self.vehicle_sensors_valid = False
|
self.vehicle_sensors_valid = False
|
||||||
self.unsupported_platform = False
|
|
||||||
|
|
||||||
def update(self, cp, cp_cam):
|
def update(self, cp, cp_cam):
|
||||||
ret = car.CarState.new_message()
|
ret = car.CarState.new_message()
|
||||||
|
|
||||||
# Ford Q3 hybrid variants experience a bug where a message from the PCM sends invalid checksums,
|
|
||||||
# this must be root-caused before enabling support. Ford Q4 hybrids do not have this problem.
|
|
||||||
# TrnAin_Tq_Actl and its quality flag are only set on ICE platform variants
|
|
||||||
self.unsupported_platform = (cp.vl["VehicleOperatingModes"]["TrnAinTq_D_Qf"] == 0 and
|
|
||||||
self.CP.carFingerprint not in CANFD_CAR)
|
|
||||||
|
|
||||||
# Occasionally on startup, the ABS module recalibrates the steering pinion offset, so we need to block engagement
|
# Occasionally on startup, the ABS module recalibrates the steering pinion offset, so we need to block engagement
|
||||||
# The vehicle usually recovers out of this state within a minute of normal driving
|
# The vehicle usually recovers out of this state within a minute of normal driving
|
||||||
self.vehicle_sensors_valid = cp.vl["SteeringPinion_Data"]["StePinCompAnEst_D_Qf"] == 3
|
self.vehicle_sensors_valid = cp.vl["SteeringPinion_Data"]["StePinCompAnEst_D_Qf"] == 3
|
||||||
|
|||||||
@@ -109,8 +109,6 @@ class CarInterface(CarInterfaceBase):
|
|||||||
events = self.create_common_events(ret, extra_gears=[GearShifter.manumatic])
|
events = self.create_common_events(ret, extra_gears=[GearShifter.manumatic])
|
||||||
if not self.CS.vehicle_sensors_valid:
|
if not self.CS.vehicle_sensors_valid:
|
||||||
events.add(car.CarEvent.EventName.vehicleSensorsInvalid)
|
events.add(car.CarEvent.EventName.vehicleSensorsInvalid)
|
||||||
if self.CS.unsupported_platform:
|
|
||||||
events.add(car.CarEvent.EventName.startupNoControl)
|
|
||||||
|
|
||||||
ret.events = events.to_msg()
|
ret.events = events.to_msg()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user