sunnypilot is a fork of comma.ai's openpilot, an open source driver assistance system. sunnypilot offers the user a unique driving experience for over 260 supported car makes and models with modified behaviors of driving assist engagements. sunnypilot complies with comma.ai's safety rules as accurately as possible.
Join the official sunnypilot Discord server to stay up to date with all the latest features and be a part of shaping the future of sunnypilot!
sunnypilot is a fork of comma.ai's openpilot, an open source driver assistance system. sunnypilot offers the user a unique driving experience for over 250+ supported car makes and models with modified behaviors of driving assist engagements. sunnypilot complies with comma.ai's safety rules as accurately as possible.
To use sunnypilot in a car, you need the following:
Detailed instructions for how to mount the device in a car.
It is recommended to read this entire page before proceeding. This will ensure that you fully understand each added feature on sunnypilot, and you are selecting the right branch for your car to have the best driving experience.
This is a fork of comma.ai's openpilot. By installing this software, you accept all responsibility for anything that might occur while you use it. All contributors to sunnypilot are not liable. ❗Use at your own risk.❗
All official sunnypilot branches strictly adhere to comma.ai's safety policy. Any changes that go against this policy will result in your fork and your device being banned from both comma.ai and sunnypilot channels.
The following changes are a VIOLATION of this policy and ARE NOT included in any sunnypilot branches:
Please refer to Recommended Branches to find your preferred/supported branch. This guide will assume you want to install the latest release-c3
branch.
sunnypilot not installed or you installed a version before 0.8.17?
Custom Software
when given the option.release-c3.sunnypilot.ai
[^4] (note: https://
is not requirement on the comma three)sunnypilot already installed and you installed a version after 0.8.17?
Settings
▶️ Software
.Download
option, press CHECK
. This will fetch the list of latest branches from sunnypilot.Target Branch
option, press SELECT
to open the Target Branch selector.release-c3
Branch | Installation URL |
---|---|
release-c3 |
https://release-c3.sunnypilot.ai |
staging-c3 |
https://staging-c3.sunnypilot.ai |
dev-c3 |
https://dev-c3.sunnypilot.ai |
Requires further assistance with software installation? Join the sunnypilot Discord server and message us in the #installation-help
channel.
Custom Software
when given the option.https://smiskol.com/fork/sunnyhaibin/0.8.12-4-prod
Requires further assistance with software installation? Join the sunnypilot Discord server and message us in the #installation-help
channel.
Prerequisites: How to SSH
If you are looking to install sunnypilot via SSH, run the following command in an SSH terminal after connecting to your device:
cd /data; rm -rf ./openpilot; git clone -b release-c3 --recurse-submodules https://github.com/sunnyhaibin/sunnypilot.git openpilot; cd openpilot; sudo reboot
cd /data; rm -rf ./openpilot; git clone -b 0.8.12-prod-personal-hkg --recurse-submodules https://github.com/sunnyhaibin/sunnypilot.git openpilot; cd openpilot; sudo reboot
After running the command to install the desired branch, your comma device should reboot.
GAP
/INTERVAL
/DISTANCE
button on the steering wheel or on-screen button to adjust the follow distance from the lead car. See table below for options
FRICTION
and LAT_ACCEL_FACTOR
values to suit your vehicle.The goal of Modified Assistive Driving Safety (MADS) is to enhance the user driving experience with modified behaviors of driving assist engagements. This feature complies with comma.ai's safety rules as accurately as possible with the following changes:
CRUISE (MAIN)
button: All supported cars on sunnypilot
LFA
button: Newer HKG cars with LFA
buttonLKAS
button: Honda, Toyota, Global SubaruSET-
button enables ACC/SCCCANCEL
button only disables ACC/SCCCRUISE (MAIN)
must be ON
to use ACC/SCCCRUISE (MAIN)
button disables sunnypilot completely when OFF
(strictly enforced in panda safety code)
Dedicated toggle to handle Lateral state on brake pedal press and release:
ON
: BRAKE pedal
press will pause Automatic Lane Centering; BRAKE pedal
release will resume Automatic Lane Centering. Note: BRAKE pedal
release will NOT resume ACC/SCC/Long control without explicit user engagement (strictly enforced in panda safety code)
OFF
: BRAKE pedal
press will NOT pause Automatic Lane Centering; BRAKE pedal
release will NOT resume ACC/SCC/Long control without explicit user engagement (strictly enforced in panda safety code)
TURN SIGNALS
(Left
or Right
) will pause Automatic Lane Centering if the vehicle speed is below the threshold for Automatic Lane ChangeDynamic Lane Profile (DLP) aims to provide the best driving experience at staying within a lane confidently. Dynamic Lane Profile allows sunnypilot to dynamically switch between lane profiles based on lane recognition confidence level on road.
There are 3 modes to select on the onroad camera screen:
Laneline
or Laneless
modelTo use Dynamic Lane Profile, do the following:
1. sunnypilot Settings -> `SP - Controls` -> Enable Dynamic Lane Profile -> ON toggle
2. Reboot.
3. Before driving, on the onroad camera screen, toggle between the 3 modes by pressing on the button.
4. Drive.
This fork now allows supported cars to dynamically adjust the longitudinal plan based on the fetched map data. Big thanks to the Move Fast team for the amazing implementation!
Supported cars:
Certain features are only available with an active data connection, via:
Features:
While using stock Adaptive/Smart Cruise Control, Custom Stock Longitudinal Control in sunnypilot allows sunnypilot to manipulate and take over the set speed on the car's dashboard.
Supported Cars:
Instruction
**📗 How to use Custom Longitudinal Control on sunnypilot **
When using Speed Limit, Vision, or Map based Turn control, you will be setting the "MAX" ACC speed on the sunnypilot display instead of the one in the dashboard. The car will then set the ACC setting in the dashboard to the targeted speed, but will never exceed the max speed set on the sunnypilot display. A quick press of the RES+ or SET- buttons will change this speed by 5 MPH or KM/H on the sunnypilot display, while a long deliberate press (about a 1/2 second press) changes it by 1 MPH or KM/H. DO NOT hold the RES+ or SET- buttons for longer that a 1 second. Either make quick or long deliberate presses only.
‼ Where to look when setting ACC speed ‼
Do not look at the dashboard when setting your ACC max speed. Instead, only look at the one on the sunnypilot display, "MAX". The reason you need to look at the sunnypilot display is because sunnypilot will be changing the one in the dashboard. It will be adjusting it as needed, never raising it above the one set on the sunnypilot display. ONLY look at the MAX speed on the sunnypilot display when setting the ACC speed instead of the dashboard!
(Courtesy instructions from John, author of jvePilot)
This fork now allows supported openpilot longitudinal cars to adjust the cruise gap between the car and the lead car.
Supported cars:
🚨PROCEED WITH EXTREME CAUTION AND BE READY TO MANUALLY TAKE OVER AT ALL TIMES
There are 4 modes to select on the steering wheel and/or the onroad camera screen:
Availability
Car Make | Stock Gap | Mild Gap | Aggro Gap |
---|---|---|---|
Honda/Acura | ✅ | ✅ | ✅ |
Hyundai/Kia/Genesis | ✅ | ✅ | ✅ |
Toyota/Lexus | ✅ | ✅ | ✅ |
Volkswagen MQB/PQ | ✅ | ✅ | ✅ |
Tag | Definition | Description |
---|---|---|
release |
Release branches | Include features that are verified by trusted testers and the community. Ready to use. ✅ |
staging |
Staging branches | Include new features that are tested by trusted testers and the community. Stability may vary. ⚠ |
dev |
Development branches | All features are gathered in respective versions. Reviewed and merged features will be committed to dev . Stability may vary. ⚠ |
master |
Main branch | Syncs with commaai's openpilot master upstream branch. Accepts all pull requests. Does not include all sunnypilot features. Stability may vary. ⚠ |
Example:
release-c3
: Latest release branch for comma three that are verified by trusted testers and the community. Ready to use.staging-c3
: Latest staging branch for comma three that are tested by trusted testers and the community. Verification required.dev-c3
: Latest development branch for comma three that include all sunnypilot features. Testing required.Branch | Definition | Compatible Device | Changelogs |
---|---|---|---|
release-c3 |
• Latest release/stable branch | comma three | CHANGELOGS.md |
staging-c3 |
• Latest staging branch | comma three | CHANGELOGS.md |
dev-c3 |
• Latest development branch with experimental features | comma three | CHANGELOGS.md |
We welcome both pull requests and issues on GitHub. Bug fixes are encouraged.
Pull requests should be against the most current master
branch.
By default, sunnypilot uploads the driving data to comma servers. You can also access your data through comma connect.
sunnypilot is open source software. The user is free to disable data collection if they wish to do so.
sunnypilot logs the road-facing camera, CAN, GPS, IMU, magnetometer, thermal sensors, crashes, and operating system logs. The driver-facing camera is only logged if you explicitly opt-in in settings. The microphone is not recorded.
By using this software, you understand that use of this software or its related services will generate certain types of user data, which may be logged and stored at the sole discretion of comma. By accepting this agreement, you grant an irrevocable, perpetual, worldwide right to comma for the use of this data.
openpilot is released under the MIT license. Some parts of the software are released under other licenses as specified.
Any user of this software shall indemnify and hold harmless comma.ai, Inc. and its directors, officers, employees, agents, stockholders, affiliates, subcontractors and customers from and against all allegations, claims, actions, suits, demands, damages, liabilities, obligations, losses, settlements, judgments, costs and expenses (including without limitation attorneys’ fees and costs) which arise out of, relate to or result from any use of this software by user.
THIS IS ALPHA QUALITY SOFTWARE FOR RESEARCH PURPOSES ONLY. THIS IS NOT A PRODUCT. YOU ARE RESPONSIBLE FOR COMPLYING WITH LOCAL LAWS AND REGULATIONS. NO WARRANTY EXPRESSED OR IMPLIED.
If you find any of the features useful, consider becoming a patron on Patreon or a sponsor on GitHub to support future feature development and improvements.
By becoming a patron/sponsor, you will gain access to exclusive content, early access to new features, and the opportunity to directly influence the project's development.
Your continuous love and support are greatly appreciated! Enjoy 🥰
- Jason, Founder of sunnypilot
[^1]:Requires data connection if not using Offline Maps data
[^2]:At least 50 GB of storage space is required. If you have the 32 GB version of comma three, upgrading with a compatible 250 GB or 1 TB SSD is strongly recommended
[^4]:Shortened URL for convenience. Full URL is smiskol.com/fork/sunnyhaibin/release-c3