@ -153,6 +153,13 @@ class SoftDisableAlert(Alert):
AudibleAlert . warningSoft , 2. ) ,
# less harsh version of SoftDisable, where the condition is user-triggered
class UserSoftDisableAlert ( SoftDisableAlert ) :
def __init__ ( self , alert_text_2 ) :
super ( ) . __init__ ( alert_text_2 ) ,
self . alert_text_1 = " openpilot will disengage "
class ImmediateDisableAlert ( Alert ) :
def __init__ ( self , alert_text_2 ) :
super ( ) . __init__ ( " TAKE CONTROL IMMEDIATELY " , alert_text_2 ,
@ -247,7 +254,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
} ,
EventName . controlsInitializing : {
ET . NO_ENTRY : NoEntryAlert ( " Controls Initializing" ) ,
ET . NO_ENTRY : NoEntryAlert ( " System Initializing" ) ,
} ,
EventName . startup : {
@ -281,7 +288,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
} ,
EventName . invalidLkasSetting : {
ET . PERMANENT : NormalPermanentAlert ( " Stock LKAS is turned on " ,
ET . PERMANENT : NormalPermanentAlert ( " Stock LKAS is on " ,
" Turn off stock LKAS to engage " ) ,
} ,
@ -293,8 +300,8 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
# detects the use of a community feature it switches to dashcam mode
# until these features are allowed using a toggle in settings.
EventName . communityFeatureDisallowed : {
ET . PERMANENT : NormalPermanentAlert ( " openpilot Not A vailable " ,
" Enable Community Features in Settings to Engage " ) ,
ET . PERMANENT : NormalPermanentAlert ( " openpilot Una vailable " ,
" Enable Community Features in Settings " ) ,
} ,
# openpilot doesn't recognize the car. This switches openpilot into a
@ -325,9 +332,9 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . ldw : {
ET . PERMANENT : Alert (
" TAKE CONTROL " ,
" Lane Departure Detected " ,
AlertStatus . userPrompt , AlertSize . mid ,
" " ,
AlertStatus . userPrompt , AlertSize . small ,
Priority . LOW , VisualAlert . ldw , AudibleAlert . prompt , 3. ) ,
} ,
@ -335,7 +342,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . gasPressed : {
ET . PRE_ENABLE : Alert (
" openpilot will not brake while gas pressed " ,
" Release Gas Pedal to Engage " ,
" " ,
AlertStatus . normal , AlertSize . small ,
Priority . LOWEST , VisualAlert . none , AudibleAlert . none , .1 , creation_delay = 1. ) ,
@ -364,7 +371,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . preDriverDistracted : {
ET . WARNING : Alert (
" KEEP EYES ON ROAD: Driver Distracted " ,
" Pay Attention " ,
" " ,
AlertStatus . normal , AlertSize . small ,
Priority . LOW , VisualAlert . none , AudibleAlert . none , .1 ) ,
@ -372,7 +379,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . promptDriverDistracted : {
ET . WARNING : Alert (
" KEEP EYES ON ROAD " ,
" Pay Attention " ,
" Driver Distracted " ,
AlertStatus . userPrompt , AlertSize . mid ,
Priority . MID , VisualAlert . steerRequired , AudibleAlert . promptDistracted , .1 ) ,
@ -388,7 +395,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . preDriverUnresponsive : {
ET . WARNING : Alert (
" TOUCH STEERING WHEEL : No Face Detected " ,
" Touch Steering Wheel : No Face Detected " ,
" " ,
AlertStatus . normal , AlertSize . small ,
Priority . LOW , VisualAlert . steerRequired , AudibleAlert . none , .1 , alert_rate = 0.75 ) ,
@ -396,7 +403,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . promptDriverUnresponsive : {
ET . WARNING : Alert (
" TOUCH STEERING WHEEL " ,
" Touch Steering Wheel " ,
" Driver Unresponsive " ,
AlertStatus . userPrompt , AlertSize . mid ,
Priority . MID , VisualAlert . steerRequired , AudibleAlert . promptDistracted , .1 ) ,
@ -421,7 +428,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . resumeRequired : {
ET . WARNING : Alert (
" STOPPED " ,
" Press Resume to Move " ,
" Press Resume to Go " ,
AlertStatus . userPrompt , AlertSize . mid ,
Priority . LOW , VisualAlert . none , AudibleAlert . none , .2 ) ,
} ,
@ -464,7 +471,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . steerSaturated : {
ET . WARNING : Alert (
" TAKE CONTROL " ,
" Take Control " ,
" Turn Exceeds Steering Limit " ,
AlertStatus . userPrompt , AlertSize . mid ,
Priority . LOW , VisualAlert . steerRequired , AudibleAlert . promptRepeat , 1. ) ,
@ -517,12 +524,12 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . parkBrake : {
ET . USER_DISABLE : EngagementAlert ( AudibleAlert . disengage ) ,
ET . NO_ENTRY : NoEntryAlert ( " Park Brake Engaged " ) ,
ET . NO_ENTRY : NoEntryAlert ( " Parking Brake Engaged " ) ,
} ,
EventName . pedalPressed : {
ET . USER_DISABLE : EngagementAlert ( AudibleAlert . disengage ) ,
ET . NO_ENTRY : NoEntryAlert ( " Pedal Pressed During Attempt " ,
ET . NO_ENTRY : NoEntryAlert ( " Pedal Pressed " ,
visual_alert = VisualAlert . brakePressed ) ,
} ,
@ -533,7 +540,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
EventName . wrongCruiseMode : {
ET . USER_DISABLE : EngagementAlert ( AudibleAlert . disengage ) ,
ET . NO_ENTRY : NoEntryAlert ( " Enable Adaptive Cruise" ) ,
ET . NO_ENTRY : NoEntryAlert ( " Adaptive Cruise Disabled " ) ,
} ,
EventName . steerTempUnavailable : {
@ -579,7 +586,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
} ,
EventName . wrongGear : {
ET . SOFT_DISABLE : SoftDisableAlert ( " Gear not D " ) ,
ET . SOFT_DISABLE : User SoftDisableAlert( " Gear not D " ) ,
ET . NO_ENTRY : NoEntryAlert ( " Gear not D " ) ,
} ,
@ -601,12 +608,12 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
} ,
EventName . doorOpen : {
ET . SOFT_DISABLE : SoftDisableAlert ( " Door Open " ) ,
ET . SOFT_DISABLE : User SoftDisableAlert( " Door Open " ) ,
ET . NO_ENTRY : NoEntryAlert ( " Door Open " ) ,
} ,
EventName . seatbeltNotLatched : {
ET . SOFT_DISABLE : SoftDisableAlert ( " Seatbelt Unlatched " ) ,
ET . SOFT_DISABLE : User SoftDisableAlert( " Seatbelt Unlatched " ) ,
ET . NO_ENTRY : NoEntryAlert ( " Seatbelt Unlatched " ) ,
} ,
@ -789,7 +796,7 @@ EVENTS: Dict[int, Dict[str, Union[Alert, Callable[[Any, messaging.SubMaster, boo
Priority . HIGH , VisualAlert . none , AudibleAlert . disengage , 3. ) ,
} ,
# When the car is driving faster than most cars in the training data the model outputs can be unpredictable
# When the car is driving faster than most cars in the training data, the model outputs can be unpredictable.
EventName . speedTooHigh : {
ET . WARNING : Alert (
" Speed Too High " ,