Commit Graph

375 Commits

Author SHA1 Message Date
Justin Newberry e9ca84c95c 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
old-commit-hash: b0eae8c1b7264b2d0c63ee2957689bc1317616f1
2024-03-01 11:31:51 -08:00
Justin Newberry 3ec004d482 Body: move to car specs (#31666)
* specs

* override

* fixes 1

* fix 3

* fixes 4

* fixes

* fixes

* fixc

* fix number 723124

* that too

* fixes

* aa

* do body real quick too

* body too
old-commit-hash: a5ee1638b8d4f7dde23b9160e26d715cd1420202
2024-03-01 10:32:31 -08:00
Justin Newberry 3816b6a4b6 basic platform config tests
old-commit-hash: 00f2703bbb70d5d79d3b64cb6b2974efb36cb4d4
2024-03-01 04:01:59 +00:00
Justin Newberry 1a5b057983 Honda: move to platformconfig (#31637)
* first

* Fixes

* not

* not

* Fixes

* fix

* cleanup + use sets for now

* update ref

* update ref
old-commit-hash: 5734d7c2bf13c217e469d37c4900321cba469121
2024-02-29 11:29:40 -08:00
Shane Smiskol 477e4253f6 GM: add more FW logging (#31633)
* add more DIDs

* one more

* update refs

* rm

* btr

* Update selfdrive/car/gm/values.py
old-commit-hash: ec9856b784e6cda8f02e012076666aebe7476650
2024-02-28 18:01:58 -08:00
Shane Smiskol 2ff56746cf Honda Accord: allow fingerprinting without comma power (#31477)
* Do Accord

* add comment

* good test

* this catches the accord/accordh issue!

* as expected, only if both radar&camera have in common FW does the test fail

* cmt

* clean up

* better

* Use HondaFlags

* detect alt brake

* for test

* hypothesis isn't installed

* test failure

* works

* Revert " works"

This reverts commit bfc0d808abe548630e6507431f13b01e8a1316cb.

* Revert "test failure"

This reverts commit 10ab6eb63ccd411740751b742f31fd610397fe8e.

* Revert "hypothesis isn't installed"

This reverts commit d474cc3f0ed7e84fe8bd24f452b3315fd2b8d47c.

* Revert "for test"

This reverts commit 98e039f4fc0189ccb57c1dae6b344209ef15eb1c.

* this is important too

* clean up

* merge accord fingerprints, test

* remove duplicates

* accordh doesn't have these

* rm

* no unknown

* start over, merge platforms

* add cmt

* note non-essential ecus

* add non essential obd ecus

* combine FW

* format fingerprints (remove dups)

* migrate test models segs

* cmt

* Update ref_commit

* clean up
old-commit-hash: ce6637cd8ffdd9eef39a57fe67c3528c55b11c68
2024-02-27 20:09:02 -08:00
Cameron Clough f7eed2aabf Ford: log interesting module configuration data (#31569)
* Ford: log interesting module configuration data

Ford ECUs have what is called "As-Built Data" which is configured at the
factory/workshop to set what packages/features are enabled on the car.
But they also contain vehicle specific information (VIN, make, model,
weight, wheel base...), DTC information and driver preferences.

I dumped the CAN traffic for the FORScan diagnostic tool to see how it
requests this information from the ECUs.

<details>
<summary>FORScan communication with IPMA (camera)</summary>
<pre>
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': '0200'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'TESTER_PRESENT', 'hex': '00'}
{'addr': 1806, 'type': 'positive_response', 'service': 'TESTER_PRESENT', 'hex': '00'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f190'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de00'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de00020799dbaa10296516a440000000000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f113'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1\x13JX7T-19H406-CH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f1134a5837542d3139483430362d434800000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f188'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1\x88JX7T-14F397-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f1884a5837542d3134463339372d414800000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f120'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1 JX7T-14F397-BF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f1204a5837542d3134463339372d424600000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f121'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f124'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1$JX7T-14F398-AG\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f1244a5837542d3134463339382d414700000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f125'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1%JX7T-14F398-BF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f1254a5837542d3134463339382d424600000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f126'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f10a'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f111'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1\x11JX7T-14F403-CA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f1114a5837542d3134463430332d434100000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f18c'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1\x8c182762191\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f18c31383237363231393100000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f162'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f110'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1\x10DS-JX7T-19H406-AD\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f11044532d4a5837542d3139483430362d414400000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': '0202'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'd100'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'd10001'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'd700'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'd70001010101'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'd701'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'd70101020000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'dd01'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'dd010102f8'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'f113'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'data': b'\xf1\x13JX7T-19H406-CH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 'hex': 'f1134a5837542d3139483430362d434800000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'fd08'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'fd0800000500500100300000000000000000000000300000000000000000200100400300100200001200f00300500000000000000300c00b00400200000000000000000000000000000000200f01201e01501400a00200200400700d02501d01700700e06405005e05503401100a000000002002002001000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'fd09'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'fd09ffec0001fef60002'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de00'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de00020799dbaa10296516a440000000000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DTC_INFORMATION', 'hex': '028f'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DTC_INFORMATION', 'hex': '02ff50019768c253002cc401862cc418862c'}
... skip DTC requests ...
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de00'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de00020799dbaa10296516a440000000000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de01'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de01fd5616db5fffff557fe1f842080000000800000008000000080000000819bfe00f7c00000000000000000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de02'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de02800000008000000080000000800000008337fc00800000008000000080000000800000008337fc0000000000000000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de03'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de03fffc26c3800000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de04'}
{'addr': 1806, 'type': 'positive_response', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de04546a8c0000000000'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de05'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de06'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de07'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de08'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de09'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de0a'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de0b'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de0c'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de0d'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
{'addr': 1798, 'type': 'request', 'service': 'READ_DATA_BY_IDENTIFIER', 'hex': 'de0e'}
{'addr': 1806, 'type': 'negative_response', 'hex': '2231'}
</pre>
</details>

Using UDS service `READ_DATA_BY_IDENTIFIER`, we can read the As-Built
blocks from `0xDExx` with no diagnostic session/security access necessary.

I used [Online As-Built databases](https://cyanlabs.net/asbuilt-db/) and
various coding spreadsheets shared online to find values we might be
interested in using for fingerprinting (both vehicle parameters and
identifying the platform).

ABS:
- Payload tier (Base, Mid Payload Upgrade, Heavy Duty Payload
  Upgrade...)
- Wheelbase
- Steering ratio
- Cruise Control Mode (Normal, Adaptive)
- Enable Stop and Go

PSCM:
- Enable Lane Keeping Aid
- Enable Traffic Jam Assist
- Enable Lane Centering Assist

IPMA (Q4):
- Steering ratio
- Wheelbase

APIM (Sync 3 and Sync 4):
- Steering ratio
- Vehicle weight
- Wheelbase

There are more potentially useful signals which I haven't included
although they might not be necessary:
- Vehicle (Ford platform code, like "C344" or "C519" - although the
  source of the mapping from index to code is FORScan and not Ford
themselves unless we can find a better source).
- Fuel type
- Vehicle length/height/front track/rear track
- Tire circumference (could be useful for converting wheel speed rad/s
  to m/s)
- Steering angle source (Pinion, Wheel)
- Country code (letters, e.g. US, CA or UK)
- Transmission type
- CAN network architecture
- More feature flags (the APIM also stores settings for ACC, LCA, BLIS)

The full list of settings I have found is
[here](https://github.com/incognitojam/op-notebooks/blob/main/ford/settings.py).

* FwQueryConfig: add data_requests

* add car_data to CarInterface get_params

* Revert "add car_data to CarInterface get_params"

This reverts commit aa161a6b82082705db97bea2c4317e1888a74845.

* test_ford: add APIM ecu address

* Revert "FwQueryConfig: add data_requests"

This reverts commit dc5484a9b80be5bc61a7fdf55560b8813bc43ef7.

* fix block numbers and add extra queries

* bump test_fw_query_timing

* add missing query whitelists

* simplify asbuilt requests

* use forscan block ids

* formatting

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: c724d1c86ce4044bfc03f1e7941871466f51a708
2024-02-27 04:22:10 -08:00
Cameron Clough 9bd90112d0 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
old-commit-hash: 995250ae4967943ee33a3699a1d89a7a770d95e9
2024-02-24 16:41:23 -08:00
Justin Newberry c564806520 Subaru: move carspecs to PlatformConfig (#31550)
* subaru platform config

* forester wrong dbc

* spacing

* subaru car specs

* someday!

* more red diff

* all brands can be done like this

* but this should be done first and thats subaru specific

* that seems very low but we shouldn't change it here

* as long as it subclasses str its fine

* fix
old-commit-hash: 1161d33c1892b32980a222b7c5b2ad9d6b05621e
2024-02-23 13:23:40 -08:00
Shane Smiskol e0322ba82f Volkswagen: log FW on non-OBD buses (#31556)
* log lots

* update refs

* cmt
old-commit-hash: 72a7f008ab3c4d0f86605860579926911815a103
2024-02-23 04:00:28 -08:00
Shane Smiskol 0766214043 Ford: add back OBD queries for logging (#31543)
* Revert "Reapply "Ford: don't fingerprint on engine (#31195)" part 2 (#31320)"

This reverts commit 69a5ada092202482380241584ecdb6a3424b0087.

* fix refs

* mark logging
old-commit-hash: a2bda8724d84fa46ab57ce15cd4143985c1b3470
2024-02-22 01:34:15 -08:00
Shane Smiskol 7089ac644b TestFwFingerprint: test to prevent mismatches when utilizing non-essential ECUs (#31478)
* test

* same speed
old-commit-hash: baa77ced19add6241cdc634840205b7115c584ab
2024-02-15 00:35:21 -08:00
Shane Smiskol d391096aa5 Toyota TSS2: radar disable support (#29094)
* try to disable radar

* fix bug and bump panda

* prep

* always attempt longitudinal for testers

* fix rav4

* send ACC_HUD

* bump panda

* revert

* check for failure to disable

* fix arg

* allow

* this has no effect

* bump

* update docs

* bug fix

* fix

* check relay malfunc for acc control

* remove route where SDSU caused a relay malfunction

* missing rav4

* bump

* use chr route

* bump

* add back

* relay malfunction

* bump to master

* add to releases
old-commit-hash: b1f452d42b58336fe24f83f2bc0ac54116a83b2b
2024-02-14 23:27:07 -08:00
Shane Smiskol b17e4ca977 Toyota: check ACC_CONTROL for relay malfunction (#31475)
toyota: check acc control for relay malfunction
old-commit-hash: 622d099d0001bd1c697af1f4ef7c11304561e575
2024-02-14 21:55:33 -08:00
Shane Smiskol af4e7595f1 test_models: add RAV4 route without relay malfunction (#31474)
add it back
old-commit-hash: 55ba64568d1b1be75ce5394352566c3f22cde0ce
2024-02-14 21:41:01 -08:00
Shane Smiskol 9aff682d57 Toyota: only read gas interceptor if we're using it (#31473)
* we shouldn't be reading from interceptor and not writing/sending gas command

* better

* add a test!

* comment is clear
old-commit-hash: 0e94567a181e75243321e05c1397259635697f68
2024-02-14 21:32:44 -08:00
Shane Smiskol df43e2539d Leaf: get VIN (#31398)
* Add Leaf VIN query

* add lots of requests

* add exception for nissan

* no more logging

* update refs

* lower worst case

* Update selfdrive/car/car_helpers.py

* update refs

* it's the vcm!
old-commit-hash: c65dfaac68bbf836900dd612a33667cb00cdf854
2024-02-14 20:06:14 -08:00
Shane Smiskol 8e7578fc23 VIN: lower retries (#31471)
* lower retries

* comment
old-commit-hash: 9acc55861cfe5f78bca6d46762b38c4f5903ea6c
2024-02-14 17:08:12 -08:00
Adeeb Shihadeh 66adafe850 radard: remove sleep for cars without radar (#31467)
* radard: remove sleep for cars without radar

* fix

* update refs
old-commit-hash: 6f905ed979cb8e217c182c653528df3a6094015b
2024-02-14 13:12:54 -08:00
Shane Smiskol 1f67acfed9 test models: more examples in CI (#31444)
* more examples

* how is it so fast?!

* 500

* is there a hypothesis cache?

all

* Revert "is there a hypothesis cache?"

This reverts commit e628ba73d5b639e36f95df0ab9049697b34a58b8.

* same as jenkins
old-commit-hash: 9479686fa399ed95232d9419c1e566fb51ce586f
2024-02-13 23:00:44 -08:00
Eric Brown b7ee831a51 GM: Remove Equinox from dashcam mode (#31257)
* Remove Equinox from dashcam mode

* Add fingerprint

* Set moving backward only if not moving forward

* Bump opendbc

* Update moving backward definition

* Update docs

* Bump opendbc

* REVERTME: Add assert statement at Shane's request

* REVERTME: check unsupported and fault status

* Revert "REVERTME: check unsupported and fault status"

This reverts commit 5a0ebad66c4dcd33ee4eb5d0c5d3f036244653e2.

* Revert "REVERTME: Add assert statement at Shane's request"

This reverts commit b4b885eb11ad3079a84033f20f670cc905113bb9.

* Use or

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

* Add comment

* Add test route

* Use newer fingerprint

* Emtpy commit to rerun CI

* Empty commit to rerun CI

* Update selfdrive/car/gm/fingerprints.py

* little more

* remove from non-tested

* update

* add to releases

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
Co-authored-by: Justin Newberry <justin@comma.ai>
old-commit-hash: 416e8253ec5a5c5d509fd3410de76c4fb995e91a
2024-02-12 21:35:44 -08:00
Justin Newberry cc42100cce FCA: car port for Dodge Durango 2021 (#31015)
* dodge durango

* add dodge

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

* add comment

* more exact

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 78e4508e3bc1efc49cbc43e76d6467ca506601e1
2024-02-12 21:04:53 -08:00
Shane Smiskol 7ef1812968 fix static analysis
old-commit-hash: 0355ceaeacff5a3d0e435fbd5e44cb94b3dea37d
2024-02-07 19:57:33 -08:00
Shane Smiskol b8952216c0 test_fw_fingerprint: remove timeout
it's fast now
old-commit-hash: 1b0a4746eb085dad56445ffeb0f4e3b020ea3afb
2024-02-07 19:47:20 -08:00
Justin Newberry abb7672b9b add cd for jenkins replacement scripts (#31355)
fix dirs
old-commit-hash: 6a463503a7a2d0c8f2d76c5633b9c9308b3c850c
2024-02-07 15:40:36 -08:00
Nelson Chen 26f7e788b3 Lexus LC 2024 (#31199)
* Initial pass

* Add physical measurements for LEXUS_LC_2024

* Add new test route for TOYOTA.LEXUS_LC_TSS2

* Add new public-OK test route for TOYOTA.LEXUS_LC_TSS2

* update docs

* | not /

---------

Co-authored-by: Justin Newberry <justin@comma.ai>
old-commit-hash: 879e2521ac59d2440455ef362bce8f8ac643f658
2024-02-07 11:45:12 -08:00
Justin Newberry 4ad5ba1864 jenkins: remove pc / car tests (#31353)
* move to scripts

* clean first

* cant have test_*?

* move
old-commit-hash: 8f67d3cab9bb7031f3350b0c320606aa843503d5
2024-02-07 11:33:52 -08:00
Shane Smiskol 6d956f9297 Hyundai: log camera manufacture date (#31345)
* log manufac date

* oof

* should be safe

* update refs
old-commit-hash: fabec9964584ace9063fc92203bf9f6912f47310
2024-02-07 00:07:01 -08:00
Shane Smiskol b0f087bb7d Hyundai: add PT queries for all ECUs (#31334)
* We never had any bus 0 logging queries for CAN!

* should be logging

* try all, and try on can fd as well

* update refs

* oof forgot about hda2 can fd where pt is bus 1

* sheesh

* fix the timing

* fix ref
old-commit-hash: bcd29a2b8af7c7364040716926d5c18ccd89ca7c
2024-02-06 20:37:26 -08:00
Shane Smiskol 07bb2e7e89 FW query timing test: fix total reference time (#31344)
* We never had any bus 0 logging queries for CAN!

* should be logging

* try all, and try on can fd as well

* update refs

* oof forgot about hda2 can fd where pt is bus 1

* sheesh

* fix the timing

* not here

* revert

* this just simply measured the total time of all the brands with aux queries (1.25s)

* clean up
old-commit-hash: 4ec0ed311c4def6106911c24d5a19e6a9b1fbfd2
2024-02-06 20:10:06 -08:00
Justin Newberry 572744128e test_models: cleanup by using new logreader (#31267)
* cleanup

* only check error

* this segment only

* fix

* fix

* keep this

* fix internal
old-commit-hash: 66dc7030de1b39bd814cc20091d22ec38976523b
2024-02-06 16:50:30 -08:00
Shane Smiskol 6171b1b6f3 Reapply "Ford: don't fingerprint on engine (#31195)" part 2 (#31320)
* Reapply "Ford: don't fingerprint on engine (#31195) part 2"

This reverts commit 0dccc2ab5776145bc3458d75c7c8b6ad51fff57d.

* add comment

Co-authored-by: Cameron Clough <cameronjclough@gmail.com>

---------

Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
old-commit-hash: dd6065c33b66e04b0ba79d78f967349a5cec6a67
2024-02-05 23:57:46 -08:00
Shane Smiskol 680169a4c9 Revert "Ford: don't fingerprint on engine (#31195)"
This reverts commit d104dcd9dbf3a79dbfca57dd0385ea6f2a44ab64.

old-commit-hash: 7694712cd6823a99c3f1c03270bb7167e4c1bdf9
2024-02-05 01:35:39 -08:00
Shane Smiskol 5e4a177276 Test car interfaces: init controllers (#31282)
* not pytest?

* copy what build release does

* test controls step with CI and lat/long controllers, car controller.update, etc

* clean up

* not needed

* not here

* here

* better cmt

* fix test_fuzzy

* see what's failing

* need conftest for OPENPILOT_PREFIX to work!

* up

* clean up

* test

* fix

* params put is slow

* stash

* Revert "stash"

This reverts commit 22cc9f814c0699f7046970763663205907f2890b.

* stash

bad

* just freaking merge

* sort

* rm
old-commit-hash: 011054030064dc4cf7ff6590681389fdfb66ae19
2024-02-02 23:43:30 -08:00
Shane Smiskol fee938a524 FW_QUERY_CONFIGS: type annotate (#31265)
* annotate

* fix

* clean up

* test

* clean up

* space

* fix
old-commit-hash: c9bd4e4c0df6a03daeb2968498a32f9caf248baf
2024-02-01 21:01:31 -08:00
Shane Smiskol e2059a9293 fw_versions: type annotate test_brand_ecu_matches (#31272)
* test this

* we
old-commit-hash: 341f8420dbd309c8465e1872839baacd1c1f3438
2024-02-01 15:11:10 -08:00
Shane Smiskol 55f88260d1 Mazda: use bus 0 to fingerprint (#31261)
* for testing

* switch OBD port to logging

* revert

* cmt

* cmt

* remove OBD query

* Update selfdrive/car/mazda/values.py
old-commit-hash: f0b6f489489731b4d968880d6d9e5a58dbc14035
2024-02-01 00:28:00 -08:00
Shane Smiskol 85f1aea158 HKG CAN FD: Merge Sorento Plug-in Hybrid and Hybrid (#31241)
* merge sorento plug-in hybrid and hybrid

* format

* allow fuzzy fingerprinting

* rm todo

* Revert "rm todo"

This reverts commit f2457eb58f88f780b25625942dbd9c74202acbb8.

* Revert "allow fuzzy fingerprinting"

This reverts commit 91f143f3115e31107752a5e84d3f587e6917933f.
old-commit-hash: b4f958c13f221704012578518b00ab88a4e33faf
2024-01-31 00:41:57 -08:00
Shane Smiskol db086e9cc7 Hyundai CAN FD: merge Sportage platforms (#31235)
* merge Tucson 4th gen!

* format fingerprints

* fix torque params

* fix

* detect CANFD hybrid with ACCELERATOR_ALT

* passes

* add test

* pass test

* cmt

* Revert "pass test"

This reverts commit 5f48ab1f6e6569def1cbbc92c9c0dd4ea5eebbe2.

* combine sportage hybrid

* merge sportage

* format
old-commit-hash: 2f4cadc6bfb53a6ac25040b0f2aa181ee601d106
2024-01-31 00:19:15 -08:00
Shane Smiskol 550fc4a726 Hyundai CAN FD: merge Tucson and Tucson Hybrid (#31238)
* combine tucson and tucson hybrid can fd

* format fingerprints
old-commit-hash: e92e856f7ad5f19692b6328ab0d89027c1495f2c
2024-01-30 23:06:24 -08:00
Cameron Clough a2db032930 Ford: don't fingerprint on engine (#31195)
* Ford: do not fingerprint engine

* add notebook

* Ford: add missing Explorer FW

* revert

* revert

* Revert "revert"

This reverts commit ad32feaa689f2b497c8bcc9fedc73cae6c87f697.

* TestFwFingerprintTiming: try these

* TestFwFingerprintTiming: update total ref time

* remove notebook

* fix ref

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 1d1c9936cf5711c5414b2da2ee823f7233e7882e
2024-01-30 02:42:33 -08:00
Shane Smiskol b41683d323 GM: FPv2 logging (#31221)
* bump

* from https://github.com/commaai/openpilot/pull/27929

* get VIN on bolt!

* might as well try on other gms

* remove vin

* ugh gm is going to be slow

* fix

* should really fix this

* revert

* happy?1

* fix unit test

* bump

* functional addressing must be an OBD gateway feature, this does nothing

* fix vin response

* fix addr!

* finally fix fw_versions bugs since boardd IsOnroad refactor

* for

* only bus 0

* clean up

* Update selfdrive/car/gm/values.py

* ChatGPT re-write

* filter out did

* todo

* oof

* preview: what multiple DIDs per ECU would look like in the future

* Revert "preview: what multiple DIDs per ECU would look like in the future"

This reverts commit 88f0d8611e638de644adc5feabade848c03d59e4.

* function to get all ecus

* we can remove this!

* can also do this!

* and this one too :o

* consistency

* yay

* clean up
old-commit-hash: 06f0e5096424acd643046f4bd5a3c84a4f684e8e
2024-01-30 02:19:12 -08:00
Shane Smiskol 849504bfe7 FPv2: support FwQueryConfig with no FW versions (#31227)
* bump

* from https://github.com/commaai/openpilot/pull/27929

* get VIN on bolt!

* might as well try on other gms

* remove vin

* ugh gm is going to be slow

* fix

* should really fix this

* revert

* happy?1

* fix unit test

* bump

* functional addressing must be an OBD gateway feature, this does nothing

* fix vin response

* fix addr!

* finally fix fw_versions bugs since boardd IsOnroad refactor

* for

* only bus 0

* clean up

* Update selfdrive/car/gm/values.py

* ChatGPT re-write

* filter out did

* todo

* oof

* preview: what multiple DIDs per ECU would look like in the future

* Revert "preview: what multiple DIDs per ECU would look like in the future"

This reverts commit 88f0d8611e638de644adc5feabade848c03d59e4.

* function to get all ecus

* we can remove this!

* can also do this!

* and this one too :o

* consistency

* yay

* add tests

* revert GM stuff

* another PR

* reads better

* revert rest of gm

* use that

* interesting

* these are exactly the same (with ordering differences)

* Revert "these are exactly the same (with ordering differences)"

This reverts commit a9e918dc351d24f1b7c8a05c7ec402e057a0e09a.

* flip
old-commit-hash: 2c0f7b872702e44bb8911702d027d39b01134e6f
2024-01-30 02:08:08 -08:00
Shane Smiskol b2fcda8419 GM camera ACC: get VIN from camera (#31224)
* bump

* gm vin

* that's not right

* only check relevant buses

* instead try queries for each bus first

* clean up

* use default retry in function

* all
old-commit-hash: c3fcf75737b28efe05bf78c4ec886482749844c6
2024-01-29 23:24:21 -08:00
Shane Smiskol 2e4f6b23fe Honda: add logging request for radarless Civic 2022+ camera (#31176)
* try tester present

* radar

* rm whitelist

* refs
old-commit-hash: 52d7cfa68952ab30ac7577b4cdeb20c75e2c8745
2024-01-25 23:58:27 -08:00
Shane Smiskol 7c70aef5de vin: reduce retries (#31175)
reduce retries
old-commit-hash: c99cd3251b6a283be43fd301273baf78553c9c43
2024-01-25 22:40:39 -08:00
Shane Smiskol ff6ae8f1b9 VIN: query on bus 0 to log data (#31165)
* query on bus 0

* fix

* log vin_rx_bus

* fix!
old-commit-hash: 289868297eb2646acb8c62cec27ce77027d09ac7
2024-01-25 18:01:49 -08:00
Shane Smiskol f01651d440 Nissan: log FW responses on bus 0 (#31138)
* nissan: log FW responses on bus 0

* update refs
old-commit-hash: b9ad854451ce642a05c487d96a1a9bc2181bb3ba
2024-01-23 23:12:48 -08:00
Justin Newberry f447062b66 CommaCarSegments: public database of segments for each platform (#31114)
* comma car segments

* comma car segments for test_models

* oneliner

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

* better name

* not used here

* sort

* remove print

* better comment

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: caa9153974c21fd827d0e991f1789cf3e81b5c3b
2024-01-22 17:33:03 -08:00
Justin Newberry 4080bec11d pytest: add marker for sharing the download cache (#31082)
* fix cache

* with a marker
old-commit-hash: 3846130d8e15ea71e9576ae62b69918757edc7b8
2024-01-22 16:30:59 -08:00