From 322eab5173a1f387c9ae1c3288ecfb38590eebbb Mon Sep 17 00:00:00 2001
From: FrogAi <91348155+FrogAi@users.noreply.github.com>
Date: Sun, 7 Jul 2024 05:26:08 -0700
Subject: [PATCH] Visuals - Custom Themes - Random Events
Enjoy a bit of unpredictability with random events that can occur during certain driving conditions. This is purely cosmetic and has no impact on driving controls!
---
selfdrive/controls/controlsd.py | 86 +++++++++++++++++-
selfdrive/controls/lib/drive_helpers.py | 2 +-
selfdrive/controls/lib/events.py | 73 +++++++++++++++
.../assets/random_events/images/firefox.gif | Bin 0 -> 962670 bytes
.../random_events/images/great_scott.gif | Bin 0 -> 527478 bytes
.../random_events/images/tree_fiddy.gif | Bin 0 -> 455346 bytes
.../random_events/images/weeb_wheel.gif | Bin 0 -> 125683 bytes
.../assets/random_events/sounds/angry.wav | Bin 0 -> 299114 bytes
.../assets/random_events/sounds/dejaVu.wav | Bin 0 -> 384042 bytes
.../assets/random_events/sounds/doc.wav | Bin 0 -> 249100 bytes
.../assets/random_events/sounds/fart.wav | Bin 0 -> 384426 bytes
.../assets/random_events/sounds/firefox.wav | Bin 0 -> 414836 bytes
.../assets/random_events/sounds/goat.wav | Bin 0 -> 166966 bytes
.../assets/random_events/sounds/hal9000.wav | Bin 0 -> 345556 bytes
.../assets/random_events/sounds/nessie.wav | Bin 0 -> 222956 bytes
.../assets/random_events/sounds/noice.wav | Bin 0 -> 180462 bytes
.../assets/random_events/sounds/uwu.wav | Bin 0 -> 44972 bytes
.../frogpilot/controls/frogpilot_planner.py | 6 ++
selfdrive/ui/qt/onroad/buttons.cc | 46 +++++++++-
selfdrive/ui/qt/onroad/buttons.h | 7 ++
selfdrive/ui/soundd.py | 39 +++++++-
selfdrive/ui/ui.cc | 2 +
selfdrive/ui/ui.h | 2 +
23 files changed, 252 insertions(+), 11 deletions(-)
create mode 100644 selfdrive/frogpilot/assets/random_events/images/firefox.gif
create mode 100644 selfdrive/frogpilot/assets/random_events/images/great_scott.gif
create mode 100644 selfdrive/frogpilot/assets/random_events/images/tree_fiddy.gif
create mode 100644 selfdrive/frogpilot/assets/random_events/images/weeb_wheel.gif
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/angry.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/dejaVu.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/doc.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/fart.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/firefox.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/goat.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/hal9000.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/nessie.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/noice.wav
create mode 100644 selfdrive/frogpilot/assets/random_events/sounds/uwu.wav
diff --git a/selfdrive/controls/controlsd.py b/selfdrive/controls/controlsd.py
index 9db1e2081..150173b7b 100644
--- a/selfdrive/controls/controlsd.py
+++ b/selfdrive/controls/controlsd.py
@@ -1,6 +1,7 @@
#!/usr/bin/env python3
import os
import math
+import random
import time
import threading
from typing import SupportsFloat
@@ -21,7 +22,7 @@ from openpilot.common.swaglog import cloudlog
from openpilot.selfdrive.car.car_helpers import get_car_interface, get_startup_event
from openpilot.selfdrive.controls.lib.alertmanager import AlertManager, set_offroad_alert
-from openpilot.selfdrive.controls.lib.drive_helpers import VCruiseHelper, clip_curvature
+from openpilot.selfdrive.controls.lib.drive_helpers import IMPERIAL_INCREMENT, VCruiseHelper, clip_curvature
from openpilot.selfdrive.controls.lib.events import Events, ET
from openpilot.selfdrive.controls.lib.latcontrol import LatControl, MIN_LATERAL_CONTROL_SPEED
from openpilot.selfdrive.controls.lib.latcontrol_pid import LatControlPID
@@ -194,10 +195,14 @@ class Controls:
self.always_on_lateral_active = False
self.drive_added = False
+ self.fcw_random_event_triggered = False
self.holiday_theme_alerted = False
+ self.no_entry_alert_played = False
+ self.no_entry_alert_triggered = False
self.onroad_distance_pressed = False
self.openpilot_crashed_triggered = False
self.previous_traffic_mode = False
+ self.random_event_triggered = False
self.resume_pressed = False
self.resume_previously_pressed = False
self.speed_check = False
@@ -208,7 +213,10 @@ class Controls:
self.display_timer = 0
self.drive_distance = 0
self.drive_time = 0
+ self.max_acceleration = 0
self.previous_speed_limit = 0
+ self.previous_v_cruise = 0
+ self.random_event_timer = 0
self.speed_limit_timer = 0
def set_initial_state(self):
@@ -411,6 +419,11 @@ class Controls:
planner_fcw = self.sm['longitudinalPlan'].fcw and self.enabled
if (planner_fcw or model_fcw) and not (self.CP.notCar and self.joystick_mode):
self.events.add(EventName.fcw)
+ self.fcw_random_event_triggered = not self.random_event_triggered
+ elif self.fcw_random_event_triggered and self.frogpilot_toggles.random_events:
+ self.events.add(EventName.yourFrogTriedToKillMe)
+ self.fcw_random_event_triggered = False
+ self.random_event_triggered = True
for m in messaging.drain_sock(self.log_sock, wait_for_one=False):
try:
@@ -553,6 +566,7 @@ class Controls:
if self.events.contains(ET.ENABLE):
if self.events.contains(ET.NO_ENTRY):
self.current_alert_types.append(ET.NO_ENTRY)
+ self.no_entry_alert_triggered = True
else:
if self.events.contains(ET.PRE_ENABLE):
@@ -665,8 +679,18 @@ class Controls:
turning = abs(lac_log.desiredLateralAccel) > 1.0
good_speed = CS.vEgo > 5
max_torque = abs(self.sm['carOutput'].actuatorsOutput.steer) > 0.99
- if undershooting and turning and good_speed and max_torque:
- lac_log.active and self.events.add(EventName.goatSteerSaturated if self.frogpilot_toggles.goat_scream else EventName.steerSaturated)
+ if undershooting and turning and good_speed and max_torque and not self.random_event_triggered:
+ event_choices = [1, 2]
+ if self.sm.frame % (10000 // len(event_choices)) == 0 and self.frogpilot_toggles.random_events:
+ event_choice = random.choice(event_choices)
+ if event_choice == 1:
+ lac_log.active and self.events.add(EventName.firefoxSteerSaturated)
+ self.params_memory.put_int("CurrentRandomEvent", 1)
+ elif event_choice == 2:
+ lac_log.active and self.events.add(EventName.goatSteerSaturated)
+ self.random_event_triggered = True
+ else:
+ lac_log.active and self.events.add(EventName.goatSteerSaturated if self.frogpilot_toggles.goat_scream else EventName.steerSaturated)
elif lac_log.saturated:
# TODO probably should not use dpath_points but curvature
dpath_points = model_v2.position.y
@@ -933,9 +957,56 @@ class Controls:
self.events.add(EventName.leadDeparting)
if not self.openpilot_crashed_triggered and os.path.isfile(os.path.join(sentry.CRASHES_DIR, 'error.txt')):
- self.events.add(EventName.openpilotCrashed)
+ if self.frogpilot_toggles.random_events:
+ self.events.add(EventName.openpilotCrashedRandomEvent)
+ else:
+ self.events.add(EventName.openpilotCrashed)
self.openpilot_crashed_triggered = True
+ if self.frogpilot_toggles.random_events and not self.random_event_triggered:
+ acceleration = CS.aEgo
+
+ if not CS.gasPressed:
+ self.max_acceleration = max(acceleration, self.max_acceleration)
+ else:
+ self.max_acceleration = 0
+
+ if 3.5 > self.max_acceleration >= 3.0 and acceleration < 1.5:
+ self.events.add(EventName.accel30)
+ self.params_memory.put_int("CurrentRandomEvent", 2)
+ self.random_event_triggered = True
+ self.max_acceleration = 0
+
+ elif 4.0 > self.max_acceleration >= 3.5 and acceleration < 1.5:
+ self.events.add(EventName.accel35)
+ self.params_memory.put_int("CurrentRandomEvent", 3)
+ self.random_event_triggered = True
+ self.max_acceleration = 0
+
+ elif self.max_acceleration >= 4.0 and acceleration < 1.5:
+ self.events.add(EventName.accel40)
+ self.params_memory.put_int("CurrentRandomEvent", 4)
+ self.random_event_triggered = True
+ self.max_acceleration = 0
+
+ if frogpilotPlan.takingCurveQuickly:
+ self.events.add(EventName.dejaVuCurve)
+ self.params_memory.put_int("CurrentRandomEvent", 5)
+ self.random_event_triggered = True
+
+ if self.no_entry_alert_triggered and not self.no_entry_alert_played:
+ self.events.add(EventName.hal9000)
+ self.no_entry_alert_played = True
+ self.random_event_triggered = True
+
+ conversion = 1 if self.is_metric else IMPERIAL_INCREMENT
+ v_cruise = max(self.v_cruise_helper.v_cruise_kph, self.v_cruise_helper.v_cruise_cluster_kph) * conversion
+
+ if 70 > v_cruise >= 69 and v_cruise != self.previous_v_cruise:
+ self.events.add(EventName.vCruise69)
+ self.random_event_triggered = True
+ self.previous_v_cruise = v_cruise
+
if self.frogpilot_toggles.speed_limit_alert and self.speed_limit_changed:
self.events.add(EventName.speedLimitChanged)
@@ -994,6 +1065,13 @@ class Controls:
self.experimental_mode = not self.experimental_mode
self.params.put_bool_nonblocking("ExperimentalMode", self.experimental_mode)
+ if self.random_event_triggered:
+ self.random_event_timer += DT_CTRL
+ if self.random_event_timer >= 4:
+ self.random_event_triggered = False
+ self.random_event_timer = 0
+ self.params_memory.remove("CurrentRandomEvent")
+
if self.sm.frame % 10 == 0 or self.resume_pressed:
self.resume_previously_pressed = self.resume_pressed
diff --git a/selfdrive/controls/lib/drive_helpers.py b/selfdrive/controls/lib/drive_helpers.py
index 4eef1c2d7..9c3ac1e6c 100644
--- a/selfdrive/controls/lib/drive_helpers.py
+++ b/selfdrive/controls/lib/drive_helpers.py
@@ -14,7 +14,7 @@ V_CRUISE_MAX = 145
V_CRUISE_UNSET = 255
V_CRUISE_INITIAL = 40
V_CRUISE_INITIAL_EXPERIMENTAL_MODE = 105
-IMPERIAL_INCREMENT = 1.6 # should be CV.MPH_TO_KPH, but this causes rounding errors
+IMPERIAL_INCREMENT = round(CV.MPH_TO_KPH, 1) # round here to avoid rounding errors incrementing set speed
MIN_SPEED = 1.0
CONTROL_N = 17
diff --git a/selfdrive/controls/lib/events.py b/selfdrive/controls/lib/events.py
index 09af3a436..6780ba3d8 100755
--- a/selfdrive/controls/lib/events.py
+++ b/selfdrive/controls/lib/events.py
@@ -1117,6 +1117,79 @@ EVENTS: dict[int, dict[str, Alert | AlertCallbackType]] = {
AlertStatus.normal, AlertSize.small,
Priority.LOWEST, VisualAlert.none, AudibleAlert.none, .1, alert_rate=0.75),
},
+
+ # Random Events
+ EventName.accel30: {
+ ET.WARNING: Alert(
+ "UwU u went a bit fast there!",
+ "(⁄ ⁄•⁄ω⁄•⁄ ⁄)",
+ AlertStatus.frogpilot, AlertSize.mid,
+ Priority.LOW, VisualAlert.none, AudibleAlert.uwu, 4.),
+ },
+
+ EventName.accel35: {
+ ET.WARNING: Alert(
+ "I ain't giving you no tree-fiddy",
+ "You damn Loch Ness Monsta!",
+ AlertStatus.frogpilot, AlertSize.mid,
+ Priority.LOW, VisualAlert.none, AudibleAlert.nessie, 4.),
+ },
+
+ EventName.accel40: {
+ ET.WARNING: Alert(
+ "Great Scott!",
+ "🚗💨",
+ AlertStatus.frogpilot, AlertSize.mid,
+ Priority.LOW, VisualAlert.none, AudibleAlert.doc, 4.),
+ },
+
+ EventName.dejaVuCurve: {
+ ET.WARNING: Alert(
+ "♬♪ Deja vu! ᕕ(⌐■_■)ᕗ ♪♬",
+ "🏎️",
+ AlertStatus.frogpilot, AlertSize.mid,
+ Priority.LOW, VisualAlert.none, AudibleAlert.dejaVu, 4.),
+ },
+
+ EventName.firefoxSteerSaturated: {
+ ET.WARNING: Alert(
+ "Turn Exceeds Steering Limit",
+ "IE Has Stopped Responding...",
+ AlertStatus.userPrompt, AlertSize.mid,
+ Priority.LOW, VisualAlert.steerRequired, AudibleAlert.firefox, 4.),
+ },
+
+ EventName.hal9000: {
+ ET.WARNING: Alert(
+ "I'm sorry Dave",
+ "I'm afraid I can't do that...",
+ AlertStatus.normal, AlertSize.mid,
+ Priority.HIGH, VisualAlert.none, AudibleAlert.hal9000, 4.),
+ },
+
+ EventName.openpilotCrashedRandomEvent: {
+ ET.PERMANENT: Alert(
+ "openpilot crashed 💩",
+ "Please post the 'Error Log' in the FrogPilot Discord!",
+ AlertStatus.normal, AlertSize.mid,
+ Priority.HIGHEST, VisualAlert.none, AudibleAlert.fart, 10.),
+ },
+
+ EventName.vCruise69: {
+ ET.PERMANENT: Alert(
+ "Lol 69",
+ "",
+ AlertStatus.frogpilot, AlertSize.small,
+ Priority.LOW, VisualAlert.none, AudibleAlert.noice, 2.),
+ },
+
+ EventName.yourFrogTriedToKillMe: {
+ ET.PERMANENT: Alert(
+ "Your Frog tried to kill me...",
+ "👺",
+ AlertStatus.frogpilot, AlertSize.mid,
+ Priority.MID, VisualAlert.none, AudibleAlert.angry, 5.),
+ },
}
diff --git a/selfdrive/frogpilot/assets/random_events/images/firefox.gif b/selfdrive/frogpilot/assets/random_events/images/firefox.gif
new file mode 100644
index 0000000000000000000000000000000000000000..ff29df21b14a2e241585c885de2f202b7c290b4c
GIT binary patch
literal 962670
zcmZ^qRag|x`}Vh4dg+EGq+>xklnx0&I;A_7PGyTu>23r8k!Gb!8bqZ9M5Id;R7~FQ
z?|=Tz!OR@YHS-+ITr=~z??*>ZTVBEG7vLA*2jG7N4u&wpptSUiLNKU22@J(Vi{urM
z6caZ
wR~7~
zA{dP#1hu{73_N8`{BG%oi`WGTn?=i7L>L;FSeaS*n;C_=+G!fP=$Lz2*m!GMhX>er
zK5z|3`}pC7*;3?gXWmyxQBlt@HLSF^%JR3&@JBZU`{onE+mb`Z@**M11Tu|erhD;l
z-2!^!Y$mfJUPFSAd7`XMyns!vw0$<4d!C|8vWR<*yjua>u!_{AmfXCF(&{;rbsd#e
zE1hizvqJ}i!%IGg8sx(kPNyb%$4++VPDbZGHrGB5&wfFd26@jqh2UqrZXLp&oje}B
zw|x3Ue0ybmJEVMjL<0MzgZh+$UuroJblnmyy%Y7rQf$JKbi4}8eew)~3oXO){ruBC
z!;(EB^CO}Pw0vp}{p;?9JhP0b(~0P|eAMX?QyciGmfdZH(`TH^cajS|!Q(N)<2@$q
zH-hw@z(;9q*iJqt^C=Jn)hVD1a|`0kLD
z?uh(u70jFxc2SA2q=H}5!%ylHW-OB?t+Qq{2upg2D;n`@2C18-X^TdgTedlirrBFI
z`D+i$x7^cSxn<9U7EZX9y!9+vaw&cvQ#IyQwGsGYIjna5e&)7$$+mUzN9(E`&-(qK
z_LJcDlhDq?i2k#vp)ZMq!Y9dDFS0Y*DvOeG>f=hfQ)-Dtjl^dy9b<(_uNyOFd!N4<
z>&BOjB-Tx2J)bD-m?ku>Cbex85LcfPr&@a_YWtRwUhZZ0?RHMQZWvqZnp!U&JIZ`@
zQ8&5Y{PwhE;jCxzh`9cJX5sDR(#FKv!Q0J)SDTkJA5T_3olNh1`@cQ@|E;)h$c?nj
zOf}SuwWP#RVBmiPxqm_^DgM{~6VlPsM!LCrg}AvQ!@WX0k)9zT=wL+&3AZQ@FL!a5
z06z&gcXv0JkYIr5|5o_lnF7FX06;jqZcD{59!@80H`!7-8hNqxl2^{Js3V1`T(!ECF8Jm32=bfXFr1r*@7mlOJD!SC1%H`Vx_1}wj|6ZL|Ed_}lq}k6BTU}m!oA-YQJ1gXu_k2J&92zE&Qk6)cndd&@
zJm1zR)jQ1fTzM@CEes`HCYg2k?JZA5&-Qi)j4SdMiTp5R?JzFesCfClXq2>X!Su>L
zaDR5|c(wi0W|Ly5gS5YL+zn5zp{@Lw*vo$ouLu4PM}D4UkoYUPauMGx!_);a%ik(mIlG5U`{$MKsDQ;n*@Sei0+(A&8
zN!=mv6>vJDMwKp2`n_+kgM$2i{ik%r_}kX9kSq|HU|~I0JCvJ`1@~B_;mMT1?S`xL
z1a1qjTLx~0V56i;`e#fI3^sPb_7PKqvX78^nFGdKTw>^%ZrExb}7BK5q=#BGwdik;8RJL
z>y8H{v-SIT4a0=$E2pYszt{m(6l<7@u%0AZ{
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