wip
@@ -1,13 +1,28 @@
|
|||||||
- fix drive mode
|
|
||||||
- on ready, just logo with 'ready' (auto gen)
|
- disable changing lanes notices (tiny indicator is fine)
|
||||||
- on ready, screen timeout 3 minutes
|
- speed limit display / over speed display
|
||||||
- on settings, screen timeout 3 minutes
|
- hack the buttons so we can press them
|
||||||
|
- auto set speed limit
|
||||||
|
- conditional experimenal mode
|
||||||
|
- auto set hvac
|
||||||
|
- fix gps data
|
||||||
|
- disable cc on start if already enabled
|
||||||
|
- chirp on stoplight
|
||||||
|
- resume when lead moving away
|
||||||
|
- hold down button to turn off screen, remember setting
|
||||||
|
|
||||||
|
- package up lateral pause lane change feature for merge into frogpilot
|
||||||
|
|
||||||
|
- bluetooth dummy device
|
||||||
|
- dash cam
|
||||||
|
|
||||||
|
- put dev logo in repo
|
||||||
|
- better detection of if logo is installed even without it generated (md5 in persistant dirs?)
|
||||||
|
|
||||||
- define forced settings
|
- define forced settings
|
||||||
- define default settings
|
- define default settings
|
||||||
- update dash symbols logic
|
- update dash symbols logic
|
||||||
- update on road gui to take out dumb widgets
|
|
||||||
- write forced disable lane change mode feature
|
|
||||||
- write automations node script, have it read data from stdin / write to stdout
|
|
||||||
- fix webview
|
- fix webview
|
||||||
- write hello world new settings menu
|
- write hello world new settings menu
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_steer):
|
|||||||
ret = []
|
ret = []
|
||||||
|
|
||||||
values = {
|
values = {
|
||||||
"LKA_MODE": 2, # CP: Whats this?
|
"LKA_MODE": 2,
|
||||||
"LKA_ICON": 2 if enabled else 1 if lat_active else 0, # right mode icon
|
"LKA_ICON": 2 if enabled else 1 if lat_active else 0, # right mode icon
|
||||||
"TORQUE_REQUEST": apply_steer,
|
"TORQUE_REQUEST": apply_steer,
|
||||||
"LKA_ASSIST": 0,
|
"LKA_ASSIST": 0,
|
||||||
@@ -137,7 +137,8 @@ def create_lfahda_cluster(packer, CAN, enabled, lat_active):
|
|||||||
# 0 off, 1 gray, 2 green, 3 blinking (wheel icon)
|
# 0 off, 1 gray, 2 green, 3 blinking (wheel icon)
|
||||||
# CP: Is this actually the wheel? Might this be the HDA2 thing?
|
# CP: Is this actually the wheel? Might this be the HDA2 thing?
|
||||||
"HDA_ICON": 0, # Intention is to have this represent stock HDA mode
|
"HDA_ICON": 0, # Intention is to have this represent stock HDA mode
|
||||||
"LFA_ICON": 0 if no_lat_lane_change else 2 if enabled else 1 if lat_active else 0,
|
"LFA_ICON": 0,
|
||||||
|
# "LFA_ICON": 0 if no_lat_lane_change else 2 if enabled else 1 if lat_active else 0,
|
||||||
}
|
}
|
||||||
|
|
||||||
return packer.make_can_msg("LFAHDA_CLUSTER", CAN.ECAN, values)
|
return packer.make_can_msg("LFAHDA_CLUSTER", CAN.ECAN, values)
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 117 KiB After Width: | Height: | Size: 1.4 KiB |
BIN
selfdrive/clearpilot/theme/clearpilot/images/boot_logo.png~
Normal file
|
After Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 117 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
BIN
selfdrive/clearpilot/theme/clearpilot_release/images/ready.png
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
selfdrive/clearpilot/theme/clearpilot_release/images/ready.png~
Normal file
|
After Width: | Height: | Size: 53 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
BIN
selfdrive/clearpilot/theme/pacman_dev/images/button_settings.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
BIN
selfdrive/clearpilot/theme/pacman_dev/images/turn_signal_1.png
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
selfdrive/clearpilot/theme/pacman_dev/images/turn_signal_1.png~
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
BIN
selfdrive/clearpilot/theme/pacman_dev/images/turn_signal_2.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
selfdrive/clearpilot/theme/pacman_dev/images/turn_signal_3.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
selfdrive/clearpilot/theme/pacman_dev/images/turn_signal_4.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
selfdrive/clearpilot/theme/pacman_dev/sounds/disengage.wav
Normal file
BIN
selfdrive/clearpilot/theme/pacman_dev/sounds/engage.wav
Normal file
BIN
selfdrive/clearpilot/theme/pacman_dev/sounds/firefox.wav
Normal file
BIN
selfdrive/clearpilot/theme/pacman_dev/sounds/prompt.wav
Normal file
BIN
selfdrive/clearpilot/theme/pacman_dev/sounds/refuse.wav
Normal file
BIN
selfdrive/clearpilot/theme/pacman_dev/sounds/warning_soft.wav
Normal file
@@ -568,19 +568,23 @@ EVENTS: dict[int, dict[str, Alert | AlertCallbackType]] = {
|
|||||||
ET.WARNING: below_steer_speed_alert,
|
ET.WARNING: below_steer_speed_alert,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
# Clearpilot - move this to status bar only on lane_change_suspend_lat
|
||||||
|
# restore small size on other modes
|
||||||
EventName.preLaneChangeLeft: {
|
EventName.preLaneChangeLeft: {
|
||||||
ET.WARNING: Alert(
|
ET.WARNING: Alert(
|
||||||
"Steer Left to Start Lane Change Once Safe",
|
"Steer Left to Start Lane Change Once Safe",
|
||||||
"",
|
"",
|
||||||
AlertStatus.normal, AlertSize.small,
|
AlertStatus.normal, AlertSize.none,
|
||||||
Priority.LOW, VisualAlert.none, AudibleAlert.none, .1, alert_rate=0.75),
|
Priority.LOW, VisualAlert.none, AudibleAlert.none, .1, alert_rate=0.75),
|
||||||
},
|
},
|
||||||
|
|
||||||
|
# Clearpilot - move this to status bar only on lane_change_suspend_lat
|
||||||
|
# restore small size on other modes
|
||||||
EventName.preLaneChangeRight: {
|
EventName.preLaneChangeRight: {
|
||||||
ET.WARNING: Alert(
|
ET.WARNING: Alert(
|
||||||
"Steer Right to Start Lane Change Once Safe",
|
"Steer Right to Start Lane Change Once Safe",
|
||||||
"",
|
"",
|
||||||
AlertStatus.normal, AlertSize.small,
|
AlertStatus.normal, AlertSize.none,
|
||||||
Priority.LOW, VisualAlert.none, AudibleAlert.none, .1, alert_rate=0.75),
|
Priority.LOW, VisualAlert.none, AudibleAlert.none, .1, alert_rate=0.75),
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -592,11 +596,12 @@ EVENTS: dict[int, dict[str, Alert | AlertCallbackType]] = {
|
|||||||
Priority.LOW, VisualAlert.none, AudibleAlert.prompt, .1),
|
Priority.LOW, VisualAlert.none, AudibleAlert.prompt, .1),
|
||||||
},
|
},
|
||||||
|
|
||||||
|
# Clearpilot - move this to status bar only on lane_change_suspend_lat
|
||||||
EventName.laneChange: {
|
EventName.laneChange: {
|
||||||
ET.WARNING: Alert(
|
ET.WARNING: Alert(
|
||||||
"Changing Lanes",
|
"Changing Lanes",
|
||||||
"",
|
"",
|
||||||
AlertStatus.normal, AlertSize.small,
|
AlertStatus.normal, AlertSize.none,
|
||||||
Priority.LOW, VisualAlert.none, AudibleAlert.none, .1),
|
Priority.LOW, VisualAlert.none, AudibleAlert.none, .1),
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -98,6 +98,11 @@ void OnroadWindow::updateState(const UIState &s) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
QColor bgColor = bg_colors[s.status];
|
QColor bgColor = bg_colors[s.status];
|
||||||
|
// Clearpilot
|
||||||
|
if (paramsMemory.getInt("no_lat_lane_change") == 1) {
|
||||||
|
bg = bg_colors[STATUS_DISENGAGED];
|
||||||
|
}
|
||||||
|
|
||||||
Alert alert = Alert::get(*(s.sm), s.scene.started_frame);
|
Alert alert = Alert::get(*(s.sm), s.scene.started_frame);
|
||||||
alerts->updateAlert(alert);
|
alerts->updateAlert(alert);
|
||||||
|
|
||||||
@@ -109,11 +114,6 @@ void OnroadWindow::updateState(const UIState &s) {
|
|||||||
|
|
||||||
nvg->updateState(s);
|
nvg->updateState(s);
|
||||||
|
|
||||||
// Clearpilot
|
|
||||||
if (paramsMemory.getInt("no_lat_lane_change") == 1) {
|
|
||||||
bg = bg_colors[STATUS_DISENGAGED];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (bg != bgColor) {
|
if (bg != bgColor) {
|
||||||
// repaint border
|
// repaint border
|
||||||
bg = bgColor;
|
bg = bgColor;
|
||||||
@@ -899,29 +899,25 @@ void AnnotatedCameraWidget::drawLaneLines(QPainter &painter, const UIState *s) {
|
|||||||
painter.setBrush(path_gradient);
|
painter.setBrush(path_gradient);
|
||||||
painter.drawPolygon(scene.track_vertices);
|
painter.drawPolygon(scene.track_vertices);
|
||||||
|
|
||||||
// Paint path edges
|
// Paint path edges ,Use current background color
|
||||||
// don't paint if not engaged color
|
QColor bgColor = bg_colors[uiState().status];
|
||||||
// if (bg != bg_colors[STATUS_DISENGAGED]) {
|
// Clearpilot
|
||||||
// Use current background color
|
if (paramsMemory.getInt("no_lat_lane_change") == 1) {
|
||||||
|
bgColor = bg_colors[STATUS_DISENGAGED];
|
||||||
|
}
|
||||||
|
if (bgColor != bg_colors[STATUS_DISENGAGED]) {
|
||||||
QLinearGradient edge_gradient;
|
QLinearGradient edge_gradient;
|
||||||
// QColor test_color = QColor(201, 41, 204, 0xd1);
|
edge_gradient.setColorAt(0.0, QColor(bgColor.red(), bgColor.green(), bgColor.blue(), static_cast<int>(255)));
|
||||||
QColor test_color;
|
edge_gradient.setColorAt(0.5, QColor(bgColor.red(), bgColor.green(), bgColor.blue(), static_cast<int>(255 * 0.7) ));
|
||||||
test_color = bg;
|
edge_gradient.setColorAt(1.0, QColor(bgColor.red(), bgColor.green(), bg.blue(), static_cast<int>(255 * 0.5)));
|
||||||
// edge_gradient.setColorAt(0.0, QColor(test_color.red(), test_color.green(), test_color.blue(), static_cast<int>(OTHER_LANE_ALPHA * 255)));
|
|
||||||
// edge_gradient.setColorAt(0.5, QColor(test_color.red(), test_color.green(), test_color.blue(), static_cast<int>(OTHER_LANE_ALPHA * 255 * 0.5)));
|
|
||||||
// edge_gradient.setColorAt(1.0, QColor(test_color.red(), test_color.green(), test_color.blue(), static_cast<int>(OTHER_LANE_ALPHA * 255 * 0.1)));
|
|
||||||
edge_gradient.setColorAt(0.0, QColor(bg.red(), bg.green(), bg.blue(), static_cast<int>(255)));
|
|
||||||
edge_gradient.setColorAt(0.5, QColor(bg.red(), bg.green(), bg.blue(), static_cast<int>(255 * 0.7) ));
|
|
||||||
edge_gradient.setColorAt(1.0, QColor(bg.red(), bg.green(), bg.blue(), static_cast<int>(255 * 0.5)));
|
|
||||||
|
|
||||||
QPainterPath path;
|
QPainterPath path;
|
||||||
path.addPolygon(scene.track_vertices);
|
path.addPolygon(scene.track_vertices);
|
||||||
path.addPolygon(scene.track_edge_vertices);
|
path.addPolygon(scene.track_edge_vertices);
|
||||||
|
|
||||||
// painter.setBrush(path_gradient);
|
|
||||||
painter.setBrush(edge_gradient);
|
painter.setBrush(edge_gradient);
|
||||||
painter.drawPath(path);
|
painter.drawPath(path);
|
||||||
// }
|
}
|
||||||
|
|
||||||
// Paint blindspot path
|
// Paint blindspot path
|
||||||
if (scene.blind_spot_path) {
|
if (scene.blind_spot_path) {
|
||||||
|
|||||||
24
system/clearpilot/loading_messages.txt
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
Ignoring back seat drivers
|
||||||
|
Exagerating ETAs
|
||||||
|
Excessivising spoken directions
|
||||||
|
Coping with rush hour
|
||||||
|
Aplifying engine noise
|
||||||
|
Embellishing odometer milestones
|
||||||
|
Battle hardening high beams
|
||||||
|
Supercharging racing stripes
|
||||||
|
Entwining software threading
|
||||||
|
Exagerating window tint levels
|
||||||
|
Thinning traffic densities
|
||||||
|
Chiseling GPS precision
|
||||||
|
Garnishing dashboard displays
|
||||||
|
Unfolding map details
|
||||||
|
Sprinkling road salt forecasts
|
||||||
|
Skimming speed limit tolerances
|
||||||
|
Fudging commute predictions
|
||||||
|
Contemplating the meaning of life
|
||||||
|
Compiling cospiracy theories
|
||||||
|
Scanning road trip snacks
|
||||||
|
Cataloguing snacks
|
||||||
|
Elevating tire rotation into ballet
|
||||||
|
Preparing for best behavior
|
||||||
|
Pep talking driving models
|
||||||
BIN
system/clearpilot/notes/oscarpilot_boot.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
system/clearpilot/notes/oscarpilot_ready.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 77 KiB |
@@ -2,20 +2,18 @@
|
|||||||
|
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
# Todo: Put stock image in the repo, so we can reset the stock with it if some other
|
|
||||||
# fork changed it and failed to restore it on uninstall
|
|
||||||
|
|
||||||
# Check if md5sum of /usr/comma/bg.jpg is not equal to md5sum of /data/openpilot/system/clearpilot/startup_logo/bg.jpg
|
# Check if md5sum of /usr/comma/bg.jpg is not equal to md5sum of /data/openpilot/system/clearpilot/startup_logo/bg.jpg
|
||||||
if [ "$(md5sum /usr/comma/bg.jpg | awk '{print $1}')" != "$(md5sum /data/openpilot/system/clearpilot/startup_logo/bg.jpg | awk '{print $1}')" ]; then
|
if [ "$(md5sum /usr/comma/bg.jpg | awk '{print $1}')" != "$(md5sum /data/openpilot/system/clearpilot/startup_logo/bg.jpg | awk '{print $1}')" ]; then
|
||||||
|
|
||||||
bash /data/openpilot/system/clearpilot/startup_logo/generate_logo.sh
|
bash /data/openpilot/system/clearpilot/startup_logo/generate_logo.sh
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$(md5sum /usr/comma/bg.jpg | awk '{print $1}')" != "$(md5sum /data/openpilot/system/clearpilot/startup_logo/bg.jpg | awk '{print $1}')" ]; then
|
||||||
|
|
||||||
# If /usr/comma/bg.org does not exist
|
# If /usr/comma/bg.org does not exist
|
||||||
if [ ! -f /usr/comma/bg.org ]; then
|
if [ ! -f /usr/comma/bg.org ]; then
|
||||||
# if [[ "$(md5sum /usr/comma/bg.jpg | awk '{print $1}')" == "642380ba4c0f00b16e9cf6e613f43eec" ]]; then
|
sudo mount -o remount,rw /
|
||||||
sudo mount -o remount,rw /
|
sudo cp /data/openpilot/system/clearpilot/startup_logo/bg.org /usr/comma/bg.org
|
||||||
sudo cp /data/openpilot/system/clearpilot/startup_logo/bg.org /usr/comma/bg.org
|
|
||||||
# fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$(md5sum /usr/comma/bg.org | awk '{print $1}')" != "642380ba4c0f00b16e9cf6e613f43eec" ]]; then
|
if [[ "$(md5sum /usr/comma/bg.org | awk '{print $1}')" != "642380ba4c0f00b16e9cf6e613f43eec" ]]; then
|
||||||
|
|||||||