Commit Graph

287 Commits

Author SHA1 Message Date
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
Adeeb Shihadeh
d61f86d339 replace custom clock helpers with time module (#29499)
* replace custom clock stuff wtih time module

* fix double

* fix release

* bump cereal

* update type

* fix one more
2023-08-20 18:50:58 -07:00
Shane Smiskol
e2910d0720 CANParser: perf benchmark on route script (#29324)
* timing test

* test

* fix

* print

* loop

* clean up

* wider range

* Update selfdrive/car/tests/test_models.py

* Apply suggestions from code review

* run many times

* Update selfdrive/car/tests/test_models.py

* run for many its

* run with unittest and print as list

* Update .github/workflows/selfdrive_tests.yaml

* Update .github/workflows/selfdrive_tests.yaml

* total time is super inconsistent (body)

* Update selfdrive/car/tests/test_models.py

* clean up

* clean up

* clean up

* this works!

* draft

* test suite not as modular

* try something like this

* can do kb, but not too representative

* clean up

* remove kb? it depends on signals

* clean up

* more clean up

* rename

* just measure all CANParsers

* can do all this manually

* but this is way simpler

* comment

* fix mypy

* this is correct too

* 3 seconds instead of 1.5
2023-08-15 20:06:15 -07:00
Justin Newberry
e4ead4f183 Ruff: b905 (strict zip) (#29336)
* added mutable default args

* most of the Bs

* add comment about lrucache

* b905
2023-08-11 16:13:51 -07:00
Justin Newberry
62c1e65924 Ruff: enable most of bugbear (#29320)
* added mutable default args

* most of the Bs

* add comment about lrucache
2023-08-11 15:33:49 -07:00
Shane Smiskol
6106876da7 test_car_model: remove duplicate argument (#29309)
* only need to pass test_route

* unused
2023-08-09 20:36:49 -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
Justin Newberry
a91764954b Revert "CI: pylint to ruff (#29276)" (#29284)
This reverts commit cb31a53d8a.
2023-08-08 14:24:04 -07:00
Shane Smiskol
b34341e7e5 test fw query: fix migration import (#29283)
huh this was just broken
2023-08-08 13:48:11 -07:00
Justin Newberry
cb31a53d8a CI: pylint to ruff (#29276)
* pylint to riff

* pylint to riff

* pylint to riff

* revert more

* undo exclude removal

* exclude tinygrad
2023-08-08 13:41:30 -07:00
Adeeb Shihadeh
3da28d4df2 remove old debug scripts 2023-08-06 21:54:08 -07:00
Adeeb Shihadeh
1945c356c2 agnos 8 (#28843)
* agnos 8

* update to python 3.11.4 (#27452)

* rebase

* optional

* lower cython

* TEMP don't pull cl to use python3.11

* Revert "lower cython"

This reverts commit c5132f8a2727c212bdfc01e77aa53e50a17ead9d.

* fix cython

* remove tensorrt

* carla + opencv

* macos

* update timm and smp

* pynvc

* https

* downgrade numpy

* pin scipy

---------

Co-authored-by: Maxime Desroches <desroches.maxime@gmail.com>
Co-authored-by: Yassine <yassine.y10@gmail.com>

* revert that

* fix linter

---------

Co-authored-by: Maxime Desroches <desroches.maxime@gmail.com>
Co-authored-by: Yassine <yassine.y10@gmail.com>
2023-07-20 21:56:57 -07:00
Adeeb Shihadeh
9c307f2550 Revert "Update pycapnp and Cython (#29021)"
This reverts commit 76ef1b9b9f.
2023-07-18 18:47:35 -07:00
Maxime Desroches
76ef1b9b9f Update pycapnp and Cython (#29021)
* cython + pycapnp

* from_bytes with context

* poetry lock

* limit numpy

* force build

* Revert "force build"

This reverts commit 8c7cb00421da9d0f1b7da2c94f75e9c43733f840.

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-07-18 16:40:36 -07:00
Larry Walters
d8aab568c6 Hyundai: enable radar tracks for 2019 Santa Fe (#28623)
Hyundai: Adding second radar FW version for 2019 Santa Fe
2023-06-21 16:40:39 -07:00
Kacper Rączy
64377a88f9 process_replay: helpers (#28367)
* process_replay helper

* Refactor

* refactor check_enabled uses

* fix __init__

* noqa in __init__ imports

* Move compare_logs outside of process_replay

* Move save_logs to tools.lib.helpers

* Remove save_log from compare_logs

* fix lint issues
2023-06-06 10:31:13 -07:00
Adeeb Shihadeh
43b0e51906 show ign off time in count events debug script 2023-05-28 11:59:01 -07:00
Adeeb Shihadeh
ec53fad3c4 count_events.py: show alerts 2023-05-14 11:24:48 -07:00
Jason Young
a3070d0e35 VW MQB: Config tool update for new EPS (#28056) 2023-04-27 18:40:36 -07:00
Shane Smiskol
1520716d42 FW versions: import common variable (#27905)
* just import from fw_versions

* fix

* more fix
2023-04-14 01:42:37 -07:00
Shane Smiskol
50d382884d test_car_model: allow route or segment name (#27866)
* allow route or segment name

* fix

* fixes

* fixes
2023-04-10 18:56:49 -07:00
Adeeb Shihadeh
038d34aa7f tizi: affine IRQ by action instead of number (#27811)
* tizi: affine IRQ by action instead of number

* do camera irqs

* debug script

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-05 16:35:27 -07:00
Jason Wen
f9c112e9b8 Hyundai: add Sonata FW version to enable radar tracks (#27463) 2023-03-20 13:31:50 -07:00
Robbe Derks
d26d8b3ba9 Improve OX frame timing jitter (#27582)
* frame timing script

* enable vsync output and improve fsin tracking

* increase measurement time

* fix python linting

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-03-16 10:59:27 +01:00
Shane Smiskol
7f10c736ab test_fw_query_on_routes.py: don't print FW for logging 2023-03-01 15:57:11 -08:00
Shane Smiskol
48b059d367 CAN fingerprint script improvements (#27355)
* match online logic

* 0 and 2 are different buses. on gm, same address has different lengths

* match fingerprint_from_route
2023-02-15 15:59:23 -08:00
Jason Wen
b740bdc99c Hyundai: Enable radar tracks for Santa Fe 2019 (#27175) 2023-02-01 13:01:26 -08:00
Shane Smiskol
7090a88419 Fix fuzz_fw_fingerprint.py script 2023-01-24 00:04:56 -08:00
Jason Young
f6dc12a735 VW MQB: Add diagnostic firewall note to config tool (#26975) 2023-01-15 13:13:50 -08:00
Shane Smiskol
406d12b7c1 Fix car docs diff bot (#26955)
fix
2023-01-13 17:20:45 -08:00
Shane Smiskol
b00bc4f57e Car interface: require fingerprint and FW versions to get params (#26932)
* require fingerprint and FW versions

* add get_non_essential_params()

* comment

* all required

* classmethod, need to allow subclasses to override _get_params

* fix that

* fix

* fix

* wrong fix 🤦
2023-01-12 12:25:24 -08:00
Adeeb Shihadeh
f14deae475 Revert "Car interface: require fingerprint and FW versions to get params (#26766)"
This reverts commit b68dabb689.
2023-01-12 11:28:04 -08:00
Shane Smiskol
b68dabb689 Car interface: require fingerprint and FW versions to get params (#26766)
* require fingerprint and FW versions

* add get_non_essential_params()

* comment

* all required

* classmethod, need to allow subclasses to override _get_params

* fix that

* fix
2023-01-11 23:44:50 -08:00
Adeeb Shihadeh
65fa87a969 cleanup panda types everywhere (#26574)
* cleanup panda types everywhere

* one more
2022-11-21 23:43:24 -08:00
Adeeb Shihadeh
c35e2b8e30 Hyundai: common CAN-FD brake pressed signal (#26170)
* Hyundai: common CAN-FD brake pressed signal

* new name

* bump panda

* bump opendbc to master

* bump opendbc

* bump panda

* bump panda

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2022-10-20 19:55:04 -07:00
Adeeb Shihadeh
15b8c7d1dc ui: publish draw times + add test (#26119)
* ui: publish draw times + add test

* add some checks

* adjust

* fix linter

* update max

Co-authored-by: Comma Device <device@comma.ai>
2022-10-17 17:14:38 -07:00
Jason Young
46e741c7cc VW MNB: Add EPS config script support (#26007) 2022-10-07 12:50:35 -07:00
Kurt Nistelberger
29d3ed2ce6 Sensor events splitup (#25714)
* PoC of reading sensors via interrupts instead of polling

* add Gyro and draft for magn

* add more functionality to gpio.cc

* change LSM gyro to interrupt

* resolve rebase conflict

* update BMX accel interrupt impl

* add interrupt collector thread to fetch in parallel

* change get_event interface to return true on successful read

* update BMX gyro interrupt impl

* update gpio.h/.cc according to comments

* address comments, rename Edgetype enum

* Edgetype to EdgeType

* update sensor interrupt interface

* add error handling, and read fd on trigger

* avoid sending empty messages

* fix build

* use gpiochip

* less diff

* gpiochip on both edges, but skip falling edge if rising edge is detected

* init last_ts with 0

* update sensord testcases

* update sensord testsweet

* test for pipeline

* readd with_process

* add null check

* move tests update to seperate PR

* sensord: improve test coverage (#25683)

* update sensord-interrupt testsweet

* address review comments

* inc stddev threshold

* fix format string

* add version 0 check again

* relax strictness after c3 with bmx tests

* relax strictness after tests

Co-authored-by: Kurt Nistelberger <kurt.nistelberger@gmail.com>

* address PR comments

* fix typo

* remove 4ms limit, and skip first 0.5sec of data

* revert disable_interuppt change to destructor

* fix and remove timing skip

* make gpiochip generic

* sensord port

* change from sensorEvents to separated events

* fix gyro usage

* add splitted sensor tests

* modify debug script sensor_data_to_hist.py

* refactor get_event interface to remove sensorEvent message type

* update locationd to non sensorEvent usage

* tmp commit

* fix replay

* fix accelerometer type

* fix sensor to hist debug script

* update sensord tests to split events

* remove rebase artifacts

* port test_sensord.py

* small clean up

* change cereal to sensorEvents-splitup branch

* upate sensorEvents in regen

* fix route generation for splitted sensor events

* regen cleanUp from sensorEvents change

* .

* remove light and temp from locationd

* add generic init delay per sensor

* .

* update routes

* move bmx gyro/accel to its own channel

* adopt sensor tests to bmx channel

* remove rebase artifacts

* fix sensord test

* handle bmx not present

* add bmx sockets to regen

* .

* .

* code cleanUp

* .

* address PR comments

* address PR comments

* address PR comments

* lsm clean up

* readd sensorEvents

* rever regen.py

* .

* update replay refs

* move channels

* fix artifact

* bump cereal

* update refs

* fix timing issue

Co-authored-by: Bruce Wayne <batman@workstation-eu-intern2.eu.local>
Co-authored-by: gast04 <kurt.nistelberger@gmail.com>
Co-authored-by: Willem Melching <willem.melching@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-09-29 14:31:54 -07:00
Cameron Clough
4e310b807f configure mypy outside of pre-commit environment (#25892)
* add mypy config matching precommit

* use local mypy, add files to config

* excludes too

* fix config

* pylint is sad now... did it get updated?

* fix typing hints

* ignore

* this should be a regexp

* mypy doesn't like Deque despite inheriting MutableSequence

* more excludes

* Revert "pylint is sad now... did it get updated?"

This reverts commit 250c632f18ecb3d33ffb931e15425f9314a0964b.
2022-09-27 20:43:05 -07:00
Willem Melching
84a3c355e5 sensord: use interrupts to improve LSM6DS3 timing accuracy (#24525)
* change LSM6DS3TR(-c) gyroscope  and accelerometer to interrupt

* add pthread for linking

* add interrupt collector thread to fetch in parallel to non interrupt based sensors

* change get_event interface to return true on successful read

* fetch sensor interrupts via gpiochip

* avoid sending empty messages (interrupt only, non interupt magn can leave a gap in the orphan block)

* add verifier script to sensor interrupts (sensor_data_to_hist.py)

* add/update sensord testsweet (test_sensord.py)

* add poll timed out check

* unexport interrupt gpio pins

* gpiochip on both edges, but skip falling edge if rising edge is detected, this is handled in the sensor as the status flag is checked if new data is availble

* add test to sensord to verify 100Hz interrupt frequency

* add sensor shutdown/low power mode functionality on sensord exit

* relax test, will be readded in the splitup PR

Co-authored-by: Kurt Nistelberger <kurt.nistelberger@gmail.com>
2022-09-12 22:29:31 -07:00
calledit
fc3bdef891 VW MQB: Added support for APA racks to EPS configuration tool (#25556)
* Added support for APA racks

APA steering racks use a different bit to represent whether the ECU should enable steering assist.
This change supports those APA steering racks.

* Static analysis fix

* Static analysis fix2

* Code cleanup

* Update selfdrive/debug/vw_mqb_config.py

* Apply suggestions from code review

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

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Jason Young <46612682+jyoung8607@users.noreply.github.com>
2022-09-09 11:20:59 -07: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
bd9966c477 test_fw_query_on_routes: find first non-none path (#25628)
find first non-none path
2022-08-31 17:54:21 -07:00
Shane Smiskol
61c30a95cb Car docs diff bot: auto-generate column header (#25622)
* Fix bot

* test

* Revert "test"

This reverts commit ba4a67cd8c88f8b7e082fb1fad5a1e10b51012ab.
2022-08-30 21:27:18 -07:00
Shane Smiskol
ed8d676870 Car docs diff bot: remove tier (#25611)
* fix car docs diff bot

* rm line
2022-08-30 11:23:42 -07:00
Adeeb Shihadeh
6590fb2b93 pre-commit: add codespell (#25571) 2022-08-30 11:20:55 -07:00
Shane Smiskol
19810f2dcc Silence a PytestCollectionWarning (#25537)
Silence PytestCollectionWarning: cannot collect test class 'TestRoute' because it has a __new__ constructor (from: test_models.py)
2022-08-23 17:26:29 -07:00
Shane Smiskol
45cfcfa3bb Revert "FPv2: fingerprint on all FW combinations" (#25417)
* Revert "FPv2: fingerprint on all FW combinations (#25204)"

This reverts commit ee081f278b.

* Revert "Revert "FPv2: fingerprint on all FW combinations (#25204)""

This reverts commit bb68b7bc1c28ba8c67f3051b8f99fabc42e85771.

* For breaking, match only with current brand's FW

* Add comment for fuzzy matching

* fingerprint (online) only using FW from that brand

* test_fw_query_on_routes fingerprints like online

* extend match_fw_to_car to work for test_fw_query_on_routes

* Apply suggestions from code review
2022-08-12 23:36:50 -07:00
Shane Smiskol
35338196ac CarInfo: detail sentence exception for Toyota stock longitudinal (#25331)
* Exception for 2022 RAV4

* Exception for all stock long Toyota

Exception for all stock long Toyota

* fix exception

fix

fix

fix
2022-08-01 17:44:22 -07:00