From 6ce83943ea1c22eb10c4c3a6008f1c8bbc445a9e Mon Sep 17 00:00:00 2001 From: FrogAi <91348155+FrogAi@users.noreply.github.com> Date: Wed, 3 Apr 2024 03:36:10 -0700 Subject: [PATCH] Update README.md --- README.md | 212 +++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 180 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index db74ee6..1060e2a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![openpilot on the comma 3X](https://github.com/commaai/openpilot/assets/8762862/f09e6d29-db2d-4179-80c2-51e8d92bdb5c)](https://comma.ai/shop/comma-3x) +[![openpilot on the comma 3X](https://i.imgur.com/6l2qbf5.png)](https://comma.ai/shop/comma-3x) What is openpilot? ------ @@ -13,53 +13,201 @@ What is openpilot? -To start using openpilot in a car +What is FrogPilot? 🐸 ------ -To use openpilot in a car, you need four things: -1. **Supported Device:** a comma 3/3X, available at [comma.ai/shop](https://comma.ai/shop/comma-3x). -2. **Software:** The setup procedure for the comma 3/3X allows users to enter a URL for custom software. Use the URL `openpilot.comma.ai` to install the release version. -3. **Supported Car:** Ensure that you have one of [the 250+ supported cars](docs/CARS.md). -4. **Car Harness:** You will also need a [car harness](https://comma.ai/shop/car-harness) to connect your comma 3/3X to your car. +FrogPilot is a fully open-sourced fork of openpilot, featuring clear and concise commits striving to be a resource for the openpilot developer community. It thrives on contributions from both users and developers, focusing on a collaborative, community-led approach to deliver an advanced openpilot experience for everyone! -We have detailed instructions for [how to install the harness and device in a car](https://comma.ai/setup). Note that it's possible to run openpilot on [other hardware](https://blog.comma.ai/self-driving-car-for-free/), although it's not plug-and-play. +------ +FrogPilot was last updated on: -To start developing openpilot +**June 1st, 2024** + +Features ------ -openpilot is developed by [comma](https://comma.ai/) and by users like you. We welcome both pull requests and issues on [GitHub](http://github.com/commaai/openpilot). +FrogPilot offers a wide range of customizable features that are easily toggled on or off to suit your preferences. Whether you want a completely stock openpilot experience, or want to add some fun and personal touches, FrogPilot has you covered! Some of the features include: -* Join the [community Discord](https://discord.comma.ai) -* Check out [the contributing docs](docs/CONTRIBUTING.md) -* Check out the [openpilot tools](tools/) -* Read about the [development workflow](docs/WORKFLOW.md) -* Code documentation lives at https://docs.comma.ai -* Information about running openpilot lives on the [community wiki](https://github.com/commaai/openpilot/wiki) +------ +⚡ **Advanced Customizations:** -Want to get paid to work on openpilot? [comma is hiring](https://comma.ai/jobs#open-positions) and offers lots of [bounties](docs/BOUNTIES.md) for external contributors. + - "Alert Volume Controller" to set the volume level for each of of openpilot's sounds + - Customize the following distance and jerk values for each personality profile + - Fine tune your car's "Steer Ratio" to perfect your lateral control + - Increase the distance when stopped behind lead vehicles + - Increase the max set speed by a custom interval (i.e. 2, 3, 4, 5, 6, etc. instead of just 1) + - Select between past, present, and future openpilot driving models +------ +🎨 **Custom Themes:** -Safety and Testing ----- + - 🐸 Frog theme (with a bonus 🐐 sound effect) + - Russia / Joseph Stalin theme + - 🔌 Tesla theme + - Holiday themes! Minor holidays last a day, while major holidays (Easter, Halloween, Thanksgiving, Christmas) last a week + - Random events triggered by specific actions while driving with openpilot -* openpilot observes [ISO26262](https://en.wikipedia.org/wiki/ISO_26262) guidelines, see [SAFETY.md](docs/SAFETY.md) for more details. -* openpilot has software-in-the-loop [tests](.github/workflows/selfdrive_tests.yaml) that run on every commit. -* The code enforcing the safety model lives in panda and is written in C, see [code rigor](https://github.com/commaai/panda#code-rigor) for more details. -* panda has software-in-the-loop [safety tests](https://github.com/commaai/panda/tree/master/tests/safety). -* Internally, we have a hardware-in-the-loop Jenkins test suite that builds and unit tests the various processes. -* panda has additional hardware-in-the-loop [tests](https://github.com/commaai/panda/blob/master/Jenkinsfile). -* We run the latest openpilot in a testing closet containing 10 comma devices continuously replaying routes. + - 📢 Want to add a theme? Request one in the "feature-request" channel in the FrogPilot Discord! +------ +🚀 **Conditional Experimental Mode:** -User Data and comma Account + - Auto-activates "Experimental Mode" under several conditions, including: + - Approaching intersections and turns while using navigation + - Approaching slower vehicles to take advantage of "Experimental Mode"'s smoother braking + - Curve and stop light/stop sign detection + - Driving below a set speed + - Turn signal activation below 55mph for turn assistance +------ +📊 **Developer UI:** + + - Display various driving logics such as the distance, speed, and the desired following distance to your lead vehicle + - Lane measuring of the adjacent lanes for lane detection + - Tap the "VEHICLE ONLINE"/"CPU"/"GPU" gauge to toggle between CPU and GPU monitoring + - Tap the "CONNECT ONLINE"/"MEMORY"/"LEFT"/"USED" gauge to toggle between RAM and storage monitoring +------ +🛠 **Device Management:** + + - Adjustable screen brightness for both onroad and offroad states + - Adjustable screen timeout times for both onroad and offroad states + - Backup and restore previous versions of FrogPilot + - Backup and restore previous versions of toggle configurations + - Battery level threshold to automatically shut the device down after you car's battery falls below a set voltage limit when offroad + - Delete stored driving data for increased privacy/space via the "Device" panel + - Device can operate offline indefinitely + - Disable logging and/or uploading + - Disable uploads while onroad to help reduce data usage + - Flash the Panda within the "Device" menu + - "Standby Mode" that wakes the screen up between engagement states or when important alerts are triggered + - Timer to automatically shut down after going offroad +------ +🚖 **Lateral Adjustments:** + + - Activate lateral control by simply pressing the "Cruise Control" button + - Force comma's auto tuning for unsupported vehicles + - Lateral control won't disengage on gas or brake + - Nudgeless lane changes with lane detection to prevent driving into curbs or going offroad + - Pause lateral control when below a set speed + - Pause lateral control when pressing the brake + - Pause lateral control when turn signals are active + - Precise turns by using turn desires when below the minimum lane change speed + - [Twilsonco's NNFF](https://github.com/twilsonco/openpilot) for smoother steering control +------ +🚘 **Longitudinal Adjustments:** + + - Aggressive acceleration when following a lead vehicle from a stop + - "Map Turn Speed Controller" to slow down for curves based on stored map data + - With an additional toggle to fine tune the speed aggressiveness + - Smoother braking behind slower leads + - "Speed Limit Controller" to adjust your speed to the posted speed limit + - With additional toggles to set offsets for "0-34 mph", "35-54 mph", "55-64 mph", and "65-99 mph" + - "Sport" and "Eco" acceleration and deceleration profiles + - "Traffic Mode" tailored towards driving in traffic + - Tweak the lead detection threshold to detect leads sooner for smoother braking on stopped/slower vehicles + - "Vision Turn Speed Controller" for smoother handling of curves + - With additional toggles to fine tune the speed aggressiveness and curve detection sensitivity +------ +🗺️ **Navigation:** + + - 3D buildings + - Custom map styles + - Full screen map that takes up the entire screen for a more expansive map view + - iOS shortcuts to quickly set navigation destinations + - Navigate on openpilot without a comma prime subscription + - Offline maps + - "Open Street Maps" integration for speed limit control and road name view +------ +🎮 **Onroad UI:** + + - Compass that rotates according to the direction you're driving + - FPS counter in the screen's border + - Hide various UI elements on the screen for a cleaner UI + - Pedals on the onroad UI indicate when the gas/brake pedals are being used + - Road UI Customizations: + - Acceleration path to show the model's desired acceleration/deceleration + - Blind spot path when a vehicle is detected in your blind spot + - Increase/decrease the lane line, path, and road edge widths + - Path edge colors based on specific driving statuses: + - 🔵 Blue - Navigation active + - 🟦 Light Blue - "Always On Lateral" active + - 🟢 Green - Default + - 🟠 Orange - "Experimental Mode" active + - 🔴 Red - "Traffic Mode" active + - 🟡 Yellow - "Conditional Experimental Mode" overridden + - "Unlimited" road UI that extends out as far as the model can see + - Sidebar retains it's previous position between reboots/ignition cycles + - Steering wheel icons + - 📢 Request your own steering wheel icon in the "feature-request" channel! + - Steering wheel in the onroad UI rotates alongside your physical steering wheel +------ +🚙 **Vehicle Specific Additions:** + + - Automatic/manual fingerprint selection to force a selected fingerprint + - Custom longitudinal tunings for GM EVs and trucks for smoother gas and brake control + - Custom longitudinal tunings for Toyota/Lexus for smoother gas and brake control + - Disable openpilot longitudinal control to use your car's stock cruise control + - GM Volt support + - Honda Clarity support + - Increased torque for the Subaru Crosstrek + - Lock doors automatically when in the drive gear for Toyota/Lexus and unlock when in park + - openpilot longitudinal control for GM vehicles without ACC + - Pedal interceptor support for GM vehicles + - "Stop and Go" hack for Toyota's without stop and go functionality + - ZSS support for the Toyota Prius and Sienna +------ +🚦 **Quality of Life Features:** + + - Automatic updates for a completely "set and forget" experience + - Camera view selection + - Custom alerts for green lights, vehicles in blindspot, lead departing, and the current speed limit changing + - Display the driver camera when in reverse + - Driving statistics to show how many hours and miles you've driven on the home screen + - Fleet Manager to easily access your driving data and screen recordings + - Numerical temperature gauge + - Retain tethering status between reboots + - Screenrecorder + - Toggle "Experimental Mode" via the "Lane Departure Alert" button, holding down the "Distance" button for 0.5+ seconds, or by double tapping the screen + +How to Install ------ -By default, openpilot uploads the driving data to our servers. You can also access your data through [comma connect](https://connect.comma.ai/). We use your data to train better models and improve openpilot for everyone. +Easiest way to install FrogPilot is via this URL at the installation screen: -openpilot is open source software: the user is free to disable data collection if they wish to do so. +``` +frogpilot.download +``` -openpilot logs the road-facing cameras, 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. +DO NOT install the "FrogPilot-Development" branch. I'm constantly breaking things on there, so unless you don't want to use openpilot, NEVER install it! -By using openpilot, you agree to [our Privacy Policy](https://comma.ai/privacy). 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. +![](https://i.imgur.com/swr0kqJ.png) + +Bug reports / Feature Requests +------ + +If you encounter any issues or bugs while using FrogPilot, or if you have any suggestions for new features or improvements, please don't hesitate to post about it on the Discord! I'm always looking for ways to improve the fork and provide a better experience for everyone! + +To report a bug or request a new feature, make a post in the #bug-reports or #feature-requests channel respectively on the FrogPilot Discord. Please provide as much detail as possible about the issue you're experiencing or the feature you'd like to see added. Photos, videos, log files, or other relevant information are very helpful! + +I will do my best to respond to bug reports and feature requests in a timely manner, but please understand that I may not be able to address every request immediately. Your feedback and suggestions are valuable, and I appreciate your help in making FrogPilot the best it can be! + +Discord +------ + +[Join the FrogPilot Community Discord!](https://discord.gg/frogpilot) + +Credits +------ + +* [AlexandreSato](https://github.com/AlexandreSato) +* [Crwusiz](https://github.com/crwusiz) +* [DragonPilot](https://github.com/dragonpilot-community) +* [ErichMoraga](https://github.com/ErichMoraga) +* [Garrettpall](https://github.com/garrettpall) +* [Mike8643](https://github.com/mike8643) +* [Neokii](https://github.com/Neokii) +* [OPGM](https://github.com/opgm) +* [OPKR](https://github.com/openpilotkr) +* [Pfeiferj](https://github.com/pfeiferj) +* [ServerDummy](https://github.com/ServerDummy) +* [Twilsonco](https://github.com/twilsonco) Licensing ------