diff --git a/selfdrive/car/mazda/carcontroller.py b/selfdrive/car/mazda/carcontroller.py index 513233987..f463caa9e 100644 --- a/selfdrive/car/mazda/carcontroller.py +++ b/selfdrive/car/mazda/carcontroller.py @@ -92,7 +92,7 @@ class CarController(CarControllerBase): if CS.out.standstill: # if we're stopped if not self.hold_delay.active(): # and we have been stopped for more than hold_delay duration. This prevents a hard brake if we aren't fully stopped. if (CC.cruiseControl.resume or CC.cruiseControl.override or CS.out.gasPressed or - CC.actuators.longControlState == LongCtrlState.starting): # and we want to resume + (CC.actuators.longControlState == LongCtrlState.starting)): # and we want to resume self.resume_timer.reset() # reset the resume timer so its active else: # otherwise we're holding hold = self.hold_timer.active() # hold for 6s. This allows the electric brake to hold the car. @@ -102,7 +102,7 @@ class CarController(CarControllerBase): self.hold_delay.reset() # reset the hold delay resume = self.resume_timer.active() # stay on for 0.5s to release the brake. This allows the car to move. - can_sends.append(mazdacan.create_acc_cmd(self.packer, CS.acc, CC.actuators.accel, hold, resume)) + can_sends.append(mazdacan.create_acc_cmd(self, self.packer, CS, CC, hold, resume)) # send steering command can_sends.extend(mazdacan.create_steering_control(self.packer, self.CP, diff --git a/selfdrive/car/mazda/mazdacan.py b/selfdrive/car/mazda/mazdacan.py index 26d197f8a..950c267a3 100644 --- a/selfdrive/car/mazda/mazdacan.py +++ b/selfdrive/car/mazda/mazdacan.py @@ -177,6 +177,7 @@ STATIC_DATA_365 = [0xFFF7FE7F, 0xFBFF3FC] STATIC_DATA_366 = [0xFFF7FE7F, 0xFBFF3FC] static_data_list = [STATIC_DATA_361, STATIC_DATA_362, STATIC_DATA_363, STATIC_DATA_364, STATIC_DATA_365, STATIC_DATA_366] +# GEN1 radar interceptor def create_radar_command(packer, frame, CC, CS, hold): accel = 0 ret = [] @@ -228,13 +229,15 @@ def create_radar_command(packer, frame, CC, CS, hold): return ret -def create_acc_cmd(packer, values, accel, hold, resume): +# GEN2 new mazdas +def create_acc_cmd(self, packer, CS, CC, hold, resume): + values = CS.acc msg_name = "ACC" bus = 2 if (values["ACC_ENABLED"]): - if Params().get_bool("ExperimentalLongitudinalEnabled"): - values["ACCEL_CMD"] = (accel * 240) + 2000 + if Params().get_bool("ExperimentalLongitudinalEnabled") and CC.longActive: + values["ACCEL_CMD"] = (CC.actuators.accel * 240) + 2000 values["HOLD"] = hold values["RESUME"] = resume else: @@ -242,3 +245,4 @@ def create_acc_cmd(packer, values, accel, hold, resume): return packer.make_can_msg(msg_name, bus, values) +