Commit Graph

273 Commits

Author SHA1 Message Date
Cameron Clough acd455ed3a
Ford: Support for LCA vehicles (#23331)
* Ford: add Focus Mk4

Also removes support for the Ford Fusion.

* Ford: LKAS/LCA steering and UI CAN commands

* Ford: implement CarController w/ steering and lanes ui

* Ford: FPv2 firmware request

* Ford: Add FW for 2018 Ford Focus

* Ford: add Escape Mk4

* bump panda

* cleanup

* add that back

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-04-14 14:32:03 -07:00
Adeeb Shihadeh b51deb97d1
UI: body support (#24079)
* body ui template

* faces

* abs

* not raw

* auto switch

* check that

* no smoosh

* cmath
2022-04-01 15:12:54 -07:00
Shane Smiskol 31a6b141d6
Docs: auto-generate supported cars documentation (#23762)
* make CAR class enum, and values.py formatting

* Revert "make CAR class enum, and values.py formatting"

This reverts commit 04d9817e9d.

* stash

* add supported packages and model years

* don't change model years in fps

* move Lexus to info dict and make int enum

* remove sometimes wrong model years from name string

* use enum names

* convert Honda's values

* nice names

* use name

* GM

* Mazda, Ford

* Hyundai: WIP

* finish Hyundai

* fix

* Nissan

* Subaru

* Tesla

* formatting is for another PR

* Chrysler: todo: unify the Pacificas?

* do volkswagen

* this isn't a zoo

* skip enums for now

* Update selfdrive/car/volkswagen/values.py

Co-authored-by: Jason Young <46612682+jyoung8607@users.noreply.github.com>

* set All

* temp cars

* auto-generate CARS.md

* update type hinting

* add generated file

* add longitudinal star to cars that support disabling radar

* add TODO

* add notes

* add min_steer_speed exception for hatchback

* add minimum steering speeds

* Add exceptions and run generator

* Missing Telluride

* fix Prius v

* missing Prius Prime

generate

* start to convert years to strings

* Fixup Hyundai

* convert year sets to strings

* handle this

* missing S3

* Fix and add all missing cars (verified with script

* Supported Package fixes

* add get_tiered_cars

* Check radarOffCan for removing most Honda from op long

* Update for Avalon stop and go update on master

* Fix missing car params

* add my temporary script i'm using to verify new generated DBC

add my temporary script i'm using to verify new generated DBC

* generate with jinja template

* add header and footer

* clean up

* rename

rename

* add exceptions. jinja is nice, but why are its loop indexes starting at 1?

* add list of known car videos

* See how these look

* Add nice table formatting for column description

Add nice table formatting for column description

* generate

* consisten br tag

* small clean up

* temp

* Move car videos into CarInfo

* add new copy and rename to footnotes

* Revert "temp"

This reverts commit 93c3fce1d3.

clean up

* generate

* replace with svg

* simplify a bit

* add footnotes to CarInfo

* move some variables to docs.py

* Add video link for Acadia

* Make Footnote an enum so we don't use random ints

* static analysis fixes

* move to CARS.md

* fix last missing footnote

* add to release files

* rm test file

* use svg

generate

* fix sorting

* not needed

* not sure how this got here

* remove Sedan/Couple and add Diesel footnote

* finish todos

* move make specific footnotes to selfdrive/car/*/values.py

rename

* change to zeros

* align bottom to center

* Apply some suggestions

* Update selfdrive/car/mock/values.py

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

* Update copy

* Try headers + bullet points

* somehow better

somehow better

* finish updating copy

* move template and add links to sups

* stars shouldn't be clickable

that didn't work

try this

try this

this is better

* add type hints to CarInfo

add more type hinting

* optional needs a type and any covers all (?)

* move good steering torque to */values.py

* dataclasses are much nicer than attr

* use tuple

* Update docs/cars.py

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

* suggestions

* suggestions

* suggestions

remove

* clean up a bit

* add more type hints

* center stars and remove hardcoding from template

* update copy

* Add test

* Fix types

Fix types

* add supported cars documentation test

* clean up

* replace with docs_definitions

* Add back Footnote enums

* Ah so these are like fstrings!

* Update selfdrive/car/CARS_template.md

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

* Update selfdrive/car/docs.py

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

* Update year from master merge

* Fix longitudinal star from merge

* sort properly stars by Column enum

* clean up

* HKG: Sorry guys

* Prius V gets FSR star, like others

* Update selfdrive/car/docs.py

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

* update comment

* No Prius docs change for now

Co-authored-by: Jason Young <46612682+jyoung8607@users.noreply.github.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-03-16 21:27:05 -07:00
Adeeb Shihadeh 8718a59330
cleanup selfdrive/test (#23967)
* move test routes and test_models

* move fingerprints

* little more

* remove that
2022-03-14 15:46:16 -07:00
Adeeb Shihadeh 5c3f3e44bc
break up selfdrive.config (#23959)
* break up selfdrive.config

* add to release files

* fix import order
2022-03-13 21:42:39 -07:00
Adeeb Shihadeh 8ac30fea24
move pandad to boardd/ (#23958) 2022-03-13 21:21:30 -07:00
George Hotz 8d6f49aecf
model: mse err from 0.02-> 0.000056 (#23891)
* mse err from 0.028070712 -> 5.8073703e-05

* build with weights fixup

* need thneed lib also

* don't break for binaries

* static analysis says i need init

* check the bias

* load_dlc_weights

* nicer scons

* tested scons

* fix static

* pylint issue

* new ref

* a few more asserts

Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
2022-03-02 20:52:17 -08:00
Robbe Derks 8c971f24e3
Fan controller cleanup + testing (#23886)
* clean up fan controllers in preparation for testing

* add fan controller to release

* add some unit tests around the fan controller

* subclass ABC
2022-03-02 17:35:58 +01:00
Adeeb Shihadeh 8a19d9892e
modeld: remove support for small model (#23803)
* modeld: remove support for small model

* use extra
2022-02-28 10:32:39 -08:00
Willem Melching 85efde269d
bigmodel (#23684)
* Added wide cam vipc client and bigmodel transform logic

* Added wide_frame to ModelState, should still work normally

* Refactored image input into addImage method, should still work normally

* Updated thneed/compile.cc

* Bigmodel, untested: 44f83118-b375-4d4c-ae12-2017124f0cf4/200

* Have to initialize extra buffer in SNPEModel

* Default paramater value in the wrong place I think

* Move USE_EXTRA to SConscript

* New model: 6c34d59a-acc3-4877-84bd-904c10745ba6/250

* move use extra check to runtime, not on C2

* this is always true

* more C2 checks

* log if frames are out of sync

* more logging on no frame

* store in pointer

* print sof

* add sync logic

* log based on sof difference as well

* keep both models

* less assumptions

* define above thneed

* typo

* simplify

* no need for second client is main is already wide

* more comments update

* no optional reference

* more logging to debug lags

* add to release files

* both defines

* New model: 6831a77f-2574-4bfb-8077-79b0972a2771/950

* Path offset no longer relevant

* Remove duplicate execute

* Moved bigmodel back to big_supercombo.dlc

* add wide vipc stream

* Tici must be tici

* Needs state too

* add wide cam support to model replay

* handle syncing better

* ugh, c2

* print that

* handle ecam lag

* skip first one

* so close

* update refs

Co-authored-by: mitchellgoffpc <mitchellgoffpc@gmail.com>
Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
2022-02-19 16:06:31 -08:00
George Hotz 90beaebefb
add thneed optimizer (#23772)
* add thneed optimizer

* local work group opt

* kernels and final mods

* release files

* build system touchups

* fix kernel path, rand inputs for self test

* broken since extra is gone

* update model replay ref

Co-authored-by: Comma Device <device@comma.ai>
2022-02-15 15:32:00 -08:00
Shane Smiskol 31228ce560
Honda: use common DBC for CRV H and Accord Diesel (#23743)
* bump

* use Accord DBC for CRVH, Civic Diesel

* bump

* bump opendbc
2022-02-12 16:28:53 -08:00
Shane Smiskol a584436328
Honda: use common DBC for PILOT and others (#23659)
* use common dbc

* bump

* remove from files common
2022-01-28 22:26:18 -08:00
Adeeb Shihadeh 036c1799d4 Toyota: DBC rename 2022-01-27 11:44:57 -08:00
Adeeb Shihadeh 4c765acb6e Toyota: use common DBC for IS and RC 2022-01-27 10:27:28 -08:00
Adeeb Shihadeh 9a211ee14b Toyota: remove Prius DBC 2022-01-27 08:59:16 -08:00
Adeeb Shihadeh 2f01bf3b6f Toyota: unify TNGA-K platform DBCs 2022-01-27 08:52:24 -08:00
Adeeb Shihadeh b321d65cac Toyota: CT200H DBC merged into Rav4 2022-01-27 08:43:40 -08:00
Robbe Derks 6366d1303f
Statlog in C (#23596)
* statlog in C

* fix swaglog and the test

* add missing files

* fix context initialization todo

* speed up test
2022-01-27 17:14:38 +01:00
Adeeb Shihadeh 33c8468e02 Toyota: rav4 DBC is same as corolla now 2022-01-26 22:13:51 -08:00
Shane Smiskol 14133069e1
Toyota: use common gear packet signal (#23634)
* Toyota: remove nodsu hybrid dbc

* bump

* no longer exists
2022-01-26 17:10:32 -08:00
Shane Smiskol 9de8f8cd8c
base LatControl class (#21967)
* 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>
2022-01-26 17:10:41 +01:00
Shane Smiskol 6be70a063d
LateralPlanner: Move lane change logic to another class (#23476)
* should work

* Revert "should work"

This reverts commit dabc2ea17a072a6c835e4bd1c75a2c1e2d10623d.

* move lane change logic to DesireHelper class

* clean up desires

clean up desires

* comments

* Revert "clean up desires"

This reverts commit 7301c921e305fcbd4746b19040631d935d50dfd9.

* Update selfdrive/controls/lib/desire_helper.py

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

* add to files_common

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Willem Melching <willem.melching@gmail.com>
2022-01-25 13:40:03 +01:00
Adeeb Shihadeh cdd3598146
GM: use generated DBC (#23615)
* Rename GM PT dbc to generated

* bump opendbc

Co-authored-by: Jason Shuler <jshuler@gmail.com>
2022-01-24 20:51:57 -08:00
Adeeb Shihadeh f006e392ad remove ridgeline DBC from release files 2022-01-24 15:18:17 -08:00
cydia2020 783db0cf33
Toyota: unify Sienna, Avalon, Highlander Lexus NX, Lexus RX into single DBC (#23577)
* remove sienna dbc

same as avalon

* rx and nx are also the same as avalon

* highlander can also use avalon's dbc

* bump opendbc

* rename avalon to tnga-k

* pt

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-01-19 11:46:07 -08:00
cydia2020 f32f53540e
Toyota: use single DBC for Lexus NXH, Lexus RXH, HighlanderH, Rav4H (#23576)
* use rav4h dbc for nx

also bump opendbc

* remove from release file

* same with highlander

* bump opendbc

* rav4h -> tngakh

also rxh

* bump opendbc

* bump again

* remove from release files

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-01-19 11:06:34 -08:00
Dean Lee 498d54be9c
boardd: move main() to main.cc for test cases (#23564)
* move main() to main.cc

* move includes back
2022-01-18 14:59:42 +01:00
Adeeb Shihadeh b63bc89bc9
sentry fixups (#23249)
* set env

* do init in same place

* no sentry for forks

* start session

* start session

* remove that

* val
2022-01-14 15:25:16 -08:00
Adeeb Shihadeh 610b99fd68
Log android system shutdown to param (#23520)
* Log android system shutdown to param

* comment

Co-authored-by: Comma Device <device@comma.ai>
2022-01-13 22:40:35 -08:00
Robbe Derks 1b49ce6ec4
Statsd (#23413)
* device side of statsd

* need to start it

* enable in manager

* add sleep

* cleanup

* remove aggregates for now and standardize on industry terms

* manager needs main

* need to have a try/except

* atomic_write_on_fs_tmp does not work

* cleaner

* use dump

Co-authored-by: Willem Melching <willem.melching@gmail.com>

* one file at a time

* limit amount of files

* move to influx line protocol and cleanup

* needs to be a list

* fix timezone bug

* actually rate limit

* add to release

* normalized origin

* also log deviceType

* more stats

Co-authored-by: Willem Melching <willem.melching@gmail.com>
2022-01-10 15:21:48 +01:00
Shane Smiskol 0c075a66db
Toyota: use common DBC for TSSP Camry Hybrid (#23453)
* bump dbc

* use nodsu_hybrid dbc

* remove from files_common

* bump opendbc

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-01-08 18:41:05 -08:00
Igor Biletskyy 285addeef2 Revert "boardd: new class USBDevice (#23015)"
This reverts commit 4061f50da3.
2021-12-16 17:11:45 -08:00
Dean Lee 4061f50da3
boardd: new class USBDevice (#23015)
* USBDevice

* merge master

* rebase master

* add to fiels_common

* inline functions

* namespace

* init err

* remove nested if

* cleanup

* bump panda for branch

* change includes

* bump panda branch

* change name

* bump master panda

Co-authored-by: Igor Biletskyy <briskspirit@users.noreply.github.com>
Co-authored-by: Igor Biletskyy <bs@privacy.im>
2021-12-16 16:53:48 -08:00
Adeeb Shihadeh efa448d829
Remove NanoVG (#23147) 2021-12-06 14:18:00 -08:00
Adeeb Shihadeh e679d05d9e
New sounds (#22652)
* 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>
2021-11-30 19:47:33 -08:00
Adeeb Shihadeh 9a87f684b5 add devel 2021-11-29 17:50:10 -08:00
Adeeb Shihadeh 8b2cb71305 script to verify release and staging branches are the same 2021-11-29 17:42:55 -08:00
Adeeb Shihadeh 08f9316b56 remove dead + duplicate python code 2021-11-28 14:02:06 -08:00
Adeeb Shihadeh 8160cf3c1b
camerad: remove camera frame stream (#23045)
* camerad: remove camera frame stream

* fix release files
2021-11-27 21:58:21 -08:00
Dean Lee 75dd0d6296
loggerd: split loggerd.cc into three files 2021-11-23 17:53:49 -08:00
Robbe Derks 4960578bdf
Tesla longitudinal control (#22561)
* tesla long squashed changes

* fix no resume from stop

* try setting accel limits to 0 to remove jerk with fast switchover

* expand radard lookup tables

* bump merged panda submodule
2021-11-18 13:57:12 +01:00
HaraldSchafer 06844821c5
Cleanup toyota tuning (#22859)
* start cleanup

* start lateral

* finish lateral

* add file

* typo

* add enu

* remove whitespace

* cleanup safetyparam

* typo
2021-11-17 12:06:39 +01:00
Dean Lee 797bb1acb0
soundd: misc cleanup + tests (#22796)
* pass AudibleAlert to setAlert

* apply reviews

* remove trailing underscore

* add current_alert_type

* common function get_alert

* same freq as ui

* small cleanup

* setvolumne on change

* static Alert::get

* test_sounds

* remove old test files

* loop twice

* assert loopsRemaining

* assert stop

* init to min_volumne

* Revert "remove old test files"

This reverts commit 12e8bfefae1ae7f8649d3eda1e4126ff8eb1fe17.

* move to ui/soundd

* move test to tests/test_sound.cc

* remove old tests

* cleanup

* lower volume

* Revert "remove old tests"

This reverts commit e6bb12abfa.

* return Alert

* cleanup

* remove #include <optional>

* cleanup .gitignore

* revert to std::optional

* Revert "revert to std::optional"

This reverts commit a66291c51f.

* cleanup

* remove volume check

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-11-09 14:18:29 -08:00
Willem Melching 09ad6707ef add common/markdown.py to release files 2021-11-04 16:32:23 +01:00
Willem Melching bef686f275
Move navigation into separate daemon (#22767)
* Add navd folder

* prints route instructions to console

* broadcast NavInstuction without lanes

* show basic instructions and eta

* parse out lane info

* use swaglog

* clip distance on ui side

* draw lane directions

* show route

* add to process config

* add to release files

* small cleanup

* show route without gps

* pop open map on initial route

* fix error messages around no gps

* done

* make persistent process

* handle end of route

* clear route on offroad

* only one timer

* fix layout hacks

* explicit rendering at 20Hz
2021-11-04 14:32:32 +01:00
Dean Lee d70e49dca5
replay: build on devices (#22632)
* there is no QThread::create on device

* add files to files_common

* modify SConscript

* no memory_resouce on device

* #define HAS_MEMORY_RESOURCE

* fix hangs on shutdown

* build on device with the --extra flag

* delete later

* setup -> extras

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-10-29 12:21:57 +02:00
Dean Lee 92682cb8e0
params: remove params_pxd.pxd (#22723) 2021-10-28 19:10:55 +02:00
Willem Melching b816b5b644
Sphinx docs generation (#22697)
* add sphinx

* switch theme

* Experiment: sphinx docs generation updated (#22708)

* moved build to root gitignore, added .gitkeep

* Improved makefile doc build process

- Removed auto-generated docs from source control
- Moved apidoc.sh into Makefile
- Removed make.bat (can add back if Windows support desired)
- Added sphinx viewcode and markdown extensions
- Added feature to source /docs in build, so any .rst file in /docs will
  override the respective file during the build process
- Added feature to copy all markdown/rst files from source into /build/
  during build process so they can be easily referenced while writing
  docs (see examples in index.md)
- Wrote basic starter index.md file

TODO: Add new dependencies to Pipfile [dev-packages]

* Revert accidental modification to Pipfile

* fix command substitution

* exclude xx

* improve docs

* dont include all docs in release build

* Add dockerfile

* update title

* include normal readme

* build container in CI

* use buildkit

* add login

Co-authored-by: Chad Bailey <chadbailey904@gmail.com>
2021-10-28 15:14:37 +02:00
Adeeb Shihadeh 687925c775 fix dashcam spelling 2021-10-27 17:55:48 -07:00