* ban all of common & copy numpy_fast
* add numpy_fast
* these are okay
* and ban controls
* better name
* Conversions
* do utils, kalman
* clean up
* sorting
* don't forget
* format card
* standalone process
* no class member CS, there's no point
also can be confusing; what else could be using this?
* rename CoS
* Update selfdrive/controls/controlsd.py
* never works first time :D
* canRcvTimeout is bool
* hack
* add cpu
* see what testing closet comes up with
* first
* some clean up
* support passable CI, fix test models
* fix startup alert
* process replay changes
* test_fuzzy
* gate carOutput valid on carControl valid
* we should publish after we update carOutput
* controlsd was using actuatorsOutput from 2 frames ago for torque, not the most up to date
* check all checks for carControl in case controlsd dies
* log more timestamps
* more generic latency logger; needs some clean up
latency_logger.py was difficult to understand and modify
* card polls on can and carControl to get latest carControl possible
* temp try to send earlier
* add log
* remove latencylogger
* no mpld3!
* old loop
* detect first event
* normal send
* revert "card polls on can and carControl to get latest carControl possible"
how it was is best
* sheesh! update should be first
* first timestamp
* temp comment ( timestamp is slow :( )
* more final ordering, and make polling on/off test repeatable
* Received can
* new plot timestamps
* clean up
* no poll
* add controllers (draft)
* Revert "add controllers (draft)"
This reverts commit e2c3f01b2f.
* fix that
* conventions
* just use CS
* consider controlsd state machine in card: not fully done
* hmm it's just becoming controlsd
* rm debugging
* Revert "hmm it's just becoming controlsd"
This reverts commit 534a357ee9.
* Revert "just use CS"
This reverts commit 9fa7406f30.
* add vCruise
* migrate car state
* Revert "migrate car state"
This reverts commit 4ae86ca163.
* Revert "add vCruise"
This reverts commit af247a8da4.
* simple state machine in card (doesn't work as is)
* Revert "simple state machine in card (doesn't work as is)"
This reverts commit b4af8a9b0a.
* poll carState without conflate
* bump
* remove state transition
* fix
* update refs
* ignore cumLagMs and don't ignore valid
* fix controls mismatch; controlsd used to set alt exp
* controlsd_config_callback not needed for card
* revert ref temp
* update refs
* no poll
* not builder!
* test fix
* need to migrate initialized
* CC will be a reader
* more as_reader!
* fix None
* init after publish like before - no real difference
* controlsd clean up
* remove redundant check and check passive for init
* stash
* flip
* migrate missing carOutput for controlsd
* Update ref_commit
* bump cereal
* comment
* no class params
* no class
* Revert "no class"
This reverts commit 5499b83c2d.
* add todo
* regen and update refs
* fix
* update refs
* and fix that
* should be controlsstate
* remove controlsState migration
CoS.initialized isn't needed yet
* fix
* flip!
* bump
* fix that
* update refs
* fix
* if canValid goes false, controlsd would still send
* bump
* rm diff
* need to be very careful with initializing
* update refs
* flags
* update ref
* use the flags directly
* use post_init (don't freeze)
* we can maintain frozen with custom class
* not preglobal
* move to common
* cleanup
* subaru steer faults
* it takes a bool now
* Update selfdrive/car/subaru/carcontroller.py
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* that was removed
* should be abs
* bump panda
* bump panda
* subaru faults
* add fixme
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* review suggestions
* still want zero steer when lat not active
* bump submodules
* move it under the non-preglobal section
* better comment for steer limited
Co-authored-by: Shane Smiskol <shane@smiskol.com>
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* Add support for Forester Hybrid 2020
Co-authored-by: martinl <martin@mlp.ee>
* it's a param now
* make it work
* fix
* merge and cleanup
* remove duplicate
* should be forester
* bump submodules
* should be abs
* add missing params
* still need a test route
* still need a test route
* consitent
* here too
* todo
* more
* Update selfdrive/car/tests/routes.py
* clean up
---------
Co-authored-by: martinl <martin@mlp.ee>
Co-authored-by: Justin Newberry <jnewberry0502@gmail.com>
* Subaru: Crosstrek Hybrid support
* hybrid cars in dashcam only
* revert that
* just dashcam
* tah should be abs
* remove unused import
* use the old dbc for now
* hybrid car exceptions in carstate
* need dashstatus until we get a proper cruiseactivated bit
* missing CP
* merge conflicts
* lets be consistent about extend
* cleanup
* fix and comments
* preglobal fix
* and the rest
* and this
* added hybrid to release
---------
Co-authored-by: Justin Newberry <justin@comma.ai>
* cancel rate
* Update selfdrive/car/subaru/carcontroller.py
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* leave it as it was for now
* cleanup
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* Add longitudinal support for Subaru Crosstrek and Impreza
* Update experimentalLongitudinalAvailable check
* Update supported cars list
* bump panda
* Remove/rename es_lkas_msg to es_lkas_state_msg
* Use stockAeb for AEB passthrough
* bump panda
* bump panda
* remove stockFcw from stockAeb
* Subaru: Add FCW_Cont_Beep to stockFcw signals
* bump panda
* bump panda
* update poetry deps: shellingham
* bump panda
* bump panda
* Revert "update poetry deps: shellingham"
This reverts commit 6e9b209648.
* Merge fixes
* bump panda
* bump panda
* update supported cars list
* dont use counters for long control
* fix unittests
* submodules update
* only soft disable in long control
* use common functions and cleanup
* apply hystersis correctly
* move to comma repo
* use CanBus
* cleanup
* explicit copy
* behind a flag
* remove unrequired rpm checks
* add comment
* fix flag issue
* we still need to check rpm
* update docs
* enable long for a test route
* unit tests
* inactive throttle fix
* Update subarucan.py
* Update carcontroller.py
* Update carcontroller.py
* inactive throttle fix
* Delete settings
* fix rate limit
* bump submodules
* bump panda
* bump panda
* bump panda
* bump panda
* simplify initial implementation, remove AEB
* reduce initial complexity by not intercepting cruisecontrol or brake_status
* fix fwd hook test
* show pcb off warning
* cleanup and setup for tuning
* fix sumobuldes
* revert unrelated changes
* only whats required
* only whats required
* clean that up
* better comments
* behind the flag for now
* comments and minimize diff
* align stuff
* cleanup for PR
* apply review suggestions
---------
Co-authored-by: Martin Lillepuu <martin@mlp.ee>
* frequency based messaging
* frequency based messaging
* frequency based messaging
* frequency based messaging
* rename better
* use frame in if statement
* syntax
* remove extra space
* put all behind one if statement
* update refs
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* Update counter in carstate checks
* Rename es_lkas to es_lkas_state to match signal
* formatting
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* remove compiler flag stuff
* force error for testing
* bump panda and fix mistake
* wip
* bump panda
* wip
* wip
* forgot checksum and stuff
* add to signals
* rename
* test
* test
* bump panda and opendbc
* bump cereal
* add blank filler
* test
* add steer required to infotainment
* fix missing bit
* fix missing bit
* cleanup for PR
* cleanup for PR
* bump submodules
* wip
* wip
* i wonder what 1 is
* seemed to also be obstacle detected?
* bumppanda
* only if global
* only global gen 2
* fix order
* detect and send
* detect in rest of places
* update refs
* bumpopendbc
* copy whole message (camera sometimes sets these signals)
* bumppanda
* update refs!
* bumppanda
* let's not change this
* same as all the other functions
* Revert "same as all the other functions"
This reverts commit e86dbb695e.
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* 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
* proof of concept
* actuators packet describes which actuators are active
* bump cereal
* fixes
* not needed for this PR
* Do Toyota
* add back controlsState.active
* bump cereal
* rest of cars
* in actuators
* add active back
* which
* use controlsState.active for now
* will make an issue
* Update selfdrive/controls/controlsd.py
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* move local lat_active checks into CC.latActive
* remove redundant checks
* move comment
move comment
* fix joystick mode
* get enabled from carcontrol
* do standstill check in controlsd
* make sure we consider the gas press case for GM
* use CC.actuators
* fix
* capitalization
* Bump cereal
Bump cereal
* make intermediate actuators
* similar convention to before
* clean that up
* update refs
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* Emit correct alerts for LDW Left & Right on Subarus
This change switches the ldw event to use VisualAlert.ldw and
alters all cars to use the prior behaviour for that alert, except
global subarus - they emit the correct warning to the dash
* Remove whitespace, and add comment about not overwriting stock alerts
Co-authored-by: Crispin Flowerday <crispin@theflowerdays.com>
* Add support for Subaru Legacy 2015-18
* syntax fix
* Add Legacy 2018 FPv1
* Add Subaru Ascent from upstream
* Use GLOBAL_CAR and LEGACY_CAR lists
* Change LEGACY_2015 to LEGACY_PREGLOBAL
* Add LEGACY_CAR to carstate
* Change LEGACY_2015 to LEGACY_PREGLOBAL in test_car_models
* Add missing SafetyModel to Ascent
* Use GLOBAL_CAR and LEGACY_CAR to set safetyModel
* Change LEGACY_CAR to PREGLOBAL_CARS, remove GLOBAL_CAR
* Fix PREGLOBAL_CARS in carstate and subarucan
* Minor cleanups
* Add accelCruise button event
* Change Preglobal Driver Torque limit to match Global
* Match comments to upstream
* Use Steer_Warning and Steer_Error_1 only for Global
* Change mph units to match upstream values
* Increase Preglobal brakePressed threshold to 2
* Add DashcamOnly to LEGACY_PREGLOBAL
* Fix typo in variable name
* Update README, add create_preglobal_steering_control
* cleanup carcontroller
* cleanup values
* missed that one
* Update STEER_STEP
* Update STEER_MAX
* Add preglobal signal frequency checks
* remove PREGLOBAL_CARS from subarucan
* Remove whitespace
* Use common frequency checks
* cleanup carstate
* cleanup subarucan
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* Before abstraction, adding speed init from VW as well
* strting to abstract carstate class
* fix bug and update lock?
* revert pipfile change
* another bug
* fix linter
* bug fix
* remove a bunch of diplicated kf code
* better to not have class vars. will abstract __init__ anyway later
* abstract common instance vars in carstate init and a generic gear parser static method
* abstract gear parser for chrysler
* abstract gm gear parser too
* remove unnecessary random vars
* Chrysler: carstate returns capnp struct directly
* revert ref commit
* test ref
* WIP
* more WIP
* ops, missed this conflict
* ford as well
* not sure why this got deleted
* no need to copy
* remove copy
* remove copy import
* remove unnecessary intermediate variable
* remove obsolete comments
* GM: have carstate returning capnp struct directly
* Honda carstate also outputing capnp struct
* hyundai too now returns capnp from carstate
* ops, not meant this
* Subaru carstate also returning capnp
* Toyota: capnp struct as output of carstate
* fix bool
* minor simplififcation in Honda
* no need to negate
* VW carstate returning capnp struct (#1118)
* VW carstate also returning capnp struct
* fixed typo
* Remove unused blinker button (#1119)
* remove unused blinker button
* ops, this wasn't meant
* remove blinker button for VW as well
* update ref
Co-authored-by: Willem Melching <willem.melching@gmail.com>
* Before abstraction, adding speed init from VW as well
* strting to abstract carstate class
* fix bug and update lock?
* revert pipfile change
* another bug
* fix linter
* bug fix
* remove a bunch of diplicated kf code
* better to not have class vars. will abstract __init__ anyway later
* Abstract gear parser static method (#1107)
* abstract common instance vars in carstate init and a generic gear parser static method
* update opendbc (#1105)
* abstract gear parser for chrysler
* update opendbc (#1106)
* abstract gm gear parser too
* remove unnecessary random vars