* reset min torque meas too
* add test that fails
* cmt
* cmt
* clean up test
* don't be random
* above test tests this pretty much
* test angle too
* fix
* also test driver torque
* whoops
* whoops
* test that we can send curvature=0 if enabled=False while control_allowed=True (let's say EPS faults, OP doesn't want to actuate)
* draft
* only check error if apply bit is 1
* subtest
* no subtest
* fix safety and tests
* tests say this works
* clean up
* subtests are sloww
* Revert "subtests are sloww"
This reverts commit 560c6745c8.
* fix test from merge
* add comment
* add comment
* add another comment
* spacing
* set ford vehicle speed
* parse yaw rate signals
* misra
* misra
* misra
* misra
* draft
* update module
* already checked
* and set it properly
* some stuff
* draft
* clean up (will fail tests because we don't send yaw rate yet)
* could do something like this
* this is better and less prone to bugs
* match simple op limiting, debugging
* set checksum for messages in tests
* clean up
* fix that
* one m/s fudge
* fix sign of yaw rate
* interpolate detects size
* forgot OP flips the curvature sign. it matches yaw on can
* all my debugging crap
* make replay work for ford
* fix panda blocking messages (array is fixed size so size-1 is 0 rate at high speed)
* uncomment safety test limits
* revert
* round for zero blocked msgs
* fix limits
* meas safety checks that down rate is >=, not <
* test pass
* lots of comments and draft what one meas torque check would look like
* fix that
* add curvature meas
* add debugging stuff
* Revert "add debugging stuff"
This reverts commit 449783fc62.
* messy but at least one test passes now
* draft
* add max_steer
* some safety clean up
* and that
* start with a test that works
* another test that works (sort of, we need more strict panda safety without false positives)
* no max curvature check (not safety related), allow any rate limits
* add new function
* also need to consider max val here, since OP will send up to that
* and now use the function
* lower to 10
* compilation fixes
* clean up (no rate limiting)
* remove that too
* curvature diff test
* more clean up
* debug
* ?
* better names
* more official
* use _curvature_meas_msg_array here
* bit faster
* no i don't
* revert that
* why not just use angle_meas?
* bb ll
* bb deb
* clean up debug vals
* more
* revert replay drive debugging changes
* Update board/safety.h
* rm line
* only need to round the final thing
* not needed, under 10 ms
* make a class variable
* fix a misra?
* another misra?
better
* ?
* 12.1
* need to explicitly convert
* add one to not false trigger the violation (float rounding)
* not really needed
* rm line
* cmt
* use clamp
* rename
* in struct
* comment
* use max_limit_check
* draft clean up
* Revert "draft clean up"
This reverts commit d1a0e8acd1.
* make a global
make a global
* this is fine
* Add second speed
* 2.5 m/s is 9 kph, 4 kph is the max in the field
* add quality signal
* qf signal name
* comment
* checksum matches except it goes to zero when turning the car off despite counter still active
* update comments
* now test it
* spacing
* Update board/safety/safety_ford.h
* zzzz
* not needed
* whoops
* test vehicle state mismatch
* add to safety_helpers
* probably misra
* we might want to check it in both speed signals in case one doesn't exist on a car
* Revert "we might want to check it in both speed signals in case one doesn't exist on a car"
This reverts commit 3338931409.
* fix formatting
* 2 m/s (7 kph)
* set controls_allowed directly like other safety models
remove vehicle_state_mismatch
* obv
* Add second speed
* 2.5 m/s is 9 kph, 4 kph is the max in the field
* add quality signal
* qf signal name
* comment
* checksum matches except it goes to zero when turning the car off despite counter still active
* update comments
* now test it
* spacing
* Update board/safety/safety_ford.h
* zzzz
* not needed
* whoops
* test vehicle state mismatch
* add to safety_helpers
* probably misra
* we might want to check it in both speed signals in case one doesn't exist on a car
* Revert "we might want to check it in both speed signals in case one doesn't exist on a car"
This reverts commit 3338931409.
* fix formatting
* 2 m/s (7 kph)
* revert mismatch stuff
* make explicit, there was no bug only because the if statement is identical to above
* debug
* Revert "debug"
This reverts commit 2ec83677c3.
* Revert "make explicit, there was no bug only because the if statement is identical to above"
This reverts commit fcb2a106b9.
* fixes
* clean that up
* and this
* cleanup and fix
* dos must stall
* clean those up
* fix misra
* more test
* fix import
* cleanup
---------
Co-authored-by: Comma Device <device@comma.ai>
* hitl fan test
* enable cooldown on dos as well
* small cleanup
* get expected RPM from panda class
* fix
* overshoot test
* fix max RPM getting
* fix percentage
* revert cooldown fix
---------
Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* hitl fan test
* enable cooldown on dos as well
* small cleanup
* get expected RPM from panda class
* fix
* overshoot test
* fix max RPM getting
* fix percentage
* revert cooldown fix
* add cooldown for dos fan as well
* remove feedforward from the fan controller to eliminate overshoot
* update clip
* cleanup
* add that back
---------
Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* added infotainment status to panda
* dont fwd infotainment status
* revert placeholder and add test case
* Fix test case
* gen2 only
* fix test case
* Revert "fix test case"
This reverts commit 8cc7579620.
* Revert "gen2 only"
This reverts commit 6a511a9976.
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* VW MQB: Cleanup HCA control message
* update opendbc ref
* revert this before merging
* MISRA
* revert Dockerfile to comma master
* reverted a little too much
* allow inactive accel values at all times
* cleaner
* unnecessary, done by default
* better comments
* move test to common class
* fix
* flip
* comment
* append 0 and INACTIVE_ACCEL to test accels + check acc_07 sends if inactive only
* cleanup
* fix that
* copy testing convention of VW and Honda
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* civic22_long
use long flag
* maybe?
* Update safety_honda.h
* revert the 0x1c8 addition
* init radarless safety check
* correct accel parsing
* add test class (WIP)
* remove current_controls_allowed
* Fix ACC_HUD
* patch
* Add missing safety to test name
* Pass irrelevant test
* move comment
* remove unused comments
* add comment to TestHondaBoschRadarlessSafety
* Fix message overlap
The "exceptions for common msgs across different hondas" fix does not seem to be working. Created another exception for TestHondaBoschRadarless based on the HondaNidec exception above
* Fix base
* remove comment
* remove buttons from LONG TX
* make a base Radarless test class
* can't remove them, since safety doesn't check bosch
* test accel limits
* test accel limits
* we can do the clean up in another pr
---------
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: sshane <shane@smiskol.com>
* HITL tests: nose -> pytest
* run all
* add back partial tests
* big speed up
* fix skipping
* enable all
* that's expected
* clean up after ourselves
* jungle is fixture
* fix
---------
Co-authored-by: Bruce Wayne <batman@comma.ai>
* part 1 of clean up
* make it work and pass
* remove lta stuff
* remove commented lta tests
* more
* move test back to where it was
* rm line
* rename that
* fix that
* start to add LTA
* angle test
* fix tests and add base stock longitudinal class
* formatting
* clean that up
* convention
* add ALLOW_DEBUG
* part 1 of clean up
* make it work and pass
* remove lta stuff
* remove commented lta tests
* more
* move test back to where it was
* rm line
* rename that
* fix that
* we always want to enforce LTA disallowed actually
* not sure if these are helpful
* endswith("Base")
* toyota torque on toyota for safety replay
* Honda torque on Honda for safety replay
* Chrysler torque on Chrysler for safety replay
* Subaru torque on Subaru for safety replay
* fix
* Honda is Big Endian!
* Update helpers.py
* we already do this every where
* Update tests/safety_replay/helpers.py
* Update tests/safety_replay/helpers.py
* Update tests/safety_replay/helpers.py
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>