* HKG: Car Port for Kia Carnival (China only) 2023 (HDA1)
* add FW
* seems to be radar SCC
* Update CARS.md
* Update CARS.md
* Add test route
* Fix docs
* New route
* Fix docs formatting
* update with US model
* 2 total
* Update RELEASES.md
* add FW for US carnival 2023
* fix docs
* update test routes
* no rlogs for chinese route
* update docs
* revert chinese to merge now
* Apply suggestions from code review
* fine to fully remove
* less precise
* remove from releases
* Apply suggestions from code review
* Update selfdrive/car/tests/routes.py
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: f1c604bde7
* Revert "Revert "simple fuzzing test for all processes (#28584)""
This reverts commit a5be0640a3780156fdd5c04c1e6204fa41b307a8.
* determinism
* fingerprint
old-commit-hash: 0ebec253d0
* request callbacks
* support in IsoTpParallelQuery
* tiny bit simpler
* shorter lines
* need to check length again, could return empty list
* takes in prev response
* typing
* test
* only test
* simple test
* revert this
* subtest!
old-commit-hash: 16203cc856
* put one subaddr in parallel_addrs
* p
* remove print
* update test refs
* test
* revert that
* clean up
* clean up
* fix
* print results
* fixup cmt
* move down
old-commit-hash: 3f8c976d99
* put one subaddr in parallel_addrs
* p
* remove print
* update test refs
* test
* revert that
* clean up
* clean up
* only clean up
* clean up
* rm
* type
* one line
* this is fine
old-commit-hash: ed86a4ae62
* random car control
* format
* struct generation
* math
* staying real
* really staying real
* move
* split this
* format
* Revert "format"
This reverts commit a70a73952e.
* Revert "split this"
This reverts commit ae96be63cb.
* space
old-commit-hash: 3fc104fb6d
* get gas/ev/hev from FW (not all correct, poc)
* add test for essential ecus for fuzzy fingerprinting
* kinda works
* stash
* clean up
* add code
* simpler
* use the function
* test it with our cars
* no re
no re
no re
* debugging
* handle empty dict
* simpl
* this is promising
start on making existing fingerprinting functions use the config, instead of entirely replacing them
* needs to allow 1 match
* lay out how this should look
* changes
* executable
* some work
* use config
* fuzzy ecus
* config test
* comment and some clean up
* test platform codes
* use regex, simpler and fixes bug
* in func
* rm bad func
* typing for new func and remove old from dc
* todo done
* tested!
* remove fake platform codes
* thought we needed this, but actually...
* not needed
* not applicable any more
* use config for essential ecus
* first draft of test to make adding/removing fuzzy FP platform intentional
* compile
* clean up test
* even cleaner
* fix default ecus type
* temp fix
* this is mostly in tests now
* test every fuzzy ecu fw returns one platform code
* experiment with dates
* Revert "experiment with dates"
This reverts commit 3251b9cc5c.
* clean that up
* comment
* test
* work on all cars
* fix fuzz_fw_fingerprint
* comment
* get first by search
* bit more clean up
* and more
* use compiled pattern for nicer syntax
* default
* flip dat around, much cleaner
* clean up hyundai test a bit
* flip order
same here
* rename test and flip subTest
* fix pylint
* revert fw changes
revert fw changes
* line
* add original functions to test
* needs to be a list
* cmt
* draft (need to count one ecu as a match)
* tiny clean up
* todo: date range
* only in notebook
* remove comment (still can be either list or set)
* same, only notebook
* more consistent signature
* copilot inspired
* copilot no good
* test for date parsing
* better name
* good, now we don't have to worry about the dates mismatching in another test/logic
* comment up+
* some stuff
* clean up
fix test
fix test
* test
* comment
* use utils
* clean up (utils are cleaner and less buggy)
* clean up (utils are cleaner and less buggy)
* fixup test
* use a dash (prettier) and remove some platforms that can fingerprint now!
* compile global pattern
* same as what we do in values
* remove comments
* fuzzy_get_platform_codes is one or none here
* more clean up
* sort imports
* woah woah woah
* add comment
* fix reassigning different types
* add types
* adapt fuzzy test recently added (nice it caught this!)
* update lock
* options
comments
* stash
* comments and fixes
* better comments
* better
* test: run on exact fuzzy matching logic, same results!
* use match_fw_to_car
* test all fw
* ex
* unused random
* this is a possibility
* this is more clear
* fix
* revert
* revert to needing both ECUs to match to reduce false positives, test
* fix excluded platform test :( but it's ok
* add comment
* we actually want to only test fuzzy ecus to make it explicit
* fix mypy
* comment for tomorrow
* just add matches with fuzzy FP
* add comment
* this was the cleanest I could think of, but still working on it. not very easy to understand
* think this is better, but also worse...
* comment: reframing how this works
* revert back to what we did before
* was swapped
* else set
* remove old comment
* fixes from merge
* remove fuzzy_min_match_count from this pr
* fix static analysis
* also unused
* different method first draft
* copy existing fuzzy func
* check all possible ecus exist, only platform codes, slightly refactor main loop
* fix
* Revert recent
Revert "fix"
This reverts commit 5cdb7bda83.
Revert "check all possible ecus exist, only platform codes, slightly refactor main loop"
This reverts commit d3e918fa20.
Revert "copy existing fuzzy func"
This reverts commit 34c8c05450.
Revert "different method first draft"
This reverts commit b91139055d.
* new func
* fixup test
* remove changes from v1 from fw_versions.py
* clean up a bit
* return part as part of code
* fix test
* add original fuzzy function
* add an ecu match if the date is within range (or date doesn't exist)
* add format for what we're going to do
* not working stash
* the exact matching function does more of what we want with less code and less custom logic
* we don't care about found versions, only codes and dates
* actually we do have an exception
* this works pretty nicely now
* up here
* this is better
* some minor clean up
* old function=now junk
* fix platform code test
* remove old platform code function
* now rename _new to
* use FW_QUERY_CONFIG
* clean up imports
* rename that too
* one line
* correct typing
correct typing
* draft tests
* so that works
* fixup excluded platform test now too
* this is tested by excluded platform test
* test parts and dates
* remove old comment
* old import
* take platform code stuff out of FwQueryConfig
* fix test
* revert debug script
* flip order
* make this a set by default
* revert this part
* correct typing
* clean up comments
* clean that test up too/pylint
* combine these three tests ina clean way
* not right
* more general
* be consistent with quotes
* comment
* comment
* comment in fw_versions
* flip order
* this is more readable
* could test all this, but it's tested in test_hyundai and doesn't do a lot here
* only assert brands which use this
* invalidate all CAN FD ICE and hybrid
* tuple
* can get away without filtering
* add comment reasons
* fix
* some review suggestions
* this works (first draft)
* this is better
* script to print platform codes and dates
* sanity check for dates are in correct ecus and platforms
* mypy
* better variable name and comment
* rename
* same
* slightly better name
* subset
* exclude platforms and live car without dates
* consistent
* self explan
* better name
* test to make sure the functions agree
* clean that up
* comment
* we get other responses from queries not in DB, only check any
* not used or typed
old-commit-hash: f788edb6a5
* bring platform codes out of config for now (can re-introduce later)
* clean that up
* flake8
* comment
* comments and better test names
* typo
* Update selfdrive/car/hyundai/tests/test_hyundai.py
* Update selfdrive/car/hyundai/tests/test_hyundai.py
old-commit-hash: 572a221a86
* add config options
* you know what, platform codes don't need to be related to fuzzy fingerprinting at all
* better comment?
* add comment
* add test from other PR
* add platform code function to hyundai
* comment and add eps!
* clean up config test
* fix test
* add error message to test
* until we have multiple ways a brand can set up fuzzy FP, let's leave func name fuzzy-specific
* rename in comment too
* hyundai tests
* simpler test!
* check all ecus with platform codes
* add types-python-dateutil = "^2.8.19.13"
* these aren't used any more
* Update selfdrive/car/hyundai/tests/test_hyundai.py
* not to imply this is active yet
old-commit-hash: f5e032b67f
* first attempt trying to do it implicitly bad
* back to lists and explicitly do this
* continue checking if candidate switches on these, that's fine to check
* debugging
* clean up
* more clean up
* spot free
* only need to create/update on change
* fix test
* draft
* Revert "draft"
This reverts commit dbe32f58b1.
* Revert "fix test"
This reverts commit 1d34269fe2.
* fix test for real
* first draft of test
* this should be good
* can replace existing fuzzy test
* rm
* matching
* test non-empty fws
* TEST DOWN HERE
* no test
* unique + fix skip message + comment + clean up
* less confusing
* ing
* better
old-commit-hash: 9e8936be98
* more stuff
* even more
* all parts func
* start to use it
* include self in parts
* use car_parts_new
* not used
* more usages
* remove get_parts
* remove more commented stuff
* remove iter
* clean up some more stuff
* more
more
* ford
* optional
optional
* nissan
* use new classes
* fix tests
* fix
* order
* no more required
* connector
* CARS.md
---------
Co-authored-by: Maxime Desroches <desroches.maxime@gmail.com>
old-commit-hash: 024abe6455
* generic car parts
* better carparts
* add part type
* more tests
* multiple enums
* unit tests
* just check isinstance
* better name
* remove _connector suffix
* remove those hyundai lines
* remove default arg
* Revert "remove default arg"
This reverts commit 139650a3b6.
* cleaner code structure
* use fingerprint
* review
* abstrac data class + common
* no more dataclass
* conflict
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 9f5f8b603c
* add harness kit content to the doc
* parts as enum
* nissan
* merge column
* rename column
* scaling
* scaling again
* 500px
* align text
* more px
* add style
* more width
* more
* more
* smaller text
* make all text smaller
* prev width
* default list
* remove hidden a ref
* try to remove again
* revert
* replace harness with harness_kit
* try fix
* cleaner
* center everything
* make pylint happy
* allow more than 1 of each parts
* use copy module
* review
* testing spacing
* revert
* bigger text
* formating
* split harness col lines
* remove print
* resolve
* rename to view
* keep formating in template
* simplify
* add unit test
* more generic way
* better
* harness connector only
* comment
* review
* put back harness parts
* missing dash
* too much space
* don't reload when clicking
* shorter comment
* only last line
* generate
---------
Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 70677fe5fc
* Ford: add Escape Mk4 test route
* generate docs
* remove from non_tested
* fix model years
* clearer packages for EU
* docs
* 2020 hybrid
26b2cace68e36212
1FMCU9DZ9LUA82589
* 2021 phev
1FMCU0LZXMUA80767
f8eaaccd2a90aef8
* add this too
* more docs
old-commit-hash: a0d2e4e711
* can FP time
* add
* move the ref up
* assert function
* all brands
* Update selfdrive/car/tests/test_fw_fingerprint.py
* can this can vary a bit more
* or can it
old-commit-hash: 158c951d6f
* initial commit
* HR-V is diff enought to split from Civic22
* Add US HR-V 2023
* update CARS.md
* Update RELEASES.md
* Use a alternative brake signal
* US HR-V have a weird noise in the BrakeSwitch
* Shane tunning
* this is added automatically
* sorry jyoung
* civic22_stop_faster
limit stopAccel to current safety model
* relax calib temporarily (12 deg)
relax calib temporarily (10 deg)
* compute accel (car overshoots requests at low speed)
* revert brake pressed caused controls mismatches
* fix crash
* cause a cruise fault
* Revert "cause a cruise fault"
This reverts commit 09a6469ac6.
* no brake error
* use alt brake
* Update selfdrive/car/honda/carcontroller.py
* change HONDA_BOSCH_ALT_BRAKE_SIGNAL to CP.flags
* Revert "change HONDA_BOSCH_ALT_BRAKE_SIGNAL to CP.flags"
This reverts commit e0f8123b33.
* remove FPv2 from brazilian HR-V
* bump panda
* fix a bug
* revert calib threshold
* new test route
* separate pr
* update
* update that
* thought i removed this
* revert steer ratio
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 93c1810522
* add timing unit test
* formatting
* not clean
* Revert "not clean"
This reverts commit dab35d582c.
* Revert "formatting"
This reverts commit 56a1ae4bb7.
* need to consider subaddrs (0.3 to 0.7s for toyota)
* clean up
* move to test_fw_fingerprint
* use a thread to get real time
* lower threshold
* revert that
* ?
* some sleep
* at top
* use the config
* function to measure query time, similar to opendbc's convention
* revert that
* avg
* Update selfdrive/car/tests/test_fw_fingerprint.py
* draft
* starting a thread takes a long time!
* refs
* uncomment
old-commit-hash: f222d434b8
* add ES 2018
* standard
* add FW versions
* need to add a route
* verified
* add to DSU messages
* add to torque params
* older lexus do not have all-speed dynamic radar cruise control
* update docs
* Update selfdrive/car/toyota/values.py
* add CI route
* update docs
* add to releases
* assume no stop and go (can't know without dsu unplugged)
* Update selfdrive/car/toyota/values.py
* update docs
* update docs
old-commit-hash: 57f3b483e3
* 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 c9c65f29db.
* 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: e1ad8df519
* Update values.py for 2023 Kia Niro EV
* Update interface.py for 2023 Kia Niro EV
* Update params.yaml for 2023 Kia Niro EV
* Update RELEASES.md for 2023 Kia Niro EV
* Update interface.py for 2023 Kia Niro EV
* Update routes.py for 2023 Kia Niro EV
* Update CARS.md for 2023 Kia Niro EV
* Update CARS.md for 2023 Kia Niro EV
* Put 2023 Kia Niro EV in CANFD_RADAR_SCC_CAR
* New values in params.yaml for 2023 Kia Niro EV
* Rollback - Remove CAR.KIA_NIRO_EV_2ND_GEN from CANFD_RADAR_SCC_CAR
* Update routes.py for 2023 Kia Niro EV
* Apply suggestions from code review
* use new route
* update cars
* test
* pass test
* add params, rename
* use average
use average
use average
use average
* around 2.05
* Update selfdrive/car/hyundai/interface.py
* Update selfdrive/car/hyundai/interface.py
* lower
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: e8d8304548
* test out lta message
* correctly send
* percentage is percentage driver isn't overriding
* closer to stock system
* should be able to send LTA at 100hz, counter is the same as LKA
* small amount of torque towards desired
* Offset commanded torque correctly
* Too little torque
* use car's SETME's
* Revert "use car's SETME's"
This reverts commit c888569699.
* try cutting steer every second
* Didn't seem to matter
This reverts commit 6923498b2a.
* steer to 0
* let packer set counter
* add for camry
* log steer faults
* comments
* bump opendbc
* add opParams
* add lta safety
* set safety param
* fix torque control bug
* bump panda
* fix missing signal
* [experiment] apply some rate limiting and anti-windup
* no faults, clip to 90 deg, decent torque blending
* clean up blending
* toyota angle rate limits
* use std angle limits
* assert we only add angle control to TSS2 cars
* clean up carcontroller a bit
* space space
* bump opendbc
* clean up toyotacan from opendbc change
* bump panda
* will tests run?
* steer at zero
* refactor angle to use LatControlPID with zero gains
* stop some faults and tuning
* possibly fix integral wind up at max torque
* Add 2023 rav4
* limit torque inside EPS when overriding (no huge windup in edge cases when overriding)
* fix wind up issue after turns (or prolonged saturation)
* this doesn't work that well
* try these limits
* try this
* log the angle!
* global variable
* Apply suggestions from code review
* clip angle to 3 m/s/s
* some tolerance for roll
* raise limits a bit
* bumppanda
* fix faults
* still not good
* offsetting causing hugging?
* Revert "offsetting causing hugging?"
This reverts commit a42ec0b772.
* reduce kp
* class var not needed
* limit up angle delta
* fix saturation check
* feedforward includes offset
* some threshold for roll
* bump panda
* surely we don't need this
* test stuff
* Toyota: Add FW for 2023 RAV4 Hybrid (#27494)
* Toyota: Add FW for 2023 RAV4 Hybrid
* Set RAVH_TSS2_2022 to use angle SteerControlType
* bump panda
* remove extras
* Revert "remove extras"
This reverts commit 87378e7349.
* no max angle limit for now
* add as separate platforms
* remove debug scripts
* revert to master
* remove these FW versions from 2022
* dashcam these cars :(
* fix test
* interface
* add to untested routes
* never send torque with LTA cars
* fix values
* clean up controlsd
* reset lat control files
* use the car param
* add to params
* bump panda to master
* Update selfdrive/car/toyota/carcontroller.py
* don't set torque params if angle control (fixes controlsd bug)
* reset controlsd
* keyword
* in another pr
* simplify test
* rm line
* Update selfdrive/car/toyota/tests/test_toyota.py
---------
Co-authored-by: crispbee <84819466+crispbee@users.noreply.github.com>
old-commit-hash: 57c4d78869
* 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: 8f5057ff2d
* HKG: Car Port for Kia Niro Hybrid 2023 (HDA1)
* bump opendbc
* bump
* Found gear signal
* Only set one flag
* bump opendbc
* Update CARS.md
* Update routes.py
* bump opendbc
* Update CARS.md
* some values cleanup
* new route with rlogs
* set from data
* merge
(3854+3391+3227+3336)/4
* fine move back down here for now
fine move back down here for now
* Update selfdrive/car/hyundai/interface.py
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: dae1331817