* base LatControl class, move sat check out of pid.py
clean up
clean up
* fix
* global variable for min control speed
* nicer name
* unify latcontrol class init arguments
* add to release files
* saturated if close to limit
* move angle mode saturation checks into class
* check_saturation function takes in current saturated status
undo
* apply latcontrol_angle's active checking to all controllers
* clean up
* move those back
* make abstract baseclass
* add test for saturation
* keep clip
* update ref
* fix static analysis
Co-authored-by: Willem Melching <willem.melching@gmail.com>
* hacks to make process replay engage again
* dont change that
* enable engagement check again
* chmod +x
* first working regen
* proper logMonoTime
* fix video framerate consistency
* mpc is valid again
* proper alive checks
* revert loggerd change
* ensure engaged in regen, fix managerState, peripheralState
* ubloxRaw is unused
* add submaster config for gm
* regen all services we can run without HW
* fix loggerd
* loggerd: matroska without the extension
* update ref
* lat_mpc: make v_ego, rotation_radius parameters instead of states
* lat_mpc: remove rotation_radius argument, since it is part of the parameters
* lat_mpc: use qp_solver_cond_N = 1
slightly faster and in line with case study in Fig. 2/ 3 in Frison2016 - https://cdn.syscop.de/publications/Frison2016.pdf
An Efficient Implementation of Partial Condensing for Nonlinear Model Predictive Control
* adapt test_lateral_mpc to formulation with parameters
* lat_mpc: set parameters in reset() and copy values
* acados_ocp_solver_pyx: make options_set useable
* update ref
Co-authored-by: Willem Melching <willem.melching@gmail.com>
* make v_desired a FirstOrderFilter
* forgot one
* one more ref
* Add a new object for the filter
* fix
* fix tests
* update ref
Co-authored-by: Willem Melching <willem.melching@gmail.com>
Updated Python code with Python 3.6+ features:
- utf-8 encoding is now the default (PEP 3120)
- Replace list comprehensions by Generator Expressions (PEP 289)
- Replace yield loop by yield from (PEP 380)
- Remove the (object) subclass when defining a class
- Replace the IOError alias by OSError (PEP 3151)
- Define sets with curly braces {} instead of set()
- Remove "r" parameter from open function, which is default
Co-Authored-By: Adeeb Shihadeh <8762862+adeebshihadeh@users.noreply.github.com>
Co-Authored-By: GregorKikelj <96022003+GregorKikelj@users.noreply.github.com>
Co-authored-by: Adeeb Shihadeh <8762862+adeebshihadeh@users.noreply.github.com>
Co-authored-by: GregorKikelj <96022003+GregorKikelj@users.noreply.github.com>
* Convert all text strings to f-strings
Reformats all the text from the old "%-formatted" and .format(...) format to the newer f-string format, as defined in PEP 498. This requires Python 3.6+.
Flynt 0.69 was used to reformat the strings. 120 f-strings were created in 51 files.
F-strings are in general more readable, concise and performant. See also: https://www.python.org/dev/peps/pep-0498/#rationale
* revert pyextra changes
* revert ublox.py
Co-authored-by: Willem Melching <willem.melching@gmail.com>
* rename and add dep
* proto thresholds
* tweak vk
* update natural offset and clip offsets
* 95th looks good
* no punish for being relaxed
* yaw laplace only
* some pay more attention
* update ref
Co-authored-by: Willem Melching <willem.melching@gmail.com>
* alert text simplification
* little more
* user triggered
* little more
* less annoying ldw
* Update selfdrive/controls/lib/events.py
* update refs
* revert
* Replace lists with generators v2
* Replace set with {}
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* Replace more set() with {}
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* Add cost for creep
* more reasonable cost
* seems better than before
* science tune
* more chill
* closer follow
* stopping takes some leeway
* better cruise
* needed to be cumsum all along
* jerk not even needed
* matches better
* 6 is too much
* add back
* a little extra buffer is good for badly tuned cars
* new refs
* refs again
* new engage/disengage + amp config
* first family
* cleanup audible alerts
* tici isn't special
* fix up debug cycle alerts
* these were better
* extend range
* use distracted sound
* log scaling
* getting closer
* slightly louder
* prompt
* update tests
* update refs
* fix c2 test
* resolve todo
* adjust tolerance
* revert for now
* should work
Co-authored-by: Comma Device <device@comma.ai>