|
|
|
@ -14,6 +14,7 @@ class CarState(CarStateBase): |
|
|
|
|
self.shifter_values = can_define.dv["Getriebe_11"]["GE_Fahrstufe"] |
|
|
|
|
elif CP.transmissionType == TransmissionType.direct: |
|
|
|
|
self.shifter_values = can_define.dv["EV_Gearshift"]["GearPosition"] |
|
|
|
|
self.hca_status_values = can_define.dv["LH_EPS_03"]["EPS_HCA_Status"] |
|
|
|
|
self.buttonStates = BUTTON_STATES.copy() |
|
|
|
|
|
|
|
|
|
def update(self, pt_cp, cam_cp, trans_type): |
|
|
|
@ -37,6 +38,11 @@ class CarState(CarStateBase): |
|
|
|
|
ret.steeringPressed = abs(ret.steeringTorque) > CarControllerParams.STEER_DRIVER_ALLOWANCE |
|
|
|
|
ret.yawRate = pt_cp.vl["ESP_02"]["ESP_Gierrate"] * (1, -1)[int(pt_cp.vl["ESP_02"]["ESP_VZ_Gierrate"])] * CV.DEG_TO_RAD |
|
|
|
|
|
|
|
|
|
# Verify EPS readiness to accept steering commands |
|
|
|
|
hca_status = self.hca_status_values.get(pt_cp.vl["LH_EPS_03"]["EPS_HCA_Status"]) |
|
|
|
|
ret.steerError = hca_status in ["DISABLED", "FAULT"] |
|
|
|
|
ret.steerWarning = hca_status in ["INITIALIZING", "REJECTED"] |
|
|
|
|
|
|
|
|
|
# Update gas, brakes, and gearshift. |
|
|
|
|
ret.gas = pt_cp.vl["Motor_20"]["MO_Fahrpedalrohwert_01"] / 100.0 |
|
|
|
|
ret.gasPressed = ret.gas > 0 |
|
|
|
@ -141,10 +147,6 @@ class CarState(CarStateBase): |
|
|
|
|
# later cruise-control button spamming. |
|
|
|
|
self.graMsgBusCounter = pt_cp.vl["GRA_ACC_01"]["COUNTER"] |
|
|
|
|
|
|
|
|
|
# Check to make sure the electric power steering rack is configured to |
|
|
|
|
# accept and respond to HCA_01 messages and has not encountered a fault. |
|
|
|
|
self.steeringFault = not pt_cp.vl["LH_EPS_03"]["EPS_HCA_Status"] |
|
|
|
|
|
|
|
|
|
# Additional safety checks performed in CarInterface. |
|
|
|
|
self.parkingBrakeSet = bool(pt_cp.vl["Kombi_01"]["KBI_Handbremse"]) # FIXME: need to include an EPB check as well |
|
|
|
|
ret.espDisabled = pt_cp.vl["ESP_21"]["ESP_Tastung_passiv"] != 0 |
|
|
|
@ -181,7 +183,7 @@ class CarState(CarStateBase): |
|
|
|
|
("MO_Kuppl_schalter", "Motor_14", 0), # Clutch switch |
|
|
|
|
("EPS_Lenkmoment", "LH_EPS_03", 0), # Absolute driver torque input |
|
|
|
|
("EPS_VZ_Lenkmoment", "LH_EPS_03", 0), # Driver torque input sign |
|
|
|
|
("EPS_HCA_Status", "LH_EPS_03", 0), # Steering rack HCA support configured |
|
|
|
|
("EPS_HCA_Status", "LH_EPS_03", 3), # EPS HCA control status |
|
|
|
|
("ESP_Tastung_passiv", "ESP_21", 0), # Stability control disabled |
|
|
|
|
("KBI_MFA_v_Einheit_02", "Einheiten_01", 0), # MPH vs KMH speed display |
|
|
|
|
("KBI_Handbremse", "Kombi_01", 0), # Manual handbrake applied |
|
|
|
|