|
|
@ -32,9 +32,8 @@ class CarState(CarStateBase): |
|
|
|
cp_wheels.vl["Wheel_Speeds"]["RR"], |
|
|
|
cp_wheels.vl["Wheel_Speeds"]["RR"], |
|
|
|
) |
|
|
|
) |
|
|
|
ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. |
|
|
|
ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. |
|
|
|
# Kalman filter, even though Subaru raw wheel speed is heaviliy filtered by default |
|
|
|
|
|
|
|
ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) |
|
|
|
ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) |
|
|
|
ret.standstill = ret.vEgoRaw < 0.01 |
|
|
|
ret.standstill = ret.vEgoRaw == 0 |
|
|
|
|
|
|
|
|
|
|
|
# continuous blinker signals for assisted lane change |
|
|
|
# continuous blinker signals for assisted lane change |
|
|
|
ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(50, cp.vl["Dashlights"]["LEFT_BLINKER"], |
|
|
|
ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(50, cp.vl["Dashlights"]["LEFT_BLINKER"], |
|
|
@ -50,7 +49,7 @@ class CarState(CarStateBase): |
|
|
|
ret.steeringAngleDeg = cp.vl["Steering_Torque"]["Steering_Angle"] |
|
|
|
ret.steeringAngleDeg = cp.vl["Steering_Torque"]["Steering_Angle"] |
|
|
|
ret.steeringTorque = cp.vl["Steering_Torque"]["Steer_Torque_Sensor"] |
|
|
|
ret.steeringTorque = cp.vl["Steering_Torque"]["Steer_Torque_Sensor"] |
|
|
|
ret.steeringTorqueEps = cp.vl["Steering_Torque"]["Steer_Torque_Output"] |
|
|
|
ret.steeringTorqueEps = cp.vl["Steering_Torque"]["Steer_Torque_Output"] |
|
|
|
|
|
|
|
|
|
|
|
steer_threshold = 75 if self.CP.carFingerprint in PREGLOBAL_CARS else 80 |
|
|
|
steer_threshold = 75 if self.CP.carFingerprint in PREGLOBAL_CARS else 80 |
|
|
|
ret.steeringPressed = abs(ret.steeringTorque) > steer_threshold |
|
|
|
ret.steeringPressed = abs(ret.steeringTorque) > steer_threshold |
|
|
|
|
|
|
|
|
|
|
@ -313,4 +312,4 @@ class CarState(CarStateBase): |
|
|
|
checks += CarState.get_global_es_distance_signals()[1] |
|
|
|
checks += CarState.get_global_es_distance_signals()[1] |
|
|
|
return CANParser(DBC[CP.carFingerprint]["pt"], signals, checks, 1) |
|
|
|
return CANParser(DBC[CP.carFingerprint]["pt"], signals, checks, 1) |
|
|
|
|
|
|
|
|
|
|
|
return None |
|
|
|
return None |
|
|
|