Commit Graph

75 Commits

Author SHA1 Message Date
Shane Smiskol
08097bdf0c [bot] Fingerprints: add missing FW versions from new users (#32186)
Export fingerprints
2024-04-12 16:02:27 -07:00
Adeeb Shihadeh
ee9d12a038 Tesla: remove CAN fingerprints (#32176) 2024-04-11 14:58:05 -07:00
Justin Newberry
b0eb3ba4f4 cars: platform enums -> prepend brand name (#31927)
* with brand name

* migrate

* Fix

* fixes

* more

* passes

* fix

* fix the doc

* collects

* these too

* more stuff

* body exception :/

* more

* hardcode i guess

* update ref

* toyota

* more toyota

* and here

* final!

* fix notebooks and ccs

* move this here
2024-03-19 17:29:50 -07:00
Adeeb Shihadeh
3a7582d9a6 Abstract out common CarInterface.apply (#31924) 2024-03-19 13:46:31 -07:00
thenhnn
489528dcae PlatformConfig: automatically get platform_str from the enum name (#31868)
* get platform_str from the enum name

* fix tests

* add migration table

* remove impossible todo

* Add link to PR in MIGRATION table

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

* Remove useless brand name comments and rename RAM_1500 to RAM_1500_5TH_GEN

* rename RAM_HD to RAM_HD_5TH_GEN

* rename references to RAM_HD and RAM_1500

* change "mock" to "MOCK" and rename torque data of Nissan Leaf 2018 IC

* remove MOCK from fingerprints.py

* change hard-coded car model in test_can_fingerprint.py/test_timing

* migration

* update ref

* space

* prius

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: justin newberry <justin@comma.ai>
Co-authored-by: Justin Newberry <jnewberry0502@gmail.com>
2024-03-19 11:16:02 -07:00
Justin Newberry
655e5f7c3e rename CarInfo to CarDocs (#31879)
car info to car docs
2024-03-15 11:45:44 -07:00
Shane Smiskol
bdae188c6f docs: don't support multi-type car info (#31875)
don't support multi-type car info
2024-03-15 00:11:41 -07:00
Shane Smiskol
78a46ce724 car values formatting (#31747)
values formatting
2024-03-06 15:47:44 -08:00
Robbe Derks
7177ec0631 Tesla Raven (#29947)
* fingerprinting

* wip

* bug

* fix another bug

* fix rebase

* clean up raven

* forgot to save

* one more rename

* one more rename

* radar fixes

* AP1 also has bosch radar

* put back dashcamOnly

* small fixes

* raven flag

* fix bug

* fix raven flag

* bump opendbc

* fix radar trigger for non-raven

* fix tests?

* bump panda

* more test fixes

* tesla fingerprinting is a bit slower now

* fix tests

* bump opendbc

* bump submodules to master

---------

Co-authored-by: Comma Device <device@comma.ai>
2024-03-06 21:14:48 +01:00
Justin Newberry
25ccb2426c cars: remove CAR_INFO map (#31739)
* no carinfo map

* smaller diff

* not on mock
2024-03-06 11:22:12 -08:00
Justin Newberry
b0eae8c1b7 platformconfig and carspecs are now required, carspecs no longer kwarg (#31667)
* required

* mock can be a platform!

* default is mock

* fix that

* and that one
2024-03-01 11:31:51 -08:00
Justin Newberry
80807879de Tesla: move to platform config (#31648)
tesla platform config
2024-02-29 11:11:37 -08:00
Justin Newberry
d4c497d826 add CarControllerBase base class to all CarControllers (#31630)
just base class for now
2024-02-28 17:13:44 -08:00
Cameron Clough
995250ae49 use pyupgrade to update to new typing syntax (#31580)
* add pyupgrade hook

* run pyupgrade (pre-commit run -a)

* ruff --fix

* Revert "add pyupgrade hook"

This reverts commit 56ec18bb6b8602a0b612f3803d96cdad14b52066.

* revert changes to third_party/

* manual type fixes

* explicit Optional wrapping capnp objects
2024-02-24 16:41:23 -08:00
Justin Newberry
3713e4d5ea add script to automatically format fingerprints file (#30792)
* Add script

* fix script

* fix script

* fix for subaddr

* run the script

* old style can fingerprints

* cleanup

* sort imports, make executable, fix path

* newline w/o newline

* match og can formatting

* match og formatting

* generate template once

* standard name

* less nested

* can fingerprints comments

* fix spacing

* no need for PLATFORM_TO_ENUM_NAME!

* prep for PRs

* comments for all, add honda comments

* Auto-generated fingerprint PR from fuzzy fingerprinting cars

* Revert "Auto-generated fingerprint PR from fuzzy fingerprinting cars"

This reverts commit 97bc9e3bdb9d819dcbe684ceba92ea702d40eaf0.

* even closer to original

* readd this comment

* and run script

* add to precommit

* add comments

* add comments

* add to release

* use for auto fingerprint

* disable precommit for now

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-12-20 11:18:29 -08:00
Justin Newberry
28eed156e0 Move all fingerprints to fingerprints.py (#30790)
* move fingerpints

* fix circular imports

* fix circular imports

* fix auto fingerprint

* fix those tests

* and controlsd

* add labeler rule

* no defaultdict
2023-12-18 14:04:27 -08:00
Justin Newberry
6ae465e4af Use StrEnum for car classes (#30114)
* str enum

* import sort

* fix car helpers

* fix that

* fix static analysis
2023-09-30 17:15:34 -07:00
Adeeb Shihadeh
a9626f95b6 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
2023-08-20 20:49:55 -07:00
Shane Smiskol
1a08c2986e Revert "radard: tie radard frequency to modelV2 vol. 2 (#29240)" (#29474)
* Revert "static analysis fixes"

This reverts commit a1e85f3661.

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

This reverts commit 460f5c8e0b.

* update refs
2023-08-18 22:56:43 -07:00
Jason Young
f76ffbdbbc 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>
2023-08-17 21:06:07 -07:00
Kacper Rączy
460f5c8e0b 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
2023-08-11 18:07:06 -07:00
Shane Smiskol
cbfcc40571 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>
2023-08-10 20:30:35 -07:00
Justin Newberry
4a9afd7554 Ruff: comprehensions conventions (#29317)
ignore c408
2023-08-10 16:40:30 -07:00
Justin Newberry
7fdd9fc37c 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
2023-08-09 13:26:54 -07:00
Justin Newberry
cf64b27168 Linter: Fix >160 line length test (#29287)
* test

* fix line length

* fix line length

* fix file size

* revert poetry

* cleanup for PR
2023-08-08 17:13:35 -07:00
Kacper Rączy
1774b4fc61 Revert "radard: tie radard frequency to modelV2 (#29063)" (#29243)
This reverts commit 255f5c13f2.
2023-08-04 20:25:40 -07:00
Kacper Rączy
255f5c13f2 radard: tie radard frequency to modelV2 (#29063) 2023-08-03 22:10:21 -07:00
Robbe Derks
7ab9569a08 Tesla: half the DAS_steeringControl message rate (#27503)
* half the freq, double the limit

* fix bug

* bump submodule
2023-06-01 23:25:55 +02:00
Shane Smiskol
303c62119d Tesla: explicitly copy signals to forward (#28306)
* tesla

* cmt
2023-05-25 23:35:32 -07:00
Shane Smiskol
5aebdb0ad0 Car docs: pass docs flag to car interfaces (#27311)
* docs

* docs

* docs

* docs

* use docs in gm
2023-04-18 12:22:22 -07:00
Shane Smiskol
8f5057ff2d 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
2023-02-09 15:37:39 -08:00
Robbe Derks
af561393fe Tesla non-zero stopAccel (#26840)
remove stopAccel override
2022-12-28 15:38:10 +01:00
Shane Smiskol
aab33b1c5f 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
2022-12-15 21:52:07 -08:00
Shane Smiskol
41667d020a Car controls: common angle limiting function (#26732)
* common angle limiting function

* save a line
2022-12-08 16:26:41 -08:00
Shane Smiskol
712b9014d7 Car interface: set tire stiffness in common function (#26625)
* common stiffness

* GM uses factors
2022-11-29 12:50:27 -08:00
Shane Smiskol
860f441e2f 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
2022-11-29 11:49:13 -08:00
Robbe Derks
1efc8b9c78 Fix Tesla cancel button definition (#26596)
misinterpreted the dbc
2022-11-25 13:20:20 +01:00
Robbe Derks
b3be863671 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>
2022-09-23 13:40:15 +02:00
Robbe Derks
05e80cf4fb Tesla AP2 fingerprint update: forgot one message (#25783) 2022-09-14 17:35:48 +02:00
Robbe Derks
852af4d1f8 Update Tesla AP2 fingerprint (#25763)
update fingerprint for v11 software

Co-authored-by: Comma Device <device@comma.ai>
2022-09-13 11:47:16 +02:00
Adeeb Shihadeh
655a64b603 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
2022-09-07 17:12:49 -07:00
Shane Smiskol
d2c2154a32 Clean up CarControllers (#25008)
* do VW

* Do the rest

* unused

* ford cc formatting

* final clean ups

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

* fix spacing

* add space
2022-06-20 12:15:39 +02:00
HaraldSchafer
9283040d84 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>
2022-06-15 15:29:42 -07:00
Robbe Derks
b9c350bf98 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
2022-05-16 13:49:40 +02:00
Adeeb Shihadeh
49c2164814 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
2022-04-12 22:58:34 -07:00
Shane Smiskol
c8f5b21744 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
2022-04-05 23:38:45 -07:00
Robbe Derks
1035b910f0 Tesla: disable temp fault on hands on error (#24014) 2022-03-22 21:02:28 +01:00
Robbe Derks
25219442d1 update tesla ap2 fingerprint after OTA update (#24013) 2022-03-22 11:07:12 +01:00
Shane Smiskol
31a6b141d6 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>
2022-03-16 21:27:05 -07:00