Commit Graph

232 Commits

Author SHA1 Message Date
Shane Smiskol d916e0ed2d Car docs: pass docs flag to car interfaces (#27311)
* docs

* docs

* docs

* docs

* use docs in gm
old-commit-hash: 5aebdb0ad0e7e527f5deb553ffd193abea02a357
2023-04-18 12:22:22 -07:00
Yong-seok, Jang f8453b27d5 GM: Trailblazer 2021-22 support (#27830)
* Add trailblazer support

* Update routes.py

* Update routes.py

* Update CARS.md

* Fix incorrect torque name

* Update values.py and CARS.md

* Change to update another route

* update docs

* only 2021 https://en.wikipedia.org/wiki/Chevrolet_Trailblazer_(crossover)

only 2021

* new FP with missing addrs

* Update selfdrive/car/gm/interface.py

* tune the torque params

* update docs

* remove as a new platform

* Revert "remove as a new platform"

This reverts commit c9c65f29dbb1e1a5926540bb75433928325d6c0e.

* add comment and comment out FP

* need it to be in all_known_cars to test_model

* add to releases

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: e1ad8df5192c9273688ced8f4a379f6d65d09f4d
2023-04-12 23:32:03 -07:00
Adeeb Shihadeh 9410a4f513 car docs: add field for min compatibility requirements (#27805)
old-commit-hash: 088cbfc9d506ab24fe79e37c0ca4dd76f3883e45
2023-04-04 17:47:49 -07:00
royjr 53aa021ecb Cleanup: GM remove unnecessary variable (#27779)
old-commit-hash: 2ab05f96c3e535938533dd877968a7f6ae79f583
2023-04-01 15:24:29 -07:00
Vivek Aithal b6909a65e7 Bolt EUV: Non-linear torque function (#27696)
* add erf based ff

* silly bug; diff of nonlinear != nonlinear of diff

* add sigmoid based ff, ensure slope at 0 > 1

* reduce steer down limit and increase driver allowance

* rebase panda

* atry without friction, and with tanh nonlinear

* finalize the nonlinear function

* do not disable friction compensation in the ff

* bump panda

* bump panda

* update refs

* update refs

* resolve comments

* Add type hints

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 15b880c0ea6fb306e916a2ec015b5f03cec22b20
2023-03-29 15:10:39 -07:00
Shane Smiskol f20e33a2c5 GM: common longitudinal actuator delay (#27357)
* common longitudinal actuator delay

* comment

* remove dup

* move

* clean up

* Update ref_commit
old-commit-hash: aefe636cc1b415f4ebf63f71ae9ae298461e37ac
2023-03-22 00:23:51 -07:00
koch-cf b39f632403 GM: Buick LaCrosse 2017-19 support (#27332)
* Added Buick LaCrosse 2017

* Added Buick LaCrosse as candidate

* Added Buick LaCrosse CAR_INFO and Fingerprint

* Added Buick LaCrosse to non_tested_cars

* Added Buick LaCrosse

* Updated number of supported cars to 237

* Added ACC and LKAS description to Buick LaCrosse

* Updated CAR_INFO for Buick LaCrosse

* Added the Escalade which was recently updated

* Update selfdrive/car/gm/values.py

Suggested fingerprint by @sshane

Co-authored-by: Shane Smiskol <shane@smiskol.com>

* Premium is a trim with ACC. Use package name instead

* lacrosse custom FF;
fit info:
describe(steer_offsets) = DescribeResult(nobs=1649402, minmax=(-0.7127894163131714, 5.3997602462768555), mean=3.3090523060153645, variance=0.3130325564084465, skewness=-1.5986155151533736, kurtosis=8.18810418298873)
Samples: 1357787
Regularizing...
Regularized samples: 1140
speed: DescribeResult(nobs=1140, minmax=(8.478170424241286, 35.837870224662446), mean=27.888804767013475, variance=34.16742353763829, skewness=-1.068587303119431, kurtosis=0.6193071765927134)
angle: DescribeResult(nobs=1140, minmax=(-21.057768565637094, 28.516874490999708), mean=-0.4328602593886506, variance=43.19046813273241, skewness=0.001966426701503317, kurtosis=0.20547357649038434)
steer: DescribeResult(nobs=1140, minmax=(-0.8432471203007578, 0.9634959333674695), mean=-0.021981142946747863, variance=0.20152217060233915, skewness=0.03202313890158864, kurtosis=-1.2318826088567174)
Performing fit...
Fit: [5.85397825e-01 3.27650818e-01 4.60531117e-03 1.32307599e+01
 1.37194709e-01 1.33099557e-01 6.14782304e-02]
ANGLE_COEF = 0.58539783
ANGLE_COEF2 = 0.32765082
ANGLE_OFFSET = 0.00460531
SPEED_OFFSET = 13.23075991
SIGMOID_COEF_RIGHT = 0.13719471
SIGMOID_COEF_LEFT = 0.13309956
SPEED_COEF = 0.06147823
MAE old 0.2098, new 0.0309
STD old 0.1021, new 0.0273
deg 00-03:457, deg 03-06:258, deg 06-09:218, deg 09-12:132, deg 12-15:62
deg 15-18:6, deg 18-21:4, deg 21-24:1, deg 24-27:0, deg 27-30:2
deg 30-33:0, deg 33-36:0, deg 36-39:0, deg 39-42:0, deg 42-45:0

mph 10-15:0, mph 15-20:1, mph 20-25:18, mph 25-30:12, mph 30-35:30
mph 35-40:26, mph 40-45:52, mph 45-50:54, mph 50-55:73, mph 55-60:86
mph 60-65:204, mph 65-70:228, mph 70-75:179, mph 75-80:176, mph 80-85:1
mph 85-90:0,

* Update routes.py

* remove from non tested routes

* use torque controller

* update docs

* update releases

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
Co-authored-by: Tim Wilson <twilsonco@gmail.com>
old-commit-hash: ae423a68686ca258c40fa679b931011e99f5f780
2023-03-20 13:10:19 -07:00
Shane Smiskol 4cf0ce33d5 steer limits: rename common dist to meas function (#27453)
* rename function

* make a wrapper function (ford uses dynamic up/down limits

* make two functions consistent

* make torque function convert to int
old-commit-hash: 581fd62d2642629b23ac111112245a963202143f
2023-02-26 17:32:52 -08:00
Adeeb Shihadeh 5da2a5fa05 GM: revert steering limits update (#27413)
* Revert " GM: update steering limits (#27331)"

This reverts commit b8740c4d6c5bad5ac947d9eefeb38a5b47876ca3.

* update refs

* bump panda
old-commit-hash: 1504c10760627406ce26478bcb98957c64deafac
2023-02-21 15:48:10 -08:00
Adeeb Shihadeh 956918eb1d GM: revert custom Bolt torque tune (#27403)
* Revert "GM: cleanup torque feedforward function (#27347)"

This reverts commit cdd8f003e3571d4b33fc71c4bc23744cea02140c.

* Revert "Chevrolet Bolt: Non-linear torque tune (#27344)"

This reverts commit b6737ca5903ecaac3d6322b92112ccb67116b149.

* update refs
old-commit-hash: 2008332bd42528ae56d937a2ec0e9a1dd244b2ea
2023-02-21 15:27:48 -08:00
Shane Smiskol b12d2b5dd4 GM: add longitudinal delay to Escalade (#27406)
* add delay to escalade too

* order
old-commit-hash: 79749a306c7621e047d1a57fae40493b40c25954
2023-02-20 16:12:11 -08:00
Shane Smiskol 8d0277a2ed GM: remove redundant CarController class variable (#27280)
* clean up

* fix check

* only set ts_nanos on update
old-commit-hash: 14d44e444418e1b6bd23afe5a371db886e8273e2
2023-02-20 15:33:15 -08:00
Eric Brown b98587ae87 GM: detect unplugged or missing radar (#27245)
* Add flashed Volt fingerprint

* Add another fingerprint

* Detect radar header message

* dashcamOnly if ASCM vehicle with radar unavailable

May be able to change this in the future to OP long off with experimental long available

* no submodule update

* Revert minEnableSpeed

* combine into one fingerprint

* Don't use GM radar DBC

Co-authored-by: Shane Smiskol <shane@smiskol.com>

* unused

* add new FP

* update docs

* use_off_car_defaults

use_off_car_defaults

* update docs

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: c3ba2a025ba96684cd0371ae46b3847589b5c773
2023-02-20 15:28:32 -08:00
Ricky Gilleland 701bde9de3 GM: Escalade 2017 support (#27276)
* Initial 2017 Escalade values

* update docs/CARS.md

* revert back to v1 fingerprint & add test route

* revert bad merge

* update fingerprint

* update

* update

* Update selfdrive/car/gm/values.py

* Update selfdrive/car/gm/values.py

* no engine

* Try global tune

* pcm

* Driver Assist Package has ACC, and includes LKAS from previous package

* update docs

* add to releases

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: b76795d7f083c956004fefd07dbb406eeeb20584
2023-02-15 17:07:24 -08:00
Shane Smiskol 45996b2c65 Car interfaces: assert reasonable centerToFront range (#27356)
* assert reasonable centerToFront values

* comment

* fix Bolt centerToFront

* Update ref_commit
old-commit-hash: 89934b35d04291384b7a287a41ce49905f321167
2023-02-15 16:27:00 -08:00
Shane Smiskol 7357149f5a GM: cleanup torque feedforward function (#27347)
no numpy
old-commit-hash: 8c099dd4e5adf040f7f454714cf729725bee7f91
2023-02-14 22:06:23 -08:00
Vivek Aithal 5edcf1380e Chevrolet Bolt: Non-linear torque tune (#27344)
* add non linear tune

* update refs

* rerun tests
old-commit-hash: e49748d571d06a65a4361dde1f2f63c7294da13a
2023-02-14 16:20:28 -08:00
Vivek Aithal 474e072c02 GM: update steering limits (#27331)
* reduce steer down limit, driver allowance

* update refs

* update refs
old-commit-hash: 1cdf80003dcaea79375cf398ec65849424f2f44b
2023-02-14 13:22:49 -08:00
Shane Smiskol 70a6e03692 GM: add permanent ACC fault signal (#27306)
* bump opendbc

* check signal

* bump opendbc
old-commit-hash: 6474e16a720e88181f03652dcfe91306ddbdc06e
2023-02-11 00:12:33 -08:00
Shane Smiskol 698c6e6624 GM: add hysteresis to cluster speed (#27301)
* add cluster hysteresis

* Update ref_commit
old-commit-hash: 5831a83c907f9f90aac2c53839cd37554b5b235a
2023-02-10 16:14:53 -08:00
Shane Smiskol 58e6704a6f GM: split steering speeds (#27277)
* split steering speeds

* update docs

* Update ref_commit
old-commit-hash: 29ca52bc48dbcfb5e0f74a889229cf44f7a686a6
2023-02-09 16:53:16 -08:00
Shane Smiskol acc8e38111 GM: enforce steering command message timing (#27250)
* draft

* bump opendbc

* still draft

* that's not right

* superset of the changes, 33hz

* cleanup

* this should work

* remove line

* pass it in again

* actually no need to check updated now

* now_nanos

* consistent name

* fix replay

* one line isn't that bad

switch

switch

* fix CarController tests

* Update ref_commit
old-commit-hash: 8f5057ff2dbea4ebc85bc8f55bc7a37e4d5969b6
2023-02-09 15:37:39 -08:00
Shane Smiskol 2e78f89e74 GM: increase min steer speed to avoid temporary faults (#27274)
* increase min steer speed to avoid temp volt faults

* actually 10.15 is safe

* Update ref_commit
old-commit-hash: 9aac0806e3c25c374b67770086cdfd67ffafaf07
2023-02-09 13:24:52 -08:00
Shane Smiskol 74c5532ab2 Rename GM CS variable to be consistent to the CAN parsers
old-commit-hash: ec6a55057ffe381fb65ba946e29cb59f0ee694e7
2023-02-08 17:51:53 -08:00
Shane Smiskol 2b84d8e3c3 GM: refactor steering control code (#27251)
* hopefully easier to understand?

* space

* no confusing elif, move comment to relevant part

* better
old-commit-hash: 5b9f2c3fcd09409211f518b9074afa046a1915d6
2023-02-08 00:09:49 -08:00
Shane Smiskol 503fea8e12 GM: reduce steering message rate (#27201)
* Lower active rate and raise limits to compensate

* bump panda

* bump panda

* Update ref_commit

* bump panda to master
old-commit-hash: 86d86fa9dafc823a9cccd9c06ba995cd510d5535
2023-02-07 23:38:05 -08:00
Adeeb Shihadeh 20fbb0a8fd rename carState.radarOffCan to radarUnavailable (#27187)
* rename carState.radarOffCan to radarUnavailable

* bump cereal
old-commit-hash: 6fa9b555a435cc9639193cca516b78a22189356c
2023-02-02 11:38:09 -08:00
Shane Smiskol bea6ee6ccb GM camera ACC: reliable relay closing (#27164)
* Reliable relay open

* Reliable relay close

* ign in a loop

* fixes

* we need this

* log

* comment to remind me tmrw

* ign fix

* this makes it 2x more reliable, but messyyy

* Revert "this makes it 2x more reliable, but messyyy"

This reverts commit 03401dc4a705cfacbe5a7048d95dccb6fa80d57f.

* revert non-related stuff

* comments, spaces

* a stands for indefinite article

* not applicable for non-camera acc

* something...

* Revert "something..."

This reverts commit de8a158488efd5ef257434fbc3c55aefff800cb7.

* Update ref_commit
old-commit-hash: 022ef679e6d67f0be82ddc19b595bc874d456138
2023-01-31 20:26:33 -08:00
Shane Smiskol 2e954e7473 GM camera ACC: reliable relay open init (#27163)
Reliable relay open
old-commit-hash: 09cd0b4900d8aff1c9484c8848c9b5f7ff269594
2023-01-31 01:09:36 -08:00
Shane Smiskol cc44b893c4 docs: open footnotes in new tab
old-commit-hash: 47cca343ec6ae611871d53d7b0660647f816f1c9
2023-01-12 15:07:14 -08:00
Tim Wilson 94c98f4dd2 GM camera ACC: always set long tune (#26892)
* GM: set long tune for camera car w/o exp. mode

* same tuning

* update refs

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: a40efbdfcc3619528a2634d6b291c928c2374b4b
2023-01-09 15:01:55 -08:00
Eric Brown 8267e0dcdc GM: check radarOffCan in radar_interface (#26885)
Remove hardcoded vehicle list, replace with radarOffCan check
old-commit-hash: b994b93b164bb9dc2a8689dff0f271d2d68ced55
2023-01-06 16:46:21 -08:00
Shane Smiskol e66e4d8af2 Lateral jerk unit test (#25759)
* stash

* more test

* less test

* clean test

* no angle

* add tolerance

* fix gm

fix gm

* test both

* lower some rates on hkg

* stash

* simpler

* bump panda

* Revert "bump panda"

This reverts commit f2137c221145cca723fe6ee3378ba947b7061965.

* only torque

* make kona pass

* duplicate __init__

* move

* half clean up

* half clean up

* more clean up

* more clean up

* fix static analysis

* calculate over 0.5 seconds

* limit to max steer

* type annotation

* calc once
old-commit-hash: aab33b1c5f56eb7ef66f1128c98d45d5340ebc60
2022-12-15 21:52:07 -08:00
Jason Shuler fc38509523 GM: add checksum to button message (#26014)
* Add GM button msg checksum

* checksum that works for both, fix missing bit

* bump opendbc

* update comment

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 2f83b9872fe991d21e07a95cc518f91f140a856a
2022-12-12 17:26:30 -08:00
Shane Smiskol ec9060c7ba CarController: log steer sent to the car (#26743)
* log value sent to the car

* rename

* bump

* Update ref_commit
old-commit-hash: f36a3664b056a3500b68f4b5d7955b13bc8d0e4c
2022-12-10 02:03:40 -08:00
Shane Smiskol 203ade9602 GM: add Bolt EV test route (#26681)
* bolt ev!

* releases

* it's a trim
old-commit-hash: 3e2a49c6e5a526c7af5667ea7bd62f91b20ab0a9
2022-12-02 22:09:42 -08:00
Shane Smiskol 8aadc8dda6 Car interface: set common params after port (#26613)
* remove pylint exception, _get_params takes no defaults

* clean up

* mock uses it too

* unused

* unused

* fix that

* bump

* Update selfdrive/car/interfaces.py
old-commit-hash: 860f441e2f122173c5034656aeed5706fd41e38f
2022-11-29 11:49:13 -08:00
Shane Smiskol cf287d796b GM Cam: log when cruise not adaptive (#26581)
* bump opendbc

* log when nonAdaptive

* Update ref_commit
old-commit-hash: 9fdbe9f397b79f33c0653f4e9dd3b1cbb2e92273
2022-11-22 15:18:10 -08:00
Shane Smiskol ee961b62f8 Car docs: add a make-specific init function (#26565)
* add a hook function for makes to implement custom docs logic

* don't need this

* use the pre-defined list for honda's harnesses

* one line 😎

* Update selfdrive/car/docs_definitions.py

* i didn't know you didn't need a pass!

* don't change docs order
old-commit-hash: 1367f84425b5fbdb3ecf8452b134b641998e404a
2022-11-21 18:01:08 -08:00
Tim Wilson 713ec37e49 Add video_link for GMC Sierra (#26506)
* Add video_link for GMS Sierra

* fix precommit

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 187f8c177a1a4d507a4ca145463f852cee3ce7aa
2022-11-17 02:03:13 -08:00
Tim Wilson d985096170 Add video link for Volt (#26504)
old-commit-hash: bdc432d21824cc83627bb5d1abd5e99b4bc62fc3
2022-11-15 10:55:43 -08:00
Shane Smiskol 74d58ab0d6 GM: match stock enabling behavior (#26442)
* add first draft enable button timeout

* use allow_enable

* it doesn't count if brakePressed

* enable on rising edge of resume (matches stock)

* not today

* add comment describing the fault this avoids

* cleaner

* handle incrementing speed

* rename

* add test for not changing speed if enabled changes mid-press

* spacey

* ugh

* bumpo

* need this to fix a fault (draft)

* already have

* this should be cancel

* fine to do for all

* fine to do for all

* bump

* bumpo

* bump to master

* Update selfdrive/car/gm/interface.py

* Update selfdrive/car/gm/interface.py

* Update ref_commit
old-commit-hash: 15383d30161de7646edf770153b0f81d15338c54
2022-11-13 21:13:46 -08:00
Shane Smiskol dc27f0de03 GM: handle run-away set speed (#26480)
* GM: Handle run-away set speed

* bumpo

* This is a test of both PRs combined

* tempbump

* Revert "tempbump"

This reverts commit b73e04fca25e6a1bac889e44afac6430d5ad7c30.

* Revert "This is a test of both PRs combined"

This reverts commit 22cc0e6900e0f0470f14ed55e7846e4b1d570826.

* fix

* bump

* fix that

* Bump to master

* fix fix
old-commit-hash: 65f494d845bbfa47293ad3158a68bc38c1b4dcff
2022-11-12 02:02:30 -08:00
Shane Smiskol 0371e47fac controlsd: resume does not increment speed while cruise standstill (#25470)
* fix runaway set speed for GM

* fix runaway set speed for GM

* Handle resuming to exit standstill generically

* clean that up

* ugh i want to fix all the formatting

* class that manages v_cruise

* better name

* move around

* add depressed_state

* fine to update on pressed change, better name

* cmt

* we need to check CS. button_change_state only works if we exit standstill on rising edge not falling edge

* no defaultdict
old-commit-hash: 76ac3d4c99df24f068aee3baedb796f65dfcca66
2022-11-11 19:43:30 -08:00
Shane Smiskol 1ea7e49e8d controls: disengage on regen paddle independently (#26453)
* add regen braking field that's just used to add a pedalPressed

* bump

* bump

* Update ref_commit

* we want the standstill check

we want the standstill check

* see what diff is now

* Update ref_commit
old-commit-hash: 74b6e22a7dc8e0b1ec051f00037506d23a017ae8
2022-11-10 19:06:31 -08:00
Shane Smiskol 54b089a56d GM Camera: use ECM brake pressed bit (#26400)
* GM camera: use ECM brake pressed bit

* bump panda and use more reliable bit

* bump panda

* back to ECMEngineStatus

* bump

* Update selfdrive/car/gm/carstate.py

* bump panda

* Update ref_commit
old-commit-hash: 191b8081b2a9f3f9db0131edd270e40166570cfa
2022-11-08 20:52:35 -08:00
Shane Smiskol 84bf91ceda GM: fix fault while moving backwards (#26333)
* log signed speed

* bump to master

* need this

* fix

* fix...

* see if this works

* just fault fix (no logging or standstill. tho revisit standstill)

* move

* Revert "move"

This reverts commit c564e74666e3a418ef43a77926c8a38a2bf89511.
old-commit-hash: e634afb719e9ea787155272b3d2fe64b385bcb7d
2022-11-02 17:55:53 -07:00
Shane Smiskol 6a7ce3a4d6 GM camera ACC: vision-only ACC behind toggle (#25631)
* put gm camera voacc behind disable radar toggle

* bump panda

* bump panda

* bump panda

* experimental long

* fixes

* car control notes and fixes for Bolt EUV

* might enable stop and go

* consistent name

* min enable speed seems to be around 5 kph

* camera acc can engage under 5 kph if stopped

* comment

* comment

* remove this for now

* only real brake

* comments

* update max brake

* bump

* clean up/fix

* same if

* simplify

* fix

* old comment

* no brake_pressed

* temporary fault fix

* tune longitudinal

* update docs

* bump panda

* GM camera ACC cars have no regen in ACC

* cleaner

* cleaner

* fix

* set max gas

* fixes

* fix LKAS unavailable warning from camera

* only camera

* bump panda

* bump panda

* bump panda

* bump panda

* clean up gmcan

* clean up CC

* flip

* rm

* rm comment

* clean up

* custom starting/stopping probably not needed

* Update selfdrive/car/gm/carcontroller.py

* fix crash

* long tuning

* we need long control state to resume

* CAMERA_ACC_CAR not needed

* no interp on accel

* tuning

* formatting

* formatting

* formatting

* formatting

* formatting

* no need to init ccp

* makes more sense now
old-commit-hash: 2fb7b4ffad204901033273f6f92f289bbce19f06
2022-11-02 02:46:29 -07:00
Shane Smiskol 59090b598f GM: add longitudinal deadzone (#26323)
* add deadzone

* Update ref_commit
old-commit-hash: 0f6f305f2da81c30aef849bc55c76e57ebe5e34d
2022-11-02 01:58:15 -07:00
Shane Smiskol ed9c040be9 GM: reduce LKAS faults while inactive (#26196)
* send at 10hz when inactive

* try to make it fine to switch rates

* fix rate

* todododo

* fine if we skip, we usually send too early

* clean up

* this may be required, 50Hz is not really needed to sync/initialize

* preserves previous behavior (not sure if this makes sense)

* Revert "preserves previous behavior (not sure if this makes sense)"

This reverts commit 3b297bca72307b5cba09bec4e2cd8e0f2761af42.

* Revert "this may be required, 50Hz is not really needed to sync/initialize"

This reverts commit a6b4693814214d3f508db922f3b371c402a13995.

* rm com

* Update ref_commit

* gate behind GM Cam

* common logic

* bet

* update refs
old-commit-hash: 27e315e58f5273da79803ad95737fc15483fef21
2022-10-25 00:12:49 -07:00