diff --git a/README.md b/README.md index 517cde940d0fe2..30e23a1fced845 100644 --- a/README.md +++ b/README.md @@ -1,342 +1,129 @@ -[![](https://i.imgur.com/UelUjKAh.png)](#) - -Table of Contents -======================= - -* [What is openpilot?](#what-is-openpilot) -* [Integration with Stock Features](#integration-with-stock-features) -* [Supported Hardware](#supported-hardware) -* [Supported Cars](#supported-cars) -* [Community Maintained Cars and Features](#community-maintained-cars-and-features) -* [Installation Instructions](#installation-instructions) -* [Limitations of openpilot ALC and LDW](#limitations-of-openpilot-alc-and-ldw) -* [Limitations of openpilot ACC and FCW](#limitations-of-openpilot-acc-and-fcw) -* [Limitations of openpilot DM](#limitations-of-openpilot-dm) -* [User Data and comma Account](#user-data-and-comma-account) -* [Safety and Testing](#safety-and-testing) -* [Testing on PC](#testing-on-pc) -* [Community and Contributing](#community-and-contributing) -* [Directory Structure](#directory-structure) -* [Licensing](#licensing) - ---- - -What is openpilot? ------- - -[openpilot](http://github.com/commaai/openpilot) is an open source driver assistance system. Currently, openpilot performs the functions of Adaptive Cruise Control (ACC), Automated Lane Centering (ALC), Forward Collision Warning (FCW) and Lane Departure Warning (LDW) for a growing variety of supported [car makes, models and model years](#supported-cars). In addition, while openpilot is engaged, a camera based Driver Monitoring (DM) feature alerts distracted and asleep drivers. - - - - - - - - - - - - - - -
- -Integration with Stock Features ------- - -In all supported cars: -* Stock Lane Keep Assist (LKA) and stock ALC are replaced by openpilot ALC, which only functions when openpilot is engaged by the user. -* Stock LDW is replaced by openpilot LDW. - -Additionally, on specific supported cars (see ACC column in [supported cars](#supported-cars)): -* Stock ACC is replaced by openpilot ACC. -* openpilot FCW operates in addition to stock FCW. - -openpilot should preserve all other vehicle's stock features, including, but are not limited to: FCW, Automatic Emergency Braking (AEB), auto high-beam, blind spot warning, and side collision warning. - -Supported Hardware ------- - -At the moment, openpilot supports the [EON DevKit](https://comma.ai/shop/products/eon-dashcam-devkit) and the [comma two](https://comma.ai/shop/products/comma-two-devkit). A [car harness](https://comma.ai/shop/products/car-harness) is recommended to connect the EON or comma two to the car. For experimental purposes, openpilot can also run on an Ubuntu computer with external [webcams](https://github.com/commaai/openpilot/tree/master/tools/webcam). - -Supported Cars ------- - -| Make | Model (US Market Reference) | Supported Package | ACC | No ACC accel below | No ALC below | -| ----------| ------------------------------| ------------------| -----------------| -------------------| ------------------| -| Acura | ILX 2016-18 | AcuraWatch Plus | openpilot | 25mph1 | 25mph | -| Acura | RDX 2016-18 | AcuraWatch Plus | openpilot | 25mph1 | 12mph | -| Acura | RDX 2020 | All | Stock | 0mph | 3mph | -| Honda | Accord 2018-20 | All | Stock | 0mph | 3mph | -| Honda | Accord Hybrid 2018-20 | All | Stock | 0mph | 3mph | -| Honda | Civic Hatchback 2017-19 | Honda Sensing | Stock | 0mph | 12mph | -| Honda | Civic Sedan/Coupe 2016-18 | Honda Sensing | openpilot | 0mph | 12mph | -| Honda | Civic Sedan/Coupe 2019-20 | All | Stock | 0mph | 2mph2 | -| Honda | CR-V 2015-16 | Touring | openpilot | 25mph1 | 12mph | -| Honda | CR-V 2017-20 | Honda Sensing | Stock | 0mph | 12mph | -| Honda | CR-V Hybrid 2017-2019 | Honda Sensing | Stock | 0mph | 12mph | -| Honda | Fit 2018-19 | Honda Sensing | openpilot | 25mph1 | 12mph | -| Honda | HR-V 2019 | Honda Sensing | openpilot | 25mph1 | 12mph | -| Honda | Insight 2019-20 | All | Stock | 0mph | 3mph | -| Honda | Inspire 2018 | All | Stock | 0mph | 3mph | -| Honda | Odyssey 2018-20 | Honda Sensing | openpilot | 25mph1 | 0mph | -| Honda | Passport 2019 | All | openpilot | 25mph1 | 12mph | -| Honda | Pilot 2016-19 | Honda Sensing | openpilot | 25mph1 | 12mph | -| Honda | Ridgeline 2017-20 | Honda Sensing | openpilot | 25mph1 | 12mph | -| Hyundai | Palisade 2020 | All | Stock | 0mph | 0mph | -| Hyundai | Sonata 2020 | All | Stock | 0mph | 0mph | -| Lexus | CT Hybrid 2017-18 | LSS | Stock3| 0mph | 0mph | -| Lexus | ES 2019-20 | All | openpilot | 0mph | 0mph | -| Lexus | ES Hybrid 2019 | All | openpilot | 0mph | 0mph | -| Lexus | IS 2017-2019 | All | Stock | 22mph | 0mph | -| Lexus | IS Hybrid 2017 | All | Stock | 0mph | 0mph | -| Lexus | NX 2018 | All | Stock3| 0mph | 0mph | -| Lexus | NX Hybrid 2018 | All | Stock3| 0mph | 0mph | -| Lexus | RX 2016-18 | All | Stock3| 0mph | 0mph | -| Lexus | RX 2020 | All | openpilot | 0mph | 0mph | -| Lexus | RX Hybrid 2016-19 | All | Stock3| 0mph | 0mph | -| Lexus | RX Hybrid 2020 | All | openpilot | 0mph | 0mph | -| Toyota | Avalon 2016-18 | TSS-P | Stock3| 20mph1 | 0mph | -| Toyota | Camry 2018-20 | All | Stock | 0mph4 | 0mph | -| Toyota | Camry Hybrid 2018-20 | All | Stock | 0mph4 | 0mph | -| Toyota | C-HR 2017-19 | All | Stock | 0mph | 0mph | -| Toyota | C-HR Hybrid 2017-19 | All | Stock | 0mph | 0mph | -| Toyota | Corolla 2017-19 | All | Stock3| 20mph1 | 0mph | -| Toyota | Corolla 2020-21 | All | openpilot | 0mph | 0mph | -| Toyota | Corolla Hatchback 2019-20 | All | openpilot | 0mph | 0mph | -| Toyota | Corolla Hybrid 2020-21 | All | openpilot | 0mph | 0mph | -| Toyota | Highlander 2017-19 | All | Stock3| 0mph | 0mph | -| Toyota | Highlander 2020 | All | openpilot | 0mph | 0mph | -| Toyota | Highlander Hybrid 2017-19 | All | Stock3| 0mph | 0mph | -| Toyota | Highlander Hybrid 2020 | All | openpilot | 0mph | 0mph | -| Toyota | Prius 2016-20 | TSS-P | Stock3| 0mph | 0mph | -| Toyota | Prius 2021 | All | openpilot | 0mph | 0mph | -| Toyota | Prius Prime 2017-20 | All | Stock3| 0mph | 0mph | -| Toyota | Rav4 2016-18 | TSS-P | Stock3| 20mph1 | 0mph | -| Toyota | Rav4 2019-21 | All | openpilot | 0mph | 0mph | -| Toyota | Rav4 Hybrid 2016-18 | TSS-P | Stock3| 0mph | 0mph | -| Toyota | Rav4 Hybrid 2019-21 | All | openpilot | 0mph | 0mph | -| Toyota | Sienna 2018-20 | All | Stock3| 0mph | 0mph | - -1[Comma Pedal](https://github.com/commaai/openpilot/wiki/comma-pedal) is used to provide stop-and-go capability to some of the openpilot-supported cars that don't currently support stop-and-go. ***NOTE: The Comma Pedal is not officially supported by [comma](https://comma.ai).***
-22019 Honda Civic 1.6L Diesel Sedan does not have ALC below 12mph.
-3When disconnecting the Driver Support Unit (DSU), openpilot ACC will replace stock ACC. ***NOTE: disconnecting the DSU disables Automatic Emergency Braking (AEB).***
-428mph for Camry 4CYL L, 4CYL LE and 4CYL SE which don't have Full-Speed Range Dynamic Radar Cruise Control.
- -Community Maintained Cars and Features ------- - -| Make | Model (US Market Reference) | Supported Package | ACC | No ACC accel below | No ALC below | -| ----------| ------------------------------| ------------------| -----------------| -------------------| -------------| -| Buick | Regal 20181 | Adaptive Cruise | openpilot | 0mph | 7mph | -| Cadillac | ATS 20181 | Adaptive Cruise | openpilot | 0mph | 7mph | -| Chevrolet | Malibu 20171 | Adaptive Cruise | openpilot | 0mph | 7mph | -| Chevrolet | Volt 2017-181 | Adaptive Cruise | openpilot | 0mph | 7mph | -| Chrysler | Pacifica 2017-18 | Adaptive Cruise | Stock | 0mph | 9mph | -| Chrysler | Pacifica 2020 | Adaptive Cruise | Stock | 0mph | 39mph | -| Chrysler | Pacifica Hybrid 2017-18 | Adaptive Cruise | Stock | 0mph | 9mph | -| Chrysler | Pacifica Hybrid 2019-20 | Adaptive Cruise | Stock | 0mph | 39mph | -| Genesis | G70 2018 | All | Stock | 0mph | 0mph | -| Genesis | G80 2018 | All | Stock | 0mph | 0mph | -| Genesis | G90 2018 | All | Stock | 0mph | 0mph | -| GMC | Acadia 20181 | Adaptive Cruise | openpilot | 0mph | 7mph | -| Holden | Astra 20171 | Adaptive Cruise | openpilot | 0mph | 7mph | -| Hyundai | Elantra 2017-19 | SCC + LKAS | Stock | 19mph | 34mph | -| Hyundai | Genesis 2015-16 | SCC + LKAS | Stock | 19mph | 37mph | -| Hyundai | Ioniq Electric 2019-20 | SCC + LKAS | Stock | 0mph | 32mph | -| Hyundai | Kona 2020 | SCC + LKAS | Stock | 0mph | 0mph | -| Hyundai | Kona EV 2019 | SCC + LKAS | Stock | 0mph | 0mph | -| Hyundai | Santa Fe 2019 | All | Stock | 0mph | 0mph | -| Hyundai | Sonata 2019 | SCC + LKAS | Stock | 0mph | 0mph | -| Hyundai | Veloster 2019 | SCC + LKAS | Stock | 5mph | 0mph | -| Jeep | Grand Cherokee 2016-18 | Adaptive Cruise | Stock | 0mph | 9mph | -| Jeep | Grand Cherokee 2019-20 | Adaptive Cruise | Stock | 0mph | 39mph | -| Kia | Forte 2018-19 | SCC + LKAS | Stock | 0mph | 0mph | -| Kia | Niro EV 2020 | SCC + LKAS | Stock | 0mph | 0mph | -| Kia | Optima 2017 | SCC + LKAS | Stock | 0mph | 32mph | -| Kia | Optima 2019 | SCC + LKAS | Stock | 0mph | 0mph | -| Kia | Sorento 2018 | SCC + LKAS | Stock | 0mph | 0mph | -| Kia | Stinger 2018 | SCC + LKAS | Stock | 0mph | 0mph | -| Nissan | Leaf 2018-20 | ProPILOT | Stock | 0mph | 0mph | -| Nissan | Rogue 2018-19 | ProPILOT | Stock | 0mph | 0mph | -| Nissan | X-Trail 2017 | ProPILOT | Stock | 0mph | 0mph | -| Subaru | Ascent 2019 | EyeSight | Stock | 0mph | 0mph | -| Subaru | Crosstrek 2018-19 | EyeSight | Stock | 0mph | 0mph | -| Subaru | Forester 2019 | EyeSight | Stock | 0mph | 0mph | -| Subaru | Impreza 2017-19 | EyeSight | Stock | 0mph | 0mph | -| Volkswagen| Golf 2015-19 | Driver Assistance | Stock | 0mph | 0mph | - -1Requires an [OBD-II car harness](https://comma.ai/shop/products/comma-car-harness) and [community built ASCM harness](https://github.com/commaai/openpilot/wiki/GM#hardware). ***NOTE: disconnecting the ASCM disables Automatic Emergency Braking (AEB).***
- -Although it's not upstream, there's a community of people getting openpilot to run on Tesla's [here](https://tinkla.us/) - -Community Maintained Cars and Features are not verified by comma to meet our [safety model](SAFETY.md). Be extra cautious using them. They are only available after enabling the toggle in `Settings->Developer->Enable Community Features`. - -To promote a car from community maintained, it must meet a few requirements. We must own one from the brand, we must sell the harness for it, has full ISO26262 in both panda and openpilot, there must be a path forward for longitudinal control, it must have AEB still enabled, and it must support fingerprinting 2.0 - -Installation Instructions ------- - -Install openpilot on an EON or comma two by entering ``https://openpilot.comma.ai`` during the installer setup. - -Follow these [video instructions](https://youtu.be/lcjqxCymins) to properly mount the device on the windshield. Note: openpilot features an automatic pose calibration routine and openpilot performance should not be affected by small pitch and yaw misalignments caused by imprecise device mounting. - -Before placing the device on your windshield, check the state and local laws and ordinances where you drive. Some state laws prohibit or restrict the placement of objects on the windshield of a motor vehicle. - -You will be able to engage openpilot after reviewing the onboarding screens and finishing the calibration procedure. - -Limitations of openpilot ALC and LDW ------- - -openpilot ALC and openpilot LDW do not automatically drive the vehicle or reduce the amount of attention that must be paid to operate your vehicle. The driver must always keep control of the steering wheel and be ready to correct the openpilot ALC action at all times. - -While changing lanes, openpilot is not capable of looking next to you or checking your blind spot. Only nudge the wheel to initiate a lane change after you have confirmed it's safe to do so. - -Many factors can impact the performance of openpilot ALC and openpilot LDW, causing them to be unable to function as intended. These include, but are not limited to: - -* Poor visibility (heavy rain, snow, fog, etc.) or weather conditions that may interfere with sensor operation. -* The road facing camera is obstructed, covered or damaged by mud, ice, snow, etc. -* Obstruction caused by applying excessive paint or adhesive products (such as wraps, stickers, rubber coating, etc.) onto the vehicle. -* The device is mounted incorrectly. -* When in sharp curves, like on-off ramps, intersections etc...; openpilot is designed to be limited in the amount of steering torque it can produce. -* In the presence of restricted lanes or construction zones. -* When driving on highly banked roads or in presence of strong cross-wind. -* Extremely hot or cold temperatures. -* Bright light (due to oncoming headlights, direct sunlight, etc.). -* Driving on hills, narrow, or winding roads. - -The list above does not represent an exhaustive list of situations that may interfere with proper operation of openpilot components. It is the driver's responsibility to be in control of the vehicle at all times. - -Limitations of openpilot ACC and FCW ------- - -openpilot ACC and openpilot FCW are not systems that allow careless or inattentive driving. It is still necessary for the driver to pay close attention to the vehicle’s surroundings and to be ready to re-take control of the gas and the brake at all times. - -Many factors can impact the performance of openpilot ACC and openpilot FCW, causing them to be unable to function as intended. These include, but are not limited to: - -* Poor visibility (heavy rain, snow, fog, etc.) or weather conditions that may interfere with sensor operation. -* The road facing camera or radar are obstructed, covered, or damaged by mud, ice, snow, etc. -* Obstruction caused by applying excessive paint or adhesive products (such as wraps, stickers, rubber coating, etc.) onto the vehicle. -* The device is mounted incorrectly. -* Approaching a toll booth, a bridge or a large metal plate. -* When driving on roads with pedestrians, cyclists, etc... -* In presence of traffic signs or stop lights, which are not detected by openpilot at this time. -* When the posted speed limit is below the user selected set speed. openpilot does not detect speed limits at this time. -* In presence of vehicles in the same lane that are not moving. -* When abrupt braking maneuvers are required. openpilot is designed to be limited in the amount of deceleration and acceleration that it can produce. -* When surrounding vehicles perform close cut-ins from neighbor lanes. -* Driving on hills, narrow, or winding roads. -* Extremely hot or cold temperatures. -* Bright light (due to oncoming headlights, direct sunlight, etc.). -* Interference from other equipment that generates radar waves. - -The list above does not represent an exhaustive list of situations that may interfere with proper operation of openpilot components. It is the driver's responsibility to be in control of the vehicle at all times. - -Limitations of openpilot DM ------- - -openpilot DM should not be considered an exact measurement of the alertness of the driver. - -Many factors can impact the performance of openpilot DM, causing it to be unable to function as intended. These include, but are not limited to: - -* Low light conditions, such as driving at night or in dark tunnels. -* Bright light (due to oncoming headlights, direct sunlight, etc.). -* The driver's face is partially or completely outside field of view of the driver facing camera. -* The driver facing camera is obstructed, covered, or damaged. - -The list above does not represent an exhaustive list of situations that may interfere with proper operation of openpilot components. A driver should not rely on openpilot DM to assess their level of attention. - -User Data and comma Account ------- - -By default, openpilot uploads the driving data to our servers. You can also access your data by pairing with the comma connect app ([iOS](https://apps.apple.com/us/app/comma-connect/id1456551889), [Android](https://play.google.com/store/apps/details?id=ai.comma.connect&hl=en_US)). We use your data to train better models and improve openpilot for everyone. - -openpilot is open source software: the user is free to disable data collection if they wish to do so. - -openpilot 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 openpilot, you agree to [our Privacy Policy](https://my.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. - -Safety and Testing ----- - -* openpilot observes ISO26262 guidelines, see [SAFETY.md](SAFETY.md) for more detail. -* openpilot has software in the loop [tests](.github/workflows/test.yaml) that run on every commit. -* The safety model code 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 EONs continuously replaying routes. - -Testing on PC ------- -For simplified development and experimentation, openpilot can be run in the CARLA driving simulator, which allows you to develop openpilot without a car. The whole setup should only take a few minutes. - -Steps: -1) Start the CARLA server on first terminal -``` -bash -c "$(curl https://raw.githubusercontent.com/commaai/openpilot/master/tools/sim/start_carla.sh)" -``` -2) Start openpilot on second terminal -``` -bash -c "$(curl https://raw.githubusercontent.com/commaai/openpilot/master/tools/sim/start_openpilot_docker.sh)" -``` -3) Press 1 to engage openpilot - -See the full [README](tools/sim/README.md) - -You should also take a look at the tools directory in master: lots of tools you can use to replay driving data, test, and develop openpilot from your PC. - - -Community and Contributing ------- - -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). Bug fixes and new car ports are encouraged. - -You can add support for your car by following guides we have written for [Brand](https://medium.com/@comma_ai/how-to-write-a-car-port-for-openpilot-7ce0785eda84) and [Model](https://medium.com/@comma_ai/openpilot-port-guide-for-toyota-models-e5467f4b5fe6) ports. Generally, a car with adaptive cruise control and lane keep assist is a good candidate. [Join our Discord](https://discord.comma.ai) to discuss car ports: most car makes have a dedicated channel. - -Want to get paid to work on openpilot? [comma is hiring](https://comma.ai/jobs/). - -And [follow us on Twitter](https://twitter.com/comma_ai). - -Directory Structure ------- - . - ├── apk # The apk files used for the UI - ├── cereal # The messaging spec and libs used for all logs - ├── common # Library like functionality we've developed here - ├── installer/updater # Manages auto-updates of openpilot - ├── opendbc # Files showing how to interpret data from cars - ├── panda # Code used to communicate on CAN - ├── phonelibs # Libraries used on NEOS devices - ├── pyextra # Libraries used on NEOS devices - └── selfdrive # Code needed to drive the car - ├── assets # Fonts, images and sounds for UI - ├── athena # Allows communication with the app - ├── boardd # Daemon to talk to the board - ├── camerad # Driver to capture images from the camera sensors - ├── car # Car specific code to read states and control actuators - ├── common # Shared C/C++ code for the daemons - ├── controls # Perception, planning and controls - ├── debug # Tools to help you debug and do car ports - ├── locationd # Soon to be home of precise location - ├── logcatd # Android logcat as a service - ├── loggerd # Logger and uploader of car data - ├── modeld # Driving and monitoring model runners - ├── proclogd # Logs information from proc - ├── sensord # IMU / GPS interface code - ├── test # Unit tests, system tests and a car simulator - └── ui # The UI - -To understand how the services interact, see `cereal/service_list.yaml`. - -Licensing ------- - -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. +![kumar's testing_closet](https://github.com/arne182/ArnePilot/workflows/kumar's%20testing_closet/badge.svg?branch=DP08-clean) + +This README describes the custom features build by me (Arne Schwarck) on top of [ArnePilot](http://github.com/commaai/ArnePilot) of [comma.ai](http://comma.ai). This fork is optimized for the Toyota RAV4 Hybrid 2016 and Prius TSS2 and for driving in Germany but also works with other cars and in other countries. If you would like to support the developement on this project feel free to https://www.patreon.com/arneschwarck + + +[![demo of ArnePilot with this branch](https://img.youtube.com/vi/WKwSq8TPdpo/0.jpg)](https://www.youtube.com/playlist?list=PL3CGUyxys8DuTE1JTkdZwY93ejSfAGxyV) + +For a demo of this version of ArnePilot + +Find me on Discord https://discord.gg/Ebgn8Mr + +# Installation + +**IF YOU ARE USING DP08X-CLEAN DO NOT TURN ON `ENABLE LOGGER, ENABLE UPLOADER, ENABLE ATHENAD` UNDER DRAGONPILOT APK SETTING. TURNING ON WILL RESULT IN DEVICE BAN. + +Put this URL in the custom URL field after uninstalling through the UI +https://tinyurl.com/arne-dp +or if you want to use the command line or https://github.com/jfrux/workbench +`cd /data; rm -rf openpilot; git clone --depth 1 https://github.com/arne182/openpilot -b release5; reboot` + +#### Troubleshooting +Arnepilot has comma logger disabled. This gives a 35% more cpu but at cost of giving [connection error](https://cdn.discordapp.com/attachments/538741329799413760/743231854764884067/image0.jpg) + +If you get the [no vehicle](https://cdn.discordapp.com/attachments/538741329799413760/743231854764884067/image0.jpg) after installing Arnepilot completely power cycle your device. If this still doesn't fix the problem look below at panda flashing and run the command. This is a known issue with comma2 users. + +## Panda flashing +This is done automatically otherwise run `pkill -f boardd; cd /data/openpilot/panda/board; make; ` Make sure this done while your device is connnect to your car: +- allowing no disengage on brake and gas for Toyota +- changing acceleration limits for Toyota and +- adapting lane departure warning where it gives you a slight push back into the middle of the lane without needing to be engaged (not yet complete) +- The Panda version is also changed and checked. + +## Branches +`release5`: this is the default branch that is most up to date with the ArnePilot 0.8 based off of [dragonpilot](https://github.com/dragonpilot-community/dragonpilot) release branch. This branch is early in development but will only get better + +`DP08-clean`: Current development branch. + +`release4`: this is my old branch, that is compatible with ArnePilot 0.7. Recommended branch until release5 gets better + +`release3`: this is my old branch, that is compatible with ArnePilot 0.6. + +`release2`: this is my old branch, that is compatible with ArnePilot 0.5. + + +## Supported Cars +Fork is known to work in both US and Europe +- RAV4 Hybrid 2016-19 +- RAV4 2017-19 +- Corolla 2019-20 +- Prius 2017-2021 +- RX hyrid 2017 +- CT 2018 +- Chevrolet Volt 2017 +- Subaru Crosstrek Limited 2019 with 0.8 it will use Eyesight for radar. + +### Todo +- [ ] Once QT drops add OSM and Speed offset apk toggles +- [ ] bring back feature op_edit from 0.7 +- [ ] Dynamic distance profiles +- [ ] e2e UI button +- [ ] Hands on wheel support +- [ ] Change cruise speed by +- 5MPH + +## Features +### Dragonpilot +Since openpilot v0.8.0 Arne has decide to base his fork on [DragonPilot](https://github.com/dragonpilot-community/dragonpilot). So expect all your favorite features to work +- Braking: + - by angle(carstate), + - by predicted angle in 2.5s(laneplanner), + - by model(commaai), + - acceleration measured by steering angle, + - by curvature (mapd), + - by mapped sign(stop, yield, roundabouts, bump, hump, traffic light, speed sign, road attribute) +- No disengage for gas, only longitudinal disengage for brake, tire slip or cancel +- Only disengage on main off and on brake at low speed +- Smooth longitudinal controller also at low speeds +- No disengage for seat belt remove and door opened. Practical for when stopping and then someone opens a door so that the car does not drive into the lead +- No fingerprint compatibility problems. A completely different way to combine and split Fingerprints so that they always work I.e. comma is not supporting rav4h 2019 because of this Fingerprint method. Mine is better +- Forward collision warning actually brakes for you. +- Smart speed (smart speed is essentially speedlimit which eon will not go over unless you have set custom offset) can be overridden by pressing gas above the current smart speed. +- Hands on wheel sensing to comply with European driving regulations by [alfhern](https://github.com/move-fast) +- Blind Spot Monitoring for all of the toyota which will be added to control ALC(vision based lane change from comma.ai). For right now it is always on. It will flash rapidly when stopped and if the object is detected. +- ALC w/ BSM : (Automatic Lane Change with Blind spot monitoring) you can now change lane automataclly. It will wait 1 sec before applying ALC. If the BSM detacts objects it will stop the lane change and will take you back in your original lane. Also, it will notify the user on the eon. +- Reacting Toyota tssp higher acceleration and braking limits. +- Speed sign reading +- Stock Toyota ldw steering assist +- Cruise set speed available down to 7 kph +- Virtual lane lines and Lane center. This feature is for European roads and is recommended for used in Europe only. +- Alwasys on Dashcam recording ( it will save video's to the `/sdcard/media/dashcam`) + +### OpEdit features +all OpEdit features can be manged by running the command `python /data/openpilot/op_edit.py` +- Ability to ruduce or Increase curvature Factor. It will also works with eco and sport mode. If using eco mode then it will start breaking early (350 m before) if using sport mode it will slow down little late (150 m). +- Live speedlimit_offset in `op_tune.py` +- [Dynamic distance profiles](https://github.com/ShaneSmiskol/ArnePilot/tree/stock_additions-devel#dynamic-follow-3-profiles) from Shane (In other word three different dynamic profiles: (`close`, `normal`, `far`, `auto`). Profile can be adjusted from either op_edit.py or using the on screen buttons(can take up to 4 sec to for new profile to be adjusted). +- [Dynamic Gas](https://github.com/ShaneSmiskol/ArnePilot/tree/stock_additions-devel#dynamic-gas) +This aims to provide a smoother driving experience in stop and go traffic (under 20 mph) by modifying the maximum gas that can be applied based on your current velocity and the relative velocity of the lead car. It'll also of course increase the maximum gas when the lead is accelerating to help you get up to speed quicker than stock. And smoother; this eliminates the jerking you get from stock ArnePilot with comma pedal. It tries to coast if the lead is only moving slowly, it doesn't use maximum gas as soon as the lead inches forward :). When you are above 20 mph, relative velocity and the following distance is taken into consideration. +- 2020 Corolla tuning by Spairrow326 +- Added ability to turn on and off RSA at certain speeds. +- Control 3 gas profiles with sport eco and normal buttons on car (only on limited car) +- Ability to change the SpeedLimit Offset directly +- Able to stop using RSA after certain mph. +- Live indi tune toggle thanks @jamcar23 +- cloak mode: which will make comma think you are using their fork. Avoid bans. + + +### UI Modifications +- Dev UI toggle in APK setting. +- GPS Accurecy on the SideBar +- Battery has percentage instead of the battery icon. +- Dynamic Follow Button +- Smart speed icon +- e2e button + +## Data collection +- Loggin has been Disabled by default on this fork. If you would like to record your drive edit the [following line](https://github.com/arne182/ArnePilot/blob/4d66df96a91c9c13491a3d78b9c1c2a9e848724a/selfdrive/manager.py#L480) +- Offline crash logging. sentry does not catches all the error. now if their is no internet it will still log error in `/data/community/crashes` +- OSM tracers logging and uploading anonymously to help improve MapD as well as OSM accuracy. [Arne is currently ranked 8th for overal tracers uploaded](https://www.openstreetmap.org/stats/data_stats.html). +- Added stats that track meter driven as well as overrides/disengagement. These go to a leaderboard. Please added your name to `python /data/opepilot/op_edit.py` to participate. + +# Licensing +© OpenStreetMap contributors + +ArnePilot 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. @@ -344,10 +131,4 @@ NO WARRANTY EXPRESSED OR IMPLIED.** --- - - -[![openpilot tests](https://github.com/commaai/openpilot/workflows/openpilot%20tests/badge.svg?event=push)](https://github.com/commaai/openpilot/actions) -[![Total alerts](https://img.shields.io/lgtm/alerts/g/commaai/openpilot.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/commaai/openpilot/alerts/) -[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/commaai/openpilot.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/commaai/openpilot/context:python) -[![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/commaai/openpilot.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/commaai/openpilot/context:cpp) -[![codecov](https://codecov.io/gh/commaai/openpilot/branch/master/graph/badge.svg)](https://codecov.io/gh/commaai/openpilot) +