Commit Graph

59 Commits

Author SHA1 Message Date
Justin Newberry 58936aa0cb Use StrEnum for car classes (#30114)
* str enum

* import sort

* fix car helpers

* fix that

* fix static analysis
old-commit-hash: 6ae465e4af76e21c6a31c541f37555f6bd0727fc
2023-09-30 17:15:34 -07:00
Adeeb Shihadeh 16ec56398c add openpilot prefix to imports (#29498)
* add openpilot prefix to imports

* more

* more

* fix docs

* fix linter

* bump submodules

* fix patched tests

* update dynamic imports

* debug

* Revert "debug"

This reverts commit db5e13b9911cc74438bee123bc3430da6c31b24b.

* fix pm test
old-commit-hash: a9626f95b69af19306143fc4def02fb5769405d2
2023-08-20 20:49:55 -07:00
Shane Smiskol 1a2818d775 Revert "radard: tie radard frequency to modelV2 vol. 2 (#29240)" (#29474)
* Revert "static analysis fixes"

This reverts commit 2271d0adf9a02aee1359717c47cb6280893a6b9b.

* Revert "radard: tie radard frequency to modelV2 vol. 2 (#29240)"

This reverts commit 6757e90415766e84ad1b6c921a2edb29ceb3bbbe.

* update refs
old-commit-hash: 1a08c2986e5600dd4e84bfeaed26c74e679085de
2023-08-18 22:56:43 -07:00
Jason Young ac83f87b36 interfaces: add common STD_CARGO_KG to mass (#29416)
* cleanup std_cargo_kg

* fix Sonata mass

* remove snowflake construct

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: f76ffbdbbcef50ba201edc0349f777e4e372b515
2023-08-17 21:06:07 -07:00
Kacper Rączy 4017b1707c radard: tie radard frequency to modelV2 vol. 2 (#29240)
* radard: tie radard frequency to modelV2

Accumulate parsed messages until state is updated (toyota)

Same for honda

Rename rr to something more descriptive

* Change _update method name, since signature has changed

* Update ref commit

* Some renames

* Check for number of cans
old-commit-hash: 460f5c8e0b2fd2c420e211b09b70d1d79834a929
2023-08-11 18:07:06 -07:00
Shane Smiskol 151b707901 Car interfaces: remove hard-coded signal definitions (#27773)
* What if: no signals! 🙅🤌🎆

* do hyundai

* honda!

* do gm

* and vw! (sorry comments)

* do those

* -500

* little more

* fix subie

* change back

* bumpopendbc

* oof lol

* messages

* some clean up

* here too

* clean up honda radar_interface.py

fix

rm

* bump opendbc to master

* add todo

* rename checks in tesla/radar_interface

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: cbfcc405715ae4fa45b3beea03dd82ba925495c4
2023-08-10 20:30:35 -07:00
Justin Newberry a14f162bc7 Ruff: comprehensions conventions (#29317)
ignore c408
old-commit-hash: 4a9afd7554060ac5353e96f1d7feb06d3a3671e9
2023-08-10 16:40:30 -07:00
Justin Newberry 3ee0786de3 CI: Pylint to ruff (#29294)
* pylint to riff

* pylint to riff

* pylint to riff

* revert more

* undo exclude removal

* exclude tinygrad

* set line length

* pylint exclusions to ruff

* same excludes as old linter

* fix tools QA

* remove unrequired check

* revert linting third_party

* ignore e402
old-commit-hash: 7fdd9fc37c1c5febf1cd3dc86441ebf0dec7f370
2023-08-09 13:26:54 -07:00
Justin Newberry 7b677910df Linter: Fix >160 line length test (#29287)
* test

* fix line length

* fix line length

* fix file size

* revert poetry

* cleanup for PR
old-commit-hash: cf64b27168614f851087adab2d7f766425922f64
2023-08-08 17:13:35 -07:00
Kacper Rączy c92e7265a6 Revert "radard: tie radard frequency to modelV2 (#29063)" (#29243)
This reverts commit 4b221cb4fd271664ab7d39c5cfefb4225ca07c2a.
old-commit-hash: 1774b4fc61c8f92fae16545a68854238660737e6
2023-08-04 20:25:40 -07:00
Kacper Rączy 79fa322d4a radard: tie radard frequency to modelV2 (#29063)
old-commit-hash: 255f5c13f2d8c6796fd960b248856f11a3c1b05a
2023-08-03 22:10:21 -07:00
Robbe Derks 0db0c890a5 Tesla: half the DAS_steeringControl message rate (#27503)
* half the freq, double the limit

* fix bug

* bump submodule
old-commit-hash: 7ab9569a0815022ef5abadc6a3641bd93e4a8f6d
2023-06-01 23:25:55 +02:00
Shane Smiskol 3aff7d044e Tesla: explicitly copy signals to forward (#28306)
* tesla

* cmt
old-commit-hash: 303c62119d6e41f13a59e12a41495e4950d6acf3
2023-05-25 23:35:32 -07:00
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
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
Robbe Derks 78f6f6eee4 Tesla non-zero stopAccel (#26840)
remove stopAccel override
old-commit-hash: af561393fe0d535315a52e35556697667886089d
2022-12-28 15:38:10 +01: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
Shane Smiskol ae26b6fb0f Car controls: common angle limiting function (#26732)
* common angle limiting function

* save a line
old-commit-hash: 41667d020ac8eb8d518e9437de32d8d9d09b6b15
2022-12-08 16:26:41 -08:00
Shane Smiskol d6f6b0de91 Car interface: set tire stiffness in common function (#26625)
* common stiffness

* GM uses factors
old-commit-hash: 712b9014d708ce77e87e2d1bb4dfe2d7665a8414
2022-11-29 12:50:27 -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
Robbe Derks 9790dffe6d Fix Tesla cancel button definition (#26596)
misinterpreted the dbc
old-commit-hash: 1efc8b9c78880778f4f604058c639ebdb2e12ff5
2022-11-25 13:20:20 +01:00
Robbe Derks fe1352747d Tesla FW query (#25785)
* early wip

* add addresses

* cleaned up fw versions

* remove CAN fingerprint

* Revert "remove CAN fingerprint"

This reverts commit 337e8d65ef7ee2724cfe6ff711ee8aeffdbbb22f.

* bump panda

* Revert "Revert "remove CAN fingerprint""

This reverts commit 12536fa8358438a6d6713c0b7bef0383bbc83588.

* bump cereal

* fix ecu type

* whitelist per rx_offset

* bump submodules again

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: b3be8636710c3ef4699bbb256f56823302d08397
2022-09-23 13:40:15 +02:00
Robbe Derks debdd12a51 Tesla AP2 fingerprint update: forgot one message (#25783)
old-commit-hash: 05e80cf4fbbccd602c0f3feb43927ae86ba550c9
2022-09-14 17:35:48 +02:00
Robbe Derks 3207c24f88 Update Tesla AP2 fingerprint (#25763)
update fingerprint for v11 software

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 852af4d1f84ca17bb9ec0d0fe376077acf07b841
2022-09-13 11:47:16 +02:00
Adeeb Shihadeh e4f9781c17 single longitudinal toggle for e2e and disable radar (#25688)
* single longitudinal toggle for e2e and disable radar

* write disable radar param

* rename

* better param name

* clean that up

* update refs

* update translations

* not live for experimental

* write it out

* vanish
old-commit-hash: 655a64b60318ce44ef0271e03de16e8b135b5268
2022-09-07 17:12:49 -07:00
Shane Smiskol 0d83812f86 Clean up CarControllers (#25008)
* do VW

* Do the rest

* unused

* ford cc formatting

* final clean ups

* also just return update output
old-commit-hash: d2c2154a32db0876036f4f6b61b912de0c90fc5a
2022-06-30 17:23:12 -07:00
Robbe Derks e2ec07483f Add new message to Tesla AP2 fingerprint (#24912)
* add new message

* fix spacing

* add space
old-commit-hash: e2757208622e29a00d5191d7d2f971cafcf61602
2022-06-20 12:15:39 +02:00
HaraldSchafer b0b1aff5cc Rocket league model (#24869)
* dd9a502d-c8e2-4831-b365-804b0ae0739d/600 80041070-d276-4fed-bdb9-0075e5442908/420

* no elementwise op

* 9dabf0fe-2e60-44bf-8d3a-d20a74aca072/600 ae746590-0bb5-4a16-80db-15f02d314f03/300 c4663a12-b499-4c9b-90dd-b169e3948cb1/60

* explicit slice

* some copies are useful

* 1456d261-d232-4654-8885-4d9fde883894/440 c06eba55-1931-4e00-9d63-acad00161be0/700 af2eb6ba-1935-4318-aaf8-868db81a4932/425

* 154f663e-d3e9-4020-ad49-0e640588ebbe/399 badb5e69-504f-4544-a99e-ba75ed204b74/800 08330327-7663-4874-af7a-dcbd2c994ba7/800

* set steer rate cost to 1.0

* smaller temporal size

* Update model reg

* update model ref again

* This did upload somehow

* Update steer rate cost

Co-authored-by: Yassine Yousfi <yyousfi1@binghamton.edu>
old-commit-hash: 9283040d847b120fdf7759d5bd12000863e12f73
2022-06-15 15:29:42 -07:00
Robbe Derks 5ea517c299 Tesla stock AEB forwarding (#24503)
* keep long control in sync with the stock system

* panda changes needed

* add stock AEB state

* forgot to add the counter

* fix skipping some counter values if they overlap
old-commit-hash: b9c350bf98afeb79489eb5db134d072d54e201f1
2022-05-16 13:49:40 +02:00
Adeeb Shihadeh 3789587df1 add alert for CAN bus timeout (#24162)
* add alert for CAN bus timeout

* add alert

* set in interface

* cleanup

* cleanup

* add event

* fix mock

* bump

* bump opendbc

* update refs

* return reader
old-commit-hash: 49c2164814e07c1243ef2b979957760d64c9eb35
2022-04-12 22:58:34 -07:00
Shane Smiskol 5a9c45b6e3 Clean up CarInterface.apply and CarControllers (#24060)
* do tesla

* parentheses

* Do Chrysler

* Make sure Hyundai long never actuates when long inactive

.

* clean up Hyundai

* more clear

* formatting

* Stock sets these to zero

* fix params

* move jerk logic into CC

clean up
old-commit-hash: c8f5b217443036333bc18c29085a1c8ae8bd39f3
2022-04-05 23:38:45 -07:00
Robbe Derks 9ac0011bc2 Tesla: disable temp fault on hands on error (#24014)
old-commit-hash: 1035b910f090f83ed26746ddc0dfdcfc07405ad7
2022-03-22 21:02:28 +01:00
Robbe Derks bf575da274 update tesla ap2 fingerprint after OTA update (#24013)
old-commit-hash: 25219442d15438af5c7557ebe988d016297e0a94
2022-03-22 11:07:12 +01:00
Shane Smiskol bf8262394f Docs: auto-generate supported cars documentation (#23762)
* make CAR class enum, and values.py formatting

* Revert "make CAR class enum, and values.py formatting"

This reverts commit 04d9817e9d5d6ab5c027754018fc445f2cd3067a.

* stash

* add supported packages and model years

* don't change model years in fps

* move Lexus to info dict and make int enum

* remove sometimes wrong model years from name string

* use enum names

* convert Honda's values

* nice names

* use name

* GM

* Mazda, Ford

* Hyundai: WIP

* finish Hyundai

* fix

* Nissan

* Subaru

* Tesla

* formatting is for another PR

* Chrysler: todo: unify the Pacificas?

* do volkswagen

* this isn't a zoo

* skip enums for now

* Update selfdrive/car/volkswagen/values.py

Co-authored-by: Jason Young <46612682+jyoung8607@users.noreply.github.com>

* set All

* temp cars

* auto-generate CARS.md

* update type hinting

* add generated file

* add longitudinal star to cars that support disabling radar

* add TODO

* add notes

* add min_steer_speed exception for hatchback

* add minimum steering speeds

* Add exceptions and run generator

* Missing Telluride

* fix Prius v

* missing Prius Prime

generate

* start to convert years to strings

* Fixup Hyundai

* convert year sets to strings

* handle this

* missing S3

* Fix and add all missing cars (verified with script

* Supported Package fixes

* add get_tiered_cars

* Check radarOffCan for removing most Honda from op long

* Update for Avalon stop and go update on master

* Fix missing car params

* add my temporary script i'm using to verify new generated DBC

add my temporary script i'm using to verify new generated DBC

* generate with jinja template

* add header and footer

* clean up

* rename

rename

* add exceptions. jinja is nice, but why are its loop indexes starting at 1?

* add list of known car videos

* See how these look

* Add nice table formatting for column description

Add nice table formatting for column description

* generate

* consisten br tag

* small clean up

* temp

* Move car videos into CarInfo

* add new copy and rename to footnotes

* Revert "temp"

This reverts commit 93c3fce1d3ab406f80cbfb9c00c2237d109c7846.

clean up

* generate

* replace with svg

* simplify a bit

* add footnotes to CarInfo

* move some variables to docs.py

* Add video link for Acadia

* Make Footnote an enum so we don't use random ints

* static analysis fixes

* move to CARS.md

* fix last missing footnote

* add to release files

* rm test file

* use svg

generate

* fix sorting

* not needed

* not sure how this got here

* remove Sedan/Couple and add Diesel footnote

* finish todos

* move make specific footnotes to selfdrive/car/*/values.py

rename

* change to zeros

* align bottom to center

* Apply some suggestions

* Update selfdrive/car/mock/values.py

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* Update copy

* Try headers + bullet points

* somehow better

somehow better

* finish updating copy

* move template and add links to sups

* stars shouldn't be clickable

that didn't work

try this

try this

this is better

* add type hints to CarInfo

add more type hinting

* optional needs a type and any covers all (?)

* move good steering torque to */values.py

* dataclasses are much nicer than attr

* use tuple

* Update docs/cars.py

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* suggestions

* suggestions

* suggestions

remove

* clean up a bit

* add more type hints

* center stars and remove hardcoding from template

* update copy

* Add test

* Fix types

Fix types

* add supported cars documentation test

* clean up

* replace with docs_definitions

* Add back Footnote enums

* Ah so these are like fstrings!

* Update selfdrive/car/CARS_template.md

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* Update selfdrive/car/docs.py

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* Update year from master merge

* Fix longitudinal star from merge

* sort properly stars by Column enum

* clean up

* HKG: Sorry guys

* Prius V gets FSR star, like others

* Update selfdrive/car/docs.py

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* update comment

* No Prius docs change for now

Co-authored-by: Jason Young <46612682+jyoung8607@users.noreply.github.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 31a6b141d6c37d7241146a9dc7b3a10313abdc40
2022-03-16 21:27:05 -07:00
Adeeb Shihadeh 3327348aeb don't read params in car interfaces (#23978)
old-commit-hash: bae78dd46b817bea26c6de05322eed5cab0bfba8
2022-03-16 15:17:47 -07:00
Adeeb Shihadeh ec47e0fef0 break up selfdrive.config (#23959)
* break up selfdrive.config

* add to release files

* fix import order
old-commit-hash: 5c3f3e44bc7b25c9ce502419bcd0261c12ec2b0d
2022-03-13 21:42:39 -07:00
Shane Smiskol 3e61c7e6ae carControl: add long and lat active fields (#23859)
* proof of concept

* actuators packet describes which actuators are active

* bump cereal

* fixes

* not needed for this PR

* Do Toyota

* add back controlsState.active

* bump cereal

* rest of cars

* in actuators

* add active back

* which

* use controlsState.active for now

* will make an issue

* Update selfdrive/controls/controlsd.py

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* move local lat_active checks into CC.latActive

* remove redundant checks

* move comment

move comment

* fix joystick mode

* get enabled from carcontrol

* do standstill check in controlsd

* make sure we consider the gas press case for GM

* use CC.actuators

* fix

* capitalization

* Bump cereal

Bump cereal

* make intermediate actuators

* similar convention to before

* clean that up

* update refs

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 629399a44925080b2c35b6dde35c093cc2e32035
2022-03-13 20:58:44 -07:00
Adeeb Shihadeh eabc0b5289 cars: remove duplicated cancel logic (#23956)
old-commit-hash: b9484a6a99b4abe3a0c60d83a0ad1b43926cba45
2022-03-13 20:22:49 -07:00
Adeeb Shihadeh 63bbcd7279 better steer fault names (#23890)
* better steer fault names

* bump cereal
old-commit-hash: 87849f93b165507ad980dbefdcf9c376d5165a18
2022-03-01 22:53:55 -08:00
Robbe Derks f767c1b930 this seems to about what my car converges to (#23836)
old-commit-hash: f4d91f71a54becb04cddba9ad62edff4573d9fd4
2022-02-23 16:03:31 +01:00
Adeeb Shihadeh 71da8d1250 No actuation while in pre-enabled state (#23658)
* No actuation while in pre-enabled state

* update refs
old-commit-hash: 72e00a07686fa112dde7928fa48ab4a56ed7a7f5
2022-01-28 16:03:44 -08:00
Shane Smiskol fadba4b34d CANParser: remove default values (#23642)
* draft

* remove rest

* bump

* update radar interfaces

* do rest and formatting

* bump

* fix mising check

* try this

* Revert "try this"

This reverts commit 0d26d9a072f87dbc897ed525b70fb1db9cb04a06.

* update refs

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 3645186d7cfcbe8889fed14caf5c51a0a84f14bb
2022-01-27 17:06:18 -08:00
Willem Melching 39a5e19e30 tesla: fix actuatorsOutput logging (#23637)
old-commit-hash: 6a9a573296696065c00ac3f9c6af916cd31eadb1
2022-01-27 11:46:35 +01:00
Shane Smiskol beeb0442ce base LatControl class (#21967)
* base LatControl class, move sat check out of pid.py

clean up

clean up

* fix

* global variable for min control speed

* nicer name

* unify latcontrol class init arguments

* add to release files

* saturated if close to limit

* move angle mode saturation checks into class

* check_saturation function takes in current saturated status

undo

* apply latcontrol_angle's active checking to all controllers

* clean up

* move those back

* make abstract baseclass

* add test for saturation

* keep clip

* update ref

* fix static analysis

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 9de8f8cd8c384596868edf3307da51819b28bb4b
2022-01-26 17:10:41 +01:00
Adeeb Shihadeh 597535c014 linter: don't allow implicitly concatenated strings (#23513)
* linter: don't allow implicitly concatenated strings

* fix hyundai
old-commit-hash: 2c94f155840b49639b8bf1ec996d99e268fa9a52
2022-01-13 14:19:38 -08:00
Dean Lee 98de810849 check in tuple instead of list (#23477)
* check in tuple instead of list

* Update selfdrive/car/toyota/carcontroller.py

Co-authored-by: Willem Melching <willem.melching@gmail.com>

* Update selfdrive/car/mazda/interface.py

Co-authored-by: Willem Melching <willem.melching@gmail.com>

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: a653461dec18b1313148905172ba54bac9f5fdfd
2022-01-10 16:36:51 +01:00
Shane Smiskol d05c173fe6 Longcontrol: remove starting state (#23328)
* remove starting state

* new ref

* ready for merge

* try this

* cereal now on master

Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
old-commit-hash: cf9792dc536db343447cfa64edecc72565c4eefd
2022-01-04 15:40:39 -08:00
Willem Melching 7b3e330def Log actuators after applying rate limits in CarController (#23230)
* return actuators from carcontroller

* log it

* pass to latcontrol

* chrysler

* gm

* honda

* more brands

* rest of the brands

* gm cleanup

* hyundai cleanup

* update ref

* rename field

* fix subaru

* add types

* more subaru fixes #23240

* consistent whitespace

* bump cereal
old-commit-hash: 4f1eb4278a83a3abebebef67a081961e27594d90
2021-12-16 13:08:20 +01:00
Robbe Derks b66e2a9f7a Tesla longitudinal control (#22561)
* tesla long squashed changes

* fix no resume from stop

* try setting accel limits to 0 to remove jerk with fast switchover

* expand radard lookup tables

* bump merged panda submodule
old-commit-hash: 4960578bdfae11689da81e80973b998b05e6fd96
2021-11-18 13:57:12 +01:00
Robbe Derks 149267c031 Tesla: steerWarning on EPS error (#22834)
old-commit-hash: fee8ec74f18bc5de4750b81732316add17482bb3
2021-11-09 13:36:23 +01:00