Skip to content

Commit

Permalink
Gas Interceptor: another fix to gas pressed logic
Browse files Browse the repository at this point in the history
  • Loading branch information
geohot committed Mar 17, 2018
1 parent 196d383 commit 703c0b4
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions board/safety/safety_honda.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
// brake > 0mph

// these are set in the Honda safety hooks...this is the wrong place
const int gas_interceptor_threshold = 328;
int gas_interceptor_detected = 0;
int brake_prev = 0;
int gas_prev = 0;
Expand Down Expand Up @@ -55,10 +56,11 @@ static void honda_rx_hook(CAN_FIFOMailBox_TypeDef *to_push) {
if ((to_push->RIR>>21) == 0x201 && (to_push->RDTR & 0xf) == 6) {
gas_interceptor_detected = 1;
int gas_interceptor = ((to_push->RDLR & 0xFF) << 8) | ((to_push->RDLR & 0xFF00) >> 8);
if ((gas_interceptor > 328) && (gas_interceptor_prev <= 328)) {
if ((gas_interceptor > gas_interceptor_threshold) &&
(gas_interceptor_prev <= gas_interceptor_threshold)) {
controls_allowed = 0;
}
gas_interceptor_prev = gas_interceptor > 328;
gas_interceptor_prev = gas_interceptor;
}

// exit controls on rising edge of gas press if no interceptor
Expand All @@ -83,7 +85,8 @@ static int honda_tx_hook(CAN_FIFOMailBox_TypeDef *to_send) {

// disallow actuator commands if gas or brake (with vehicle moving) are pressed
// and the the latching controls_allowed flag is True
int pedal_pressed = gas_prev || gas_interceptor_prev || (brake_prev && ego_speed);
int pedal_pressed = gas_prev || (gas_interceptor_prev > gas_interceptor_threshold) ||
(brake_prev && ego_speed);
int current_controls_allowed = controls_allowed && !(pedal_pressed);

// BRAKE: safety check
Expand Down

0 comments on commit 703c0b4

Please sign in to comment.