Commit Graph

67 Commits

Author SHA1 Message Date
YassineYousfi
d18f185115 modeld: parsing and publishing in python (#30273)
* WIP try modeld all in python

* fix plan

* add lane lines stds

* fix lane lines prob

* add lead prob

* add meta

* simplify plan parsing

* add hard brake pred

* add confidence

* fix desire state and desire pred

* check this file for now

* rm prints

* rm debug

* add todos

* add plan_t_idxs

* same as cpp

* removed cython

* add wfd width - rm cpp code

* add new files rm old files

* get metadata at compile time

* forgot this file

* now uses more CPU

* not used

* update readme

* lint

* copy this too

* simplify disengage probs

* update model replay ref commit

* update again

* confidence: remove if statemens

* use publish_state.enqueue

* Revert "use publish_state.enqueue"

This reverts commit d8807c8348338a1f773a8de00fd796abb8181404.

* confidence: better shape defs

* use ModelConstants class

* fix confidence

* Parser

* slightly more power too

* no inline ifs :(

* confidence: just use if statements
old-commit-hash: cad17b1255
2023-10-19 14:23:51 -07:00
Adeeb Shihadeh
16ec56398c 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
old-commit-hash: a9626f95b6
2023-08-20 20:49:55 -07:00
Justin Newberry
7b677910df Linter: Fix >160 line length test (#29287)
* test

* fix line length

* fix line length

* fix file size

* revert poetry

* cleanup for PR
old-commit-hash: cf64b27168
2023-08-08 17:13:35 -07:00
Shane Smiskol
f9c6c9e8c3 Revert "experimental mode: gate navigate on openpilot (#28883)" (#29005)
This reverts commit 929880496515e3f995634e561145802bf15a60ea.
old-commit-hash: b5b431c12d
2023-07-17 19:56:38 -07:00
Shane Smiskol
296de39f48 experimental mode: gate navigate on openpilot (#28883)
* first draft copy, needs updates

* gate behind exp mode

* can be one line

* this is no longer true

* toggle isn't just e2e long now, rename

* don't enable/disable

* kinda works!

* remove old giant qstring

* comment clean up

* similar breakpoint

* more clean up

* fixup onroad

* preserve planner behavior, and we don't need to look at confirmed param if we're onroad

* update translations

* vanish translations

* use scene for op long

* lowercase!

* updated copy

* need to check longitudinal here now too

* clean up!

* here is better

* used

* no nav emoji

* don't check param if not valid

* revert this

revert this

* ed
old-commit-hash: f973d605b2
2023-07-14 05:26:59 -07:00
Vivek Aithal
4be83d0d57 Lateral Planner: Calibrate model speed with vEgo (#28049)
* calibrate speed in the lateral planner

* make speed err helper fn

* check if trans has values

* clip the vel_err

* update refs
old-commit-hash: a599890fed
2023-05-09 14:26:58 -07:00
Vivek Aithal
b6909a65e7 Bolt EUV: Non-linear torque function (#27696)
* add erf based ff

* silly bug; diff of nonlinear != nonlinear of diff

* add sigmoid based ff, ensure slope at 0 > 1

* reduce steer down limit and increase driver allowance

* rebase panda

* atry without friction, and with tanh nonlinear

* finalize the nonlinear function

* do not disable friction compensation in the ff

* bump panda

* bump panda

* update refs

* update refs

* resolve comments

* Add type hints

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 15b880c0ea
2023-03-29 15:10:39 -07:00
Harald Schäfer
73561f01e0 Expand lateral MPC to 10s (#27343)
* 10s lat

* Full length MPC

* redfine N

* Leave controls the same for now

* Updates

* use long plan in lat plan

* interp plan

* add new interp

* simplergit add selfdrive/controls/plannerd.py selfdrive/controls/

* expand to 10s

* revert this

* fix linter

* Update sconscripts

* fix test

* fix test

* fix test

* Revert "Update sconscripts"

This reverts commit 6e23c69dcebd5ed003e37e01921f6af7c31de0db.

* Dont import drive helpers

* better compile deps

* fix compile

* comment

* update replay

* Update plannerd time
old-commit-hash: 04fe6c4ec7
2023-02-17 15:28:26 -08:00
Adeeb Shihadeh
bc61a6b1fd controlsd: higher default set speed in experimental mode (#27279)
* controlsd: higher default set speed in experimental mode

* update tests

* update tests
old-commit-hash: 5ab2d35f7b
2023-02-09 19:27:51 -08:00
Vivek Aithal
238e63bc2a [controlsd] Refactor apply_deadzone in Lateral Torque Control (#26626)
rename apply_slack to apply_center_deadzone, remove unused prius offline values
old-commit-hash: 3a4f19f0ee
2022-11-29 12:46:08 -08:00
Vivek Aithal
5bc529bf20 [controlsd] Toyota Prius 2017 (#26455)
* increase lag on prius

* better offline values computation

* split prius ecu more, set deadzone to 0

* add deadzone back

* replace deadzone with slack

* reduce deadzone to 0.2

* update refs
old-commit-hash: 0706b03e8c
2022-11-29 10:47:13 -08:00
Shane Smiskol
b94dfd81c6 controlsd: add test around cruise speed gas pressed behavior (#26486)
* test

* test

* debug

* test

* test

* test

* clean up

* clean up

* add test

* stash

* clean up

* clean up

* clean up

* assert equal
old-commit-hash: 23a7a987f6
2022-11-21 17:05:13 -08:00
Shane Smiskol
270fe5aac3 controlsd cruise speed: fix missing initial value
old-commit-hash: f15d169289
2022-11-14 11:01:01 -08:00
Shane Smiskol
a0539910bf controlsd: no speed increment if enabled on button rising edge (#26490)
* don't increment speed if we enabled on rising edge

* more realistic test
old-commit-hash: e46063086f
2022-11-13 16:34:26 -08:00
Shane Smiskol
0f3aeb531c controlsd: clean up v_cruise updating (#26479)
* clean up

* clean up

* clean up
old-commit-hash: 870b798185
2022-11-11 23:56:35 -08:00
Shane Smiskol
dd6f16fcfd controlsd v_cruise: fix unknown buttons (#26474)
Fix button being None
old-commit-hash: d3f971b365
2022-11-11 20:10:12 -08:00
Shane Smiskol
0371e47fac controlsd: resume does not increment speed while cruise standstill (#25470)
* fix runaway set speed for GM

* fix runaway set speed for GM

* Handle resuming to exit standstill generically

* clean that up

* ugh i want to fix all the formatting

* class that manages v_cruise

* better name

* move around

* add depressed_state

* fine to update on pressed change, better name

* cmt

* we need to check CS. button_change_state only works if we exit standstill on rising edge not falling edge

* no defaultdict
old-commit-hash: 76ac3d4c99
2022-11-11 19:43:30 -08:00
Shane Smiskol
a7828e1ae3 controlsd: add cruise speed helper class (#26472)
* fix runaway set speed for GM

* fix runaway set speed for GM

* Handle resuming to exit standstill generically

* clean that up

* ugh i want to fix all the formatting

* class that manages v_cruise

* better name

* move around

* add depressed_state

* fine to update on pressed change, better name

* revert gm stuff

* revert standstill stuff

* remove

* revert that

* we can put this in here now!

* below update

* actually only used here

* one line
old-commit-hash: 811c096e64
2022-11-11 18:53:48 -08:00
HaraldSchafer
3b62f66008 Use same minimum speed for lateral planning and controls (#26177)
* Use same speed for lag adjustmenet

* One is a nicer number

* Update ref
old-commit-hash: 4f84b29985
2022-10-20 14:34:36 -07:00
HaraldSchafer
a8ec6f4cfd Rocket Launcher Model (#25963)
* 1456d261-d232-4654-8885-4d9fde883894/440 6b7d7cec-ead8-40f3-86cc-86d52c9b03fe/300

* compute only 9 tokens: 1456d261-d232-4654-8885-4d9fde883894/440 6b7d7cec-ead8-40f3-86cc-86d52c9b03fe/300

* tinygrad: cleanup gather

* 1456d261-d232-4654-8885-4d9fde883894/440 6b7d7cec-ead8-40f3-86cc-86d52c9b03fe/700

* empty commit for tests

* bump tinygrad

* dont use tinygrad matmul for now

* bump tinygrad

* 1456d261-d232-4654-8885-4d9fde883894/440 e63ab895-2222-4abd-a9a5-af86bb70e260/700

* float16 1456d261-d232-4654-8885-4d9fde883894/440 e63ab895-2222-4abd-a9a5-af86bb70e260/700

* increase steer rate cost

* Revert "increase steer rate cost"

This reverts commit 74ce9ab9be7ef17ecfec931f96851b12f37f2336.

* fork tinygrad

* empty commit for tests

* basics

* Kinda works

* new lat

* new tuning

* Move LATMPCN so scons compiles

* Update long weights

* Add tinygrad optim

* Update model ref

* update weights

* Update ref

* Try

* Error message for field ignore

* update model regf

* ref commit

* Fix onnx test

Co-authored-by: Yassine Yousfi <yyousfi1@binghamton.edu>
old-commit-hash: cb0b7375b7
2022-10-05 21:43:38 -07:00
Lee Jong Mun
f6700cb7ba remove blank whitespace (#25921)
old-commit-hash: 7df0e3efcf
2022-09-29 13:52:41 -07:00
Shane Smiskol
2bd8ee0974 controls: block resume if cruise not previously engaged (#25402)
* see if this works at all

* can revert this

* think adding a no entry conditionally is nicer

* then we can revert this

* 0 makes more sense

* Revert "0 makes more sense"

This reverts commit efc89e8a2389ef58fbc0cec0a2872d24db524867.

* gm CC uses > 70

* bump cereal

* comment

* test on Honda

* whoops

* works

* add exception with todo

* moved button enable events to controlsd

* get rid of that

get rid of that

* different values for now

* car interfaces add enable event, controlsd can block it

* Regen and update refs

* delete if not set

* One place

one place

* regen routes are uninitialized first few frames

* Trim start of segment so it's like original segment

* stash

* regen

* not working

* clean up

* more cleanup

* revert

* bump ceral

* actually check resume button

* whoops

* pcmCruise cars don't use setSpeed, so we're good

* engage correctly in sim

* Update ref_commit

* Update refs
old-commit-hash: 5ed587ebef
2022-08-17 18:03:33 -07:00
grekiki
cc0ba78b69 More accurate jerk limits (#24755)
* More accurate jerk limits

* Min is not - max

For example max_curvature_rate can be negative.

* reduce diff
old-commit-hash: b941b39c56
2022-06-16 10:47:53 -07:00
HaraldSchafer
bc679f735d Misc torque control fixes (#24801)
* Fiction compensation should be based on error

* Update refs

* Add deadzone

* update ref
old-commit-hash: 843e59f6f0
2022-06-10 22:52:48 -07:00
ClockeNessMnstr
52a28d8938 update DH names + notes for MPC output curvatures (#24701)
* update names + notes for MPC outputs

"current_curvature" is not the correct description of what the MPC is outputting in it's curvature_ego state.
The MPC is integrating it's free variable, curvature_rate, such that curvature[0] is actually the desired_curvature before any delay.
inversely: the curvature_rate_desired is the desired rate of change to the setpoint and not the actual curvature rate. 

If we were to set the initial curvature = measured curvature in the MPC initiation these names would be correct. 
This was possibly how it was initially set up but the nomenclature here is now confusing.

* more notes

* match

* Clarify #1
old-commit-hash: b215d611b1
2022-06-07 09:41:03 -07:00
Shane Smiskol
56a44d41f8 controls: pressing set while gas pressed resets to vEgo (#24100)
* set while gas pressed to resume

* better order

* what was I thinking?

* Update selfdrive/controls/lib/drive_helpers.py

Co-authored-by: Gijs Koning <gijs-koning@live.nl>

* Update selfdrive/controls/lib/drive_helpers.py

Co-authored-by: Gijs Koning <gijs-koning@live.nl>

* only if under set speed

* some clean up and ciel the v_cruise_kph

* clean up

* actually floor

* Should be cruise min

* On phone, will clean up

* Think no floor is fine

* clean up and catch setCruise

* update comment and just always do rounding and clipping

update comment

* flip order

Co-authored-by: Gijs Koning <gijs-koning@live.nl>
old-commit-hash: d3d210c183
2022-05-19 03:28:50 -07:00
Jason Young
d82f65a1b7 Accept resumeCruise for resuming prior speed setpoint (#24348)
* accept two button types for resume

* retry CI

* Update selfdrive/controls/lib/drive_helpers.py

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 45f131e0e7
2022-04-28 17:46:58 -07:00
Adeeb Shihadeh
3683360f86 controlsd: fix long press set speed increment (#24161)
old-commit-hash: 1ea66ee244
2022-04-06 22:03:40 -07:00
HaraldSchafer
d42962014c CarParams: remove max steer (#24044)
* Remove max steer

* Update ref
old-commit-hash: adf34c3414
2022-03-25 17:33:11 -07:00
HaraldSchafer
b24d669861 Apply EU guideline lateral limits (#23974)
* Apply EU limits

* Lower bound v_ego

* Add curvature limit comment

* Remove comment

* Update ref
old-commit-hash: 4a8fffd0f4
2022-03-22 19:46:04 -07:00
Gregor Kikelj
f0ece255b4 Improve style in drive_helpers (#23962)
old-commit-hash: 08c2d066cf
2022-03-14 14:03:28 -07:00
Adeeb Shihadeh
ec47e0fef0 break up selfdrive.config (#23959)
* break up selfdrive.config

* add to release files

* fix import order
old-commit-hash: 5c3f3e44bc
2022-03-13 21:42:39 -07:00
martinl
2caf297f69 Remove unused MPC_COST_LONG class (#23843)
old-commit-hash: 160a8cfd58
2022-02-23 17:26:05 -08:00
HaraldSchafer
c90287391a Controlsd: fix bug in curv rate limit (#23250)
* Controlsd: fix bug in curv rate limit

* update ref
old-commit-hash: d3f064f5ca
2022-01-04 13:21:56 -08:00
Harald Schafer
cf3c8cd301 fix max speed comments
old-commit-hash: 44adea73ce
2021-12-08 17:13:43 -08:00
HaraldSchafer
0dbf0a0106 Cruise speed: up to 90mph max (#23161)
* Cruise speed: up to 90mph max

* update ref
old-commit-hash: d1b003c5d2
2021-12-07 15:47:57 -08:00
Willem Melching
627c6260cf Fix cruise button mph increment (#22487)
old-commit-hash: 5587964d58
2021-10-08 11:10:29 +02:00
speedking456
ca46acfd64 accel/decel button metric increments (#22399)
* add metric values

Freedom units have weird multiples compared to metric. Modified so that it increments by 10 km/h on long press and 1 km/h on short press, rather than 8 and 1.6 km/h. This mimics stock hyundai behaviour on metric vehicles.

* use is_metric from controlsd

* use actual mph value instead of rounded

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 23b9316603
2021-10-04 21:11:17 +02:00
Greg Hogan
a131767d0b accel/decel button short/long press 1mph/5mph (#22013)
old-commit-hash: 92895f1e68
2021-10-01 11:09:56 +02:00
HaraldSchafer
96d4bfbff3 Refactor long (#21433)
* refactor

* needs casting

* tests pass

* fix that test

* refactor in controls

* lets not go crazy

* change of names

* use constants

* better naming

* renamed

* soft constraints

* compile slack variables

* rm git conflict

* add slack variables

* unused

* new edition

* fcw

* fix tests

* dividing causes problems

* was way too slow

* take a step back

* byeeee

* for another time

* bad idxs

* little more cpu for cruise mpc

* update refs

* these limits seem fine

* rename

* test model timings fails sometimes

* add default

* save some cpu

* Revert "little more cpu for cruise mpc"

This reverts commit f0a8163ec90e8dc1eabb3c4a4268ad330d23374d.

* Revert "test model timings fails sometimes"

This reverts commit d259d845710ed2cbeb28b383e2600476527d4838.

* update refs

* less cpu

* Revert "Revert "test model timings fails sometimes""

This reverts commit e0263050d9929bfc7ee70c9788234541a4a8461c.

* Revert "less cpu"

This reverts commit 679007472bc2013e7fafb7b17de7a43d6f82359a.

* cleanup

* not too much until we clean up mpc

* more cost on jerk

* change ref

* add todo

* new ref

* indentation
old-commit-hash: be5ddd25cd
2021-07-07 19:42:26 -07:00
HaraldSchafer
7e87930a20 Refactor lateral lag compensation (#21334)
* add T_IDXS

* refactor

* fix test

* unused

* typo

* needs casting

* Update selfdrive/controls/lib/drive_helpers.py

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* deprecate field

* regen all

* new segs

* add todo

* split back

* clean

* bad names

* do in controls

* add arg

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 6838e1c82c
2021-06-30 14:19:39 -07:00
HaraldSchafer
df9381abd4 Do not allow engagement outside of training distribution (#20112)
* higher is out of the training distribution

* Update RELEASES.md

* Update RELEASES.md

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: a0cdacbb2a
2021-02-18 17:16:20 -08:00
HaraldSchafer
5794b3a053 not relevant at high speed (#19946)
* not relevant at high speed

* update ref
old-commit-hash: d1b31d3697
2021-01-27 20:28:17 -08:00
HaraldSchafer
c6d9b9565a Mpc rework2 (#19660)
* start again

* need that too

* this actually works

* not needed

* do properly

* still works

* still works

* still good

* all G without ll

* still works

* all still good

* cleanup building

* cleanup sconscript

* new lane planner

* how on earth is this silent too....

* update

* add rotation radius

* update

* pathplanner first pass

* misc fixes

* fix

* need deep_interp

* local again

* fix

* fix test

* very old

* new replay

* interp properly

* correct length

* another horrible silent bug

* like master

* fix that

* do doubles

* different delay compensation

* make robust to empty msg

* make pass with hack for now

* add some extra

* update ref for increased leg

* test cpu usage on this pr

* tiny bit faster

* purge numpy

* update ref

* not needed

* ready for merge

* try again after recompile

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 158210cde8
2021-01-14 18:43:50 -08:00
eFini
7ec2abcf08 use buttonEvent.type instead of string (#1533)
old-commit-hash: e14dfa3bec
2020-05-18 10:15:30 -07:00
Adeeb
48340cc8cb Alerts + Events refactor (#1466)
old-commit-hash: d976233f69
2020-05-14 15:21:21 -07:00
George Hotz
079eee7294 selfdrive/controls
old-commit-hash: b0260dadba
2020-01-17 12:48:30 -08:00
George Hotz
81dd5a50cf root commit
old-commit-hash: 6c33a5c1f3
2020-01-17 10:02:52 -08:00
Vehicle Researcher
dfe603c178 openpilot v0.6.4 release
old-commit-hash: 61229779e4
2019-09-09 23:03:02 +00:00
Vehicle Researcher
9abcfabc5f openpilot v0.6 release
old-commit-hash: 8a9ed94f5f
2019-06-28 21:11:30 +00:00