Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

version bump #136

Merged
merged 163 commits into from
Apr 6, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
163 commits
Select commit Hold shift + click to select a range
7f6ea03
Minor README.md update.
jfrux Jul 13, 2018
04c2698
fix up table
geohot Jul 13, 2018
7d9f8c5
Integrated the requests by Andrew
jfrux Jul 13, 2018
ce57ce4
Update README.md
jfrux Jul 13, 2018
b0c83bb
Merge pull request #288 from jfrux/patch-1
geohot Jul 13, 2018
18c6482
fixed resume press when comma pedal is used
rbiasini Jul 13, 2018
4568504
Merge pull request #290 from commaai/pedal-resum-speed-fix
geohot Jul 13, 2018
ef8e6fb
Adds Pedal Interceptor Support for Honda & Acura Vehicles (#274)
jfrux Jul 14, 2018
866711e
Update README.md (#295)
TheMutley Jul 16, 2018
e07853b
Added 2014 pre-AP tesla (prior to Oct 28, 2014) (#303)
jeankalud Jul 20, 2018
b63d51d
Revert "Added 2014 pre-AP tesla (prior to Oct 28, 2014) (#303)" (#307)
rbiasini Jul 20, 2018
76494ab
Squashed 'panda/' changes from 5c905b75..5570dac1
Aug 2, 2018
6b1efbf
Merge panda subtree
Aug 2, 2018
589b618
Merge opendbc subtree
Aug 2, 2018
fe9ce20
Squashed 'opendbc/' changes from 37416375..d62ebdd4
Aug 2, 2018
6f3d10a
openpilot v0.5.1 release
Aug 2, 2018
2cfdc67
Spelling Correction (#316)
arne182 Aug 3, 2018
33a75c3
Adds 1.5L accord support (#321)
energee Aug 14, 2018
6a02547
updated opendbc (#322)
rbiasini Aug 17, 2018
b70d75d
Merge panda subtree
Aug 20, 2018
c812915
Squashed 'panda/' changes from 5570dac..b058c14
Aug 20, 2018
db96b4b
Merge opendbc subtree
Aug 20, 2018
6839a11
Squashed 'opendbc/' changes from d62ebdd..2210752
Aug 20, 2018
0129a8a
openpilot v0.5.2 release
Aug 20, 2018
ed72759
little endian mask fix (#330)
rbiasini Aug 22, 2018
c29b311
Volt: Don't adjust speed on resume from stopped (#325)
Jamezz Aug 24, 2018
b942ab5
fix critical put and get param that caused sporadic controlsd hanging…
rbiasini Aug 25, 2018
22f0a89
Adds 2019 Pilot (#334)
energee Aug 27, 2018
401c402
fixing base UI crash after completing OP guide for the first time (#337)
rbiasini Aug 27, 2018
2c4e1fd
Added Pilot 2019 as supported car to README
rbiasini Aug 28, 2018
54f3c2b
Some code refactoring to Honda (#335)
energee Sep 1, 2018
8970cc8
Honda Odyssey 2018/2019 EX-L PID Tuning (#343)
tentious Sep 3, 2018
f0c5ca7
Merge panda subtree
Sep 3, 2018
c4bba32
Squashed 'panda/' changes from b058c14..f2292e4
Sep 3, 2018
8f6e36f
Merge opendbc subtree
Sep 3, 2018
75db5e8
Squashed 'opendbc/' changes from 2210752..af7fff8
Sep 3, 2018
285c52e
openpilot v0.5.3 release
Sep 3, 2018
9653f9d
Fix pre-enable engagement on GM (#348)
vntarasov Sep 4, 2018
012727e
Change dashboard command of GM to use packer (#347)
vntarasov Sep 4, 2018
86813e6
Correct typo for Highlander (#349)
daehahn Sep 5, 2018
faea9a4
GM: go passive if detected ASCM or LKA camera (#350)
vntarasov Sep 6, 2018
6eb1247
GM: update readme, ACC is a required package (#354)
vntarasov Sep 7, 2018
50d9c44
Tried native Stop and Go on Highlander ICE with no comma pedal: Works…
zeeexsixare Sep 7, 2018
d2b8c4f
fixed sign in after Google change (#357)
rbiasini Sep 8, 2018
b3654cb
Kia Sorento and future Multi-Car Support (#346)
emmertex Sep 9, 2018
4b2c137
update CHR fingerprint (#364)
wocsor Sep 17, 2018
de79a07
Add support for accord hybrid (#361)
energee Sep 18, 2018
402faab
Docker environment breaking (#369)
energee Sep 20, 2018
14b7ead
Add XSE trim to fingerprints (#372)
wocsor Sep 20, 2018
96c9238
GM refactor (#374)
vntarasov Sep 22, 2018
2d450bc
Increase Volt's steering limit (#351)
vntarasov Sep 22, 2018
97f1ee4
Merge panda subtree
Sep 25, 2018
5c0935d
Squashed 'panda/' changes from f2292e4..5253ab0
Sep 25, 2018
e5b2ec4
Merge opendbc subtree
Sep 25, 2018
906b55a
Squashed 'opendbc/' changes from af7fff8..42f8c12
Sep 25, 2018
a422246
openpilot v0.5.4 release
Sep 25, 2018
0f885c8
visiond: replace wiggly model with non wiggly model
geohot Sep 27, 2018
8291f35
Merge pull request #377 from commaai/nowiggle
geohot Sep 27, 2018
8cc32df
Revert the changes to GM in 0.5.4 (#380)
Jamezz Oct 1, 2018
0a99fe3
Save one inverse call in building transformation matrix (#384)
dek3rr Oct 8, 2018
c499aa5
GM: LKA dashboard icon support (#389)
vntarasov Oct 13, 2018
5641fc9
Revert to using CLU15 message for Gear Selection for Compatability Re…
emmertex Oct 14, 2018
7ed5c65
Added new fingerprint for EX-L (#401)
energee Oct 20, 2018
a51a60b
Squashed 'panda/' changes from 5253ab0..4dd3f5a
Oct 21, 2018
a2c76ac
Merge panda subtree
Oct 21, 2018
e8ae37e
Merge opendbc subtree
Oct 21, 2018
d0715b6
Squashed 'opendbc/' changes from 42f8c12..62b7a01
Oct 21, 2018
8f3539a
openpilot v0.5.5 release
Oct 21, 2018
dfa7757
Fix Visiond (#402)
pd0wm Oct 22, 2018
c9fa92b
remove badly named file (#404)
rbiasini Oct 23, 2018
1951399
Update Genesis fingerprint for longer version from Saeed (#406)
James-T1 Oct 24, 2018
3d05cca
GM: disengage on radar fault (#396)
vntarasov Oct 24, 2018
5501541
Improve Toyota radar filtering (#409)
pd0wm Oct 26, 2018
2f8034b
boardd: keep defined safety models in sync with panda repo (#412)
Jafaral Oct 30, 2018
00429e6
Improve VM dynamic sol accuracy (#391)
dek3rr Oct 30, 2018
fdbf1c5
Honda Pilot tuning / lane centering fixes (#408)
NeonGalaxy75 Oct 31, 2018
b7c029c
Added fingerprint for Chinese RAV4 (#422)
ErichMoraga Nov 6, 2018
7db592d
Faster calibration filtering (#421)
dek3rr Nov 6, 2018
db24b1e
Expanded the previously added Chinese RAV4 (#425)
ErichMoraga Nov 8, 2018
8b7c726
more stable calibration (#427)
rbiasini Nov 9, 2018
892e14a
0x470 for RAV4H (#428)
arne182 Nov 9, 2018
b4dd562
Revert "Honda Pilot tuning / lane centering fixes (#408)" (#433)
rbiasini Nov 13, 2018
3b744f4
Merge panda subtree
Nov 17, 2018
c10a755
Squashed 'panda/' changes from 4dd3f5a..293fa33
Nov 17, 2018
3e78efa
Merge opendbc subtree
Nov 17, 2018
2f0b0fb
Squashed 'opendbc/' changes from 62b7a01..3f6cd74
Nov 17, 2018
92c5965
Merge pyextra subtree
Nov 17, 2018
efa97f2
Squashed 'pyextra/' changes from eb09257..fb152de
Nov 17, 2018
860a487
openpilot v0.5.6 release
Nov 17, 2018
b94d598
Added 2016 Honda pilot (#438)
ballerabdude Nov 17, 2018
e4ed489
GM: remove refactor leftovers (#440)
vntarasov Nov 19, 2018
53c6ca6
Move calibration values (#441)
dek3rr Nov 19, 2018
e32463e
Keep steering on radar fault (#442)
vntarasov Nov 20, 2018
c9dd7fe
Add initial support for Holden/Opel Astra BK (#431)
AlexHill Nov 21, 2018
6ec0d23
Added Astra support to README and RELEASE notes (#443)
rbiasini Nov 21, 2018
9d76070
Honda Nidec: avoid giraffe setting alert when car is turned off (#449)
rbiasini Nov 30, 2018
68e56c8
Adding support for 2018 GMC Acadia Denali (#453)
CryptoKylan Dec 4, 2018
024870d
GM: Cadillac ATS Coupe 2018 support (#445)
vntarasov Dec 7, 2018
29bea62
Fixed Capitalization + Made CT6 Comment Cleaner (#456)
VirtuallyChris Dec 8, 2018
5c4ae7a
Add Lexus RX450HL as sub to RX450H (#458)
chassdesk Dec 8, 2018
dc331df
Merge opendbc subtree
Dec 10, 2018
0002cc7
Squashed 'opendbc/' changes from 3f6cd74..e108b6b
Dec 10, 2018
573a691
Merge pyextra subtree
Dec 10, 2018
30ec405
Squashed 'pyextra/' changes from fb152de..8cc1594
Dec 10, 2018
210db68
openpilot v0.5.7 release
Dec 10, 2018
e3c934b
0.5.7 hotfixes
rbiasini Dec 11, 2018
067f1bf
hotfix: wait longer in CDP mode before switching to fast charge, so E…
rbiasini Dec 17, 2018
4610a6e
Faster NEOS download and auto removal of NEOS image after installatio…
rbiasini Dec 21, 2018
853bcda
Adds 2019 Ridgeline fingerprint (#473)
energee Dec 21, 2018
b5d8230
add self.CP = CP as with other carstate files (#459)
arne182 Dec 21, 2018
f41cb3b
Replaced 60 msg. C-HR print w/ 73 msg. C-HR print (#467)
ErichMoraga Dec 21, 2018
58e716f
Read from usb/present instead of usb/online (#484)
braden337 Dec 25, 2018
4d2ff10
Clean Up hyundai (#481)
emmertex Dec 27, 2018
67e7f6d
Update 0x365 for Rav4H from @squall and my observations (#490)
arne182 Dec 29, 2018
0fded2c
Added EX-L subsection for the existing 2019 Pilot (#489)
ErichMoraga Dec 31, 2018
d84e64b
Fixed TOC anchor links (#492)
energee Jan 3, 2019
b78ed77
Adding GM Steering Rate (#495)
CryptoKylan Jan 9, 2019
9eb1666
Merge new 2019 Civic and existing 2017-18 Civic Hatch (#446)
csouers Jan 12, 2019
9cf542d
Updated links from Slack to Discord
rbiasini Jan 14, 2019
d5f8643
Increment hatchback year (#508)
csouers Jan 22, 2019
ece9cf9
Merge panda subtree
Jan 23, 2019
d21c659
Squashed 'panda/' changes from 293fa33..9ee6285
Jan 23, 2019
f364a3e
Merge opendbc subtree
Jan 23, 2019
ea35a00
Squashed 'opendbc/' changes from e108b6b..b632acf
Jan 23, 2019
b967da5
openpilot v0.5.8 release
Jan 23, 2019
73c1df7
fix typos, Jeep tuning (#511)
adhintz Jan 26, 2019
860623f
Add missing mapd and orbd dirs into README.md (#515)
Jan 26, 2019
2c9d5af
removal of snpe libs (#517)
rbiasini Jan 29, 2019
ee35b90
Eliminate brake oscillations and grinding / crunching / ripping sound…
NeonGalaxy75 Feb 5, 2019
23512ba
Readme: FCA giraffe added
rbiasini Feb 7, 2019
03f13e6
Add "Accept-Encoding: gzip" header to mapd.py to reduce data consumpt…
eFiniLan Feb 13, 2019
88246af
Allow uploader.py to compress rlog without upload permission (#471)
eFiniLan Feb 14, 2019
a25e215
Squashed 'panda/' changes from 9ee6285..39c1e39
Feb 20, 2019
26da755
Merge panda subtree
Feb 20, 2019
27f405b
Merge opendbc subtree
Feb 20, 2019
603f3f1
Squashed 'opendbc/' changes from b632acf..45c3285
Feb 20, 2019
fdb04d9
Merge pyextra subtree
Feb 20, 2019
9a79df8
Squashed 'pyextra/' changes from 8cc1594..0d19c13
Feb 20, 2019
0207a97
openpilot v0.5.9 release
Feb 20, 2019
5c8aa72
Update Panda
legonigel Feb 21, 2019
15fa666
Chrysler updates (#537)
legonigel Feb 22, 2019
8b7dfb6
remove Pacifica 2019 from supported car list (#538)
adhintz Feb 22, 2019
f020361
.gitignore visiond (#539)
legonigel Feb 25, 2019
737f2ac
Updates splash image with newer UI for README (#543)
jfrux Feb 28, 2019
6c1f516
update @Kumar fingerprint for better recognition (#554)
arne182 Mar 9, 2019
26cc816
Fix 2018 volt fingerprint (#561)
srpape Mar 10, 2019
21a2444
Add better volt fingerprint detection
arne182 Mar 11, 2019
4697568
Added new fingerprint for 2018 Camry Hybrid LE (#560)
sumitbinnani Mar 11, 2019
27e0adc
Add better volt fingerprint detection (#564)
legonigel Mar 11, 2019
2a0f066
Squashed 'panda/' changes from 39c1e39e..06958e42
Mar 26, 2019
113d4c1
Merge panda subtree
Mar 26, 2019
6aa1048
Squashed 'opendbc/' changes from 45c32855..3a55ae92
Mar 26, 2019
ede869e
Merge opendbc subtree
Mar 26, 2019
342bb13
Squashed 'pyextra/' changes from 0d19c13e..42428013
Mar 26, 2019
be5c2ae
Merge pyextra subtree
Mar 26, 2019
f74a201
openpilot v0.5.10 release
Mar 26, 2019
5a9d89e
patches (#582)
dougsland Mar 27, 2019
03f0910
Update 0.5.10 Release Notes
legonigel Mar 29, 2019
ca2f309
Eliminate unnecessary temporary disengagements (#584)
Gernby Apr 2, 2019
1efa3f0
📋📷 2019 Chrysler Pacifica and 2019 Jeep Grand Cherokee support (#590)
adhintz Apr 5, 2019
dd32343
Add Chrysler Pacifica Hybrid 2019 (#591)
adhintz Apr 5, 2019
4662cfc
Chrysler: matching file in panda repo
rbiasini Apr 5, 2019
bdf6585
remove transpose (#588)
dek3rr Apr 6, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,16 +20,17 @@ a.out
*.class
*.pyxbldc
*.vcd
lane.cpp
loc*.cpp
config.json
clcache

board/obj/
selfdrive/boardd/boardd
selfdrive/logcatd/logcatd
selfdrive/mapd/default_speeds_by_region.json
selfdrive/proclogd/proclogd
selfdrive/ui/ui
selfdrive/test/tests/plant/out
selfdrive/visiond/visiond
/src/

one
4 changes: 3 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ install:
- docker build -t tmppilot -f Dockerfile.openpilot .

script:
- docker run --rm
- docker run
-v "$(pwd)"/selfdrive/test/tests/plant/out:/tmp/openpilot/selfdrive/test/tests/plant/out
tmppilot /bin/sh -c 'cd /tmp/openpilot/selfdrive/test/tests/plant && OPTEST=1 ./test_longitudinal.py'
- docker run
tmppilot /bin/sh -c 'cd /tmp/openpilot/selfdrive/test/ && ./test_fingerprints.py'
10 changes: 5 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@

Our software is open source so you can solve your own problems without needing help from others. And if you solve a problem and are so kind, you can upstream it for the rest of the world to use.

Most open source development activity is coordinated through our [slack](https://slack.comma.ai). A lot of documentation is available on our [medium](https://medium.com/@comma_ai/)
Most open source development activity is coordinated through our [Discord](https://discord.comma.ai). A lot of documentation is available on our [medium](https://medium.com/@comma_ai/)

## Getting Started

* Join our slack [slack.comma.ai](https://slack.comma.ai)
* Join our [Discord](https://discord.comma.ai)
* Make sure you have a [GitHub account](https://github.com/signup/free)
* Fork the repository on GitHub
* Fork [our repositories](https://github.com/commaai) on GitHub

## Car Ports (openpilot)

We've released a guide for porting to Toyota cars [here](https://medium.com/@comma_ai/openpilot-port-guide-for-toyota-models-e5467f4b5fe6)
We've released a [Model Port guide](https://medium.com/@comma_ai/openpilot-port-guide-for-toyota-models-e5467f4b5fe6) for porting to Toyota/Lexus models.

If you port openpilot to a substantially new car, you might be eligible for a bounty. See our bounties at [comma.ai/bounties.html](https://comma.ai/bounties.html)
If you port openpilot to a substantially new car brand, see this more generic [Brand Port guide](https://medium.com/@comma_ai/how-to-write-a-car-port-for-openpilot-7ce0785eda84). You might also be eligible for a bounty. See our bounties at [comma.ai/bounties.html](https://comma.ai/bounties.html)

25 changes: 23 additions & 2 deletions Dockerfile.openpilot
Original file line number Diff line number Diff line change
@@ -1,8 +1,27 @@
FROM ubuntu:16.04
ENV PYTHONUNBUFFERED 1

RUN apt-get update && apt-get install -y build-essential clang vim screen wget bzip2 git libglib2.0-0 python-pip capnproto libcapnp-dev libzmq5-dev libffi-dev libusb-1.0-0
RUN pip install numpy==1.11.2 scipy==0.18.1 matplotlib
RUN apt-get update && apt-get install -y \
build-essential \
clang \
vim \
screen \
wget \
bzip2 \
git \
libglib2.0-0 \
python-pip \
capnproto \
libcapnp-dev \
libzmq5-dev \
libffi-dev \
libusb-1.0-0 \
libssl-dev \
ocl-icd-libopencl1 \
ocl-icd-opencl-dev \
opencl-headers

RUN pip install numpy==1.11.2 scipy==0.18.1 matplotlib==2.1.2

COPY requirements_openpilot.txt /tmp/
RUN pip install -r /tmp/requirements_openpilot.txt
Expand All @@ -17,3 +36,5 @@ COPY ./phonelibs /tmp/openpilot/phonelibs
COPY ./pyextra /tmp/openpilot/pyextra

RUN mkdir -p /tmp/openpilot/selfdrive/test/out
RUN make -C /tmp/openpilot/selfdrive/controls/lib/longitudinal_mpc clean
RUN make -C /tmp/openpilot/selfdrive/controls/lib/lateral_mpc clean
175 changes: 105 additions & 70 deletions README.md

Large diffs are not rendered by default.

95 changes: 95 additions & 0 deletions RELEASES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,98 @@
Version 0.5.10 (2019-03-19)
========================
* Self-tuning vehicle parameters: steering offset, tires stiffness and steering ratio
* Improve longitudinal control at low speed when lead vehicle harshly decelerates
* Fix panda bug going unexpectedly in DCP mode when EON is connected
* Reduce white panda power consumption by 500mW when EON is disconnected by turning off WIFI
* New Driver Monitoring Model
* Support QR codes for login using comma connect
* Refactor comma pedal FW and use CRC-8 checksum algorithm for safety. Reflashing pedal is required.
Please see `#hw-pedal` on [discord](discord.comma.ai) for assistance updating comma pedal.
* Additional speed limit rules for Germany thanks to arne182
* Allow negative speed limit offsets

Version 0.5.9 (2019-02-10)
========================
* Improve calibration using a dedicated neural network
* Abstract planner in its own process to remove lags in controls process
* Improve speed limits with country/region defaults by road type
* Reduce mapd data usage with gzip thanks to eFiniLan
* Zip log files in the background to reduce disk usage
* Kia Optima support thanks to emmertex!
* Buick Regal 2018 support thanks to HOYS!
* Comma pedal support for Toyota thanks to wocsor! Note: tuning needed and not maintained by comma
* Chrysler Pacifica and Jeep Grand Cherokee support thanks to adhintz!

Version 0.5.8 (2019-01-17)
========================
* Open sourced visiond
* Auto-slowdown for upcoming turns
* Chrysler/Jeep/Fiat support thanks to adhintz!
* Honda Civic 2019 support thanks to csouers!
* Improve use of car display in Toyota thanks to arne182!
* No data upload when connected to Android or iOS hotspots and "Enable Upload Over Cellular" setting is off
* EON stops charging when 12V battery drops below 11.8V

Version 0.5.7 (2018-12-06)
========================
* Speed limit from OpenStreetMap added to UI
* Highlight speed limit when speed exceeds road speed limit plus a delta
* Option to limit openpilot max speed to road speed limit plus a delta
* Cadillac ATS support thanks to vntarasov!
* GMC Acadia support thanks to CryptoKylan!
* Decrease GPU power consumption
* NEOSv8 autoupdate

Version 0.5.6 (2018-11-16)
========================
* Refresh settings layout and add feature descriptions
* In Honda, keep stock camera on for logging and extra stock features; new openpilot giraffe setting is 0111!
* In Toyota, option to keep stock camera on for logging and extra stock features (e.g. AHB); 120Ohm resistor required on giraffe.
* Improve camera calibration stability
* More tuning to Honda positive accelerations
* Reduce brake pump use on Hondas
* Chevrolet Malibu support thanks to tylergets!
* Holden Astra support thanks to AlexHill!

Version 0.5.5 (2018-10-20)
========================
* Increase allowed Honda positive accelerations
* Fix sporadic unexpected braking when passing semi-trucks in Toyota
* Fix gear reading bug in Hyundai Elantra thanks to emmertex!

Version 0.5.4 (2018-09-25)
========================
* New Driving Model
* New Driver Monitoring Model
* Improve longitudinal mpc in mid-low speed braking
* Honda Accord hybrid support thanks to energee!
* Ship mpc binaries and sensibly reduce build time
* Calibration more stable
* More Hyundai and Kia cars supported thanks to emmertex!
* Various GM Volt improvements thanks to vntarasov!

Version 0.5.3 (2018-09-03)
========================
* Hyundai Santa Fe support!
* Honda Pilot 2019 support thanks to energee!
* Toyota Highlander support thanks to daehahn!
* Improve steering tuning for Honda Odyssey

Version 0.5.2 (2018-08-16)
========================
* New calibration: more accurate, a lot faster, open source!
* Enable orbd
* Add little endian support to CAN packer
* Fix fingerprint for Honda Accord 1.5T
* Improve driver monitoring model

Version 0.5.1 (2018-08-01)
========================
* Fix radar error on Civic sedan 2018
* Improve thermal management logic
* Alpha Toyota C-HR and Camry support!
* Auto-switch Driver Monitoring to 3 min counter when inaccurate

Version 0.5 (2018-07-11)
========================
* Driver Monitoring (beta) option in settings!
Expand Down
111 changes: 88 additions & 23 deletions SAFETY.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,10 @@ Like other ACC and LKA systems, openpilot requires the driver to be alert and to
pay attention at all times. We repeat, **driver alertness is necessary, but not
sufficient, for openpilot to be used safely**.

Even with an attentive driver, we must make further efforts for the system to be
In order to enforce driver alertness, openpilot includes a driver monitoring feature
that alerts the driver when distracted.

However, even with an attentive driver, we must make further efforts for the system to be
safe. We have designed openpilot with two other safety considerations.

1. The driver must always be capable to immediately retake manual control of the vehicle,
Expand All @@ -20,54 +23,116 @@ Following are details of the car specific safety implementations:
Honda/Acura
------

- While the system is engaged, gas, brake and steer limits are subject to the same limits used by
- While the system is engaged, gas, brake and steer commands are subject to the same limits used by
the stock system.

- Without an interceptor, the gas is controlled by the Powertrain Control Module (PCM).
The PCM limits acceleration to what is reasonable for a cruise control system. With an
interceptor, the gas is clipped to 60%.

- The brake is controlled by the 0x1FA CAN message. This message allows full
braking, although the board and the software clip it to 1/4th of the max.
This is around .3g of braking.
braking, although the panda firmware and openpilot clip it to 1/4th of the max.
This is approximately 0.3g of braking.

- Steering is controlled by the 0xE4 CAN message. The Electronic Power Steering (EPS)
controller in the car limits the torque to a very small amount, so regardless of the
message, the controller cannot jerk the wheel.

- Brake and gas pedal pressed signals are contained in the 0x17C CAN message. A rising edge of
either signal triggers a disengagement, which is enforced by the board and in software. The
green led on the board signifies if the board is allowing control messages.
either signals triggers a disengagement, which is enforced by the panda firmware and by openpilot. The
white led on the panda signifies if the panda is allowing control messages.

- Honda CAN uses both a counter and a checksum to ensure integrity and prevent
replay of the same message.

Toyota/Lexus
------

- While the system is engaged, gas, brake and steer limits are subject to the same limits used by
- While the system is engaged, gas, brake and steer commands are subject to the same limits used by
the stock system.

- With the stock Driving Support Unit (DSU) enabled, the acceleration is controlled
by the stock system and is subject to the stock adaptive cruise control limits. Without the
stock DSU connected, the acceleration command is controlled by the 0x343 CAN message and its
value is limited by the board and the software to between .3g of deceleration and .15g of
acceleration. The acceleration command is ignored by the Engine Control Module (ECM) while the
cruise control system is disengaged.

- Steering torque is controlled through the 0x2E4 CAN message and it's limited by the board and in
software to a value of -1500 and 1500. In addition, the vehicle EPS unit will not respond to
commands outside these limits. A steering torque rate limit is enforced by the board and in
software so that the commanded steering torque must rise from 0 to max value no faster than
1.5s. Commanded steering torque is limited by the board and in software to be no more than 350
- With the stock Driving Support Unit (DSU) connected (or in DSU-less models like Camry and C-HR),
the acceleration is controlled by the stock system and is subject to the stock adaptive cruise
control limits. Without the stock DSU connected, the acceleration command is controlled by the
0x343 CAN message and its value is limited between .3g of deceleration and .15g of acceleration
by the panda firmware and by openpilot. The acceleration command is ignored by the Engine Control
Module (ECM) while the cruise control system is disengaged.

- Steering torque is controlled through the 0x2E4 CAN message and it's limited by the panda firmware and by
openpilot to a value between -1500 and 1500. In addition, the vehicle EPS unit will not respond to
commands outside these limits. A steering torque rate limit is enforced by the panda firmware and by
openpilot, so that the commanded steering torque must rise from 0 to max value no faster than
1.5s. Commanded steering torque is limited by the panda firmware and by openpilot to be no more than 350
units above the actual EPS generated motor torque to ensure limited differences between
commanded and actual torques.

- Brake and gas pedal pressed signals are contained in the 0x224 and 0x1D2 CAN messages,
respectively. A rising edge of either signal triggers a disengagement, which is enforced by the
board and in software. Additionally, the cruise control system disengages on the rising edge of
respectively. A rising edge of either signals triggers a disengagement, which is enforced by the
panda firmware and by openpilot. Additionally, the cruise control system disengages on the rising edge of
the brake pedal pressed signal.

- The cruise control system state is contained in the 0x1D2 message. No control messages are
allowed if the cruise control system is not active. This is enforced by the software and the
board. The green led on the board signifies if the board is allowing control messages.
allowed if the cruise control system is not active. This is enforced by openpilot and the
panda firmware. The white led on the panda signifies if the panda is allowing control messages.

GM/Chevrolet
------

- While the system is engaged, gas, brake and steer commands are subject to the same limits used by
the stock system.

- The gas and regen are controlled by the 0x2CB message and it's limited by the panda firmware and by
openpilot to a value between 1404 and 3072. the minimum value correspond to a mild decel due to regen,
while 3072 correspond to approximately 0.18g of acceleration from stop.

- The friction brakes are controlled by the 0x315 message and its value is limited by the panda firmware
and openpilot to 350. This is approximately 0.3g of braking.

- Steering torque is controlled through the 0x180 CAN message and it's limited by the panda firmware and by
openpilot to a value between -300 and 300. In addition, the vehicle EPS unit will fault for
commands outside these limits. A steering torque rate limit is enforced by the panda firmware and by
openpilot, so that the commanded steering torque must rise from 0 to max value no faster than
0.75s. Commanded steering torque is gradually limited by the panda firmware and by openpilot if the driver's
torque exceeds 12 units in the opposite dicrection to ensure limited applied torque against the
driver's will.

- Brake pedal and gas pedal potentiometer signals are contained in the 0xF1 and 0x1A1 CAN messages,
respectively. A rising edge of either signals triggers a disengagement, which is enforced by the
panda firmware and by openpilot. Additionally, the cruise control system disengages on the rising edge of
the brake pedal pressed signal. The regen paddle pressed signal is in the 0xBD message. When the
regen paddle is pressed, a disengagement is enforced by both the firmware and by openpilot.

- GM CAN uses both a counter and a checksum to ensure integrity and prevent
replay of the same message.

Hyundai/Kia (Lateral only)
------

- While the system is engaged, steer commands are subject to the same limits used by
the stock system.

- Steering torque is controlled through the 0x340 CAN message and it's limited by the panda firmware and by
openpilot to a value between -255 and 255. In addition, the vehicle EPS unit will fault for
commands outside the values of -409 and 409. A steering torque rate limit is enforced by the panda firmware and by
openpilot, so that the commanded steering torque must rise from 0 to max value no faster than
0.85s. Commanded steering torque is gradually limited by the panda firmware and by openpilot if the driver's
torque exceeds 50 units in the opposite dicrection to ensure limited applied torque against the
driver's will.

Chrysler/Jeep/Fiat (Lateral only)
------

- While the system is engaged, steer commands are subject to the same limits used by
the stock system.

- Steering torque is controlled through the 0x292 CAN message and it's limited by the panda firmware and by
openpilot to a value between -261 and 261. In addition, the vehicle EPS unit will fault for
commands outside these limits. A steering torque rate limit is enforced by the panda firmware and by
openpilot, so that the commanded steering torque must rise from 0 to max value no faster than
0.87s. Commanded steering torque is limited by the panda firmware and by openpilot to be no more than 80
units above the actual EPS generated motor torque to ensure limited differences between
commanded and actual torques.


**Extra note**: comma.ai strongly discourages the use of openpilot forks with safety code either missing or
not fully meeting the above requirements.
Binary file modified apk/ai.comma.plus.frame.apk
Binary file not shown.
Binary file modified apk/ai.comma.plus.offroad.apk
Binary file not shown.
7 changes: 5 additions & 2 deletions cereal/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,16 @@ GENS := gen/cpp/car.capnp.c++ gen/cpp/log.capnp.c++
JS := gen/js/car.capnp.js gen/js/log.capnp.js

UNAME_M ?= $(shell uname -m)

# only generate C++ for docker tests
ifneq ($(OPTEST),1)
GENS += gen/c/car.capnp.c gen/c/log.capnp.c gen/c/include/c++.capnp.h gen/c/include/java.capnp.h

ifeq ($(UNAME_M),x86_64)
GENS += gen/java/Car.java gen/java/Log.java
ifneq (, $(shell which capnpc-java))
GENS += gen/java/Car.java gen/java/Log.java
else
$(warning capnpc-java not found, skipping java build)
endif
endif

endif
Expand Down
Loading