Commit Graph

61 Commits

Author SHA1 Message Date
Mitchell Goff 3fb1a1c746 New desire model (#21729)
* New model: b822ee32-917c-4639-99f8-25be3e6aabad/900

* Enable keeps

* use new packet

* Send keep pulses once per second

* Updated model_replay_ref_commit

* New model: 0f160bf9-1bce-43e6-9785-564b2453eeac

* Bump model_replay_ref_commit

* Bump submodules

* New model: fd904bf9-5dd8-4619-8997-c5668400e078/550

* New model: fd904bf9-5dd8-4619-8997-c5668400e078/950

* No keeps

* Bumped model replay ref

Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
old-commit-hash: e83973b9b31199c1594b9be2371a7af0c589c2d9
2021-07-26 21:11:09 -07:00
Willem Melching 7f75519892 make sure tidx+1 doesn't exceed TRAJECTORY_SIZE-1 (#21595)
* make sure tidx+1 doesn't exceed TRAJECTORY_SIZE-1

* Update driving.cc

* Update driving.cc

Co-authored-by: deanlee <deanlee3@gmail.com>
Co-authored-by: HaraldSchafer <harald.the.engineer@gmail.com>
old-commit-hash: 48020e686eacba1dea76d14ff9e807594f7b68e4
2021-07-14 10:07:58 -07:00
robbederks 319a000fe5 Add option to avoid thneed (#21577)
* add option to avoid thneed

* cleaner

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

* fix USE_THNEED in modeld

* cleanup

Co-authored-by: Willem Melching <willem.melching@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 2f22207ecef15bdd43e7b93860c5abcff7a245d5
2021-07-13 16:40:20 +02:00
Adeeb Shihadeh 477e2e22d3 Revert model (#21571)
* Revert "New desire model (#21458)"

This reverts commit 9db03d2a3fefff50b738d288beadc2c2e7c3165e.

* revert rel notes
old-commit-hash: 88424ede2c5bdd2beade731717cbb0bb635034e9
2021-07-12 19:26:50 -07:00
HaraldSchafer 7fcdd04541 New desire model (#21458)
* New model: b822ee32-917c-4639-99f8-25be3e6aabad/900

* Enable keeps

* use new packet

* Send keep pulses once per second

* Updated model_replay_ref_commit

* New model: 0f160bf9-1bce-43e6-9785-564b2453eeac

* Bump model_replay_ref_commit

Co-authored-by: mitchell <mitchellgoffpc@gmail.com>
old-commit-hash: 4230d5d2124577b86e69b136d846ca9cc3ecd746
2021-07-07 19:44:17 -07:00
Dean Lee 880d64d615 Refactor ModelFrame struct to class (#20005)
* refactor modelframe

* remove DUMP_YUV

* use constructor/destructor instead of init/free

* OMG...should be clEnqueueReadBuffer

* rebase master

* rebase master

* fix build

* small cleanup

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 8da538c18c10f838fba60e86c01bd5de59934bc6
2021-06-19 01:22:50 -07:00
Dean Lee f70a79b838 Use C++ header files instead of C header files. (#21192)
* use cstring instead of string.h

* use cstdio instead of stdio.h

* remove inttypes.h

* use cstdlib instead of stdlib.h

* use cstdint instead of stdint.h

* #include <cstddef>

* cstdlib

* use cmath

* remove stddef.h

* use cassert

* use csignal

* use ctime

* use cerror

* rebase master
old-commit-hash: c53cb5d570adb82bc454fcabab458d7e7f09738c
2021-06-08 13:46:22 -07:00
Dean Lee 3a698faadc Use full include path (#21194)
old-commit-hash: b06b3ecb60c651dacf079513635f7d9d99228783
2021-06-08 12:09:30 -07:00
HaraldSchafer 8850151ddf Fix planner low speed behaviour (#20990)
* first point is 0

* first point is always now

* print replay diffs

* new ref

* changed wrong commit
old-commit-hash: dc40631e97739c8e55f271501b6356eda52d84ff
2021-05-21 15:10:59 -07:00
Mitchell Goff 78927e4ebb New model outputs (#20933)
* New model: 51a237cd-9c43-4281-9072-802325e6744d/950

* Added new meta outputs and proper interp for plan_t_arr

* Added meta-based trigger for FCW

* No nans in planner, separate alert for model FCW

* Cleaned up plan_t interp logic

* Added empty cameraError alert to fix unit tests

* Use the normal FCW event

* Updated filter logic

* Updated model replay ref

* Moved disengage predictions into their own cereal struct

* Updated model replay ref for new cereal structs

* Apparently this breaks stuff?

* Bumped cereal commit and model replay ref
old-commit-hash: 29cc3500a5161b4d2245b8d041f190533be4ee8e
2021-05-19 22:30:23 -07:00
Dean Lee e333e4f189 Cleanup selfdrive/ includes (#20822)
* cleanup include path

* continue

* format includes

* fix testraw.cc

* remove include path from SConstruct

* regroup

* rebase master

* almost done

* apply review

* rename FileReader.xx to filereader.xx

* rename Unlogger.x->unlogger.x

* rename FrameReader.xx -> framereader.xx

* apply reviews

* ui.h

* continue

* fix framebuffer.cc build error:mv util.h up

* full path to msm_media_info

* fix qcom2 camerad

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 7222d0f20dc8edfe0d2f3417d1ce7c84fbd32805
2021-05-08 22:15:17 -07:00
HaraldSchafer 1d36adf351 no heading cost (#20594)
* no heading cost

* live mpc weight config

* need to add stds

* make work on empty data

* no divide by 0

* update refs

* update model replay

* update proc replat

* new model replay ref
old-commit-hash: d72d433ec7a3c9f0bb2f90d196b3826d48d9b1a0
2021-04-06 23:49:29 -07:00
Dean Lee 405df8b165 Params: python-like interface (#20506)
* rebase master

* delete outdated test_params.c

* putBool & more robust getBool

* putBool(SshEnabled)
old-commit-hash: 98e55996f67aaaf715c941d417ae4d3b0187f388
2021-03-30 12:54:59 +02:00
Adeeb Shihadeh 966945880b Cereal cleanup (#20003)
* start cleanup

* fan speed

* cleanup dm

* fix cereal

* hwType -> pandaType

* update refs

* update refs

* bump cereal

* freeSpacePercent

* cereal master
old-commit-hash: 000bd226aa9902da01e6010bf26762fca2c20df0
2021-02-03 19:57:30 -08:00
Comma Device a63dca4659 fix thneed build
old-commit-hash: dcd4bb4f4eac60439e354686b85a67d99c2b0458
2021-02-01 20:34:21 -08:00
Dean Lee 3f7488b73a model_publish: use kj::ArrayPtr<const float> raw_pred (#19917)
old-commit-hash: 0b7b7241c8fd314775fa2a5b3c7c1846ab3f2776
2021-02-01 19:08:17 -08:00
Dean Lee 8c963586f8 model_init: remove memset (#19921)
old-commit-hash: ccf055fd6267bd6bfa0189d2f61d39574548fa80
2021-01-26 16:56:37 +01:00
Dean Lee 52e1efffd5 modeld: remove template from fill_meta (#19862)
old-commit-hash: 1e617a3931608d38d37180c19eeb5f6f39b50efd
2021-01-20 20:50:24 -08:00
George Hotz 3484683199 Thneed load/save (#19700)
* start thneed load/save

* compiling

* fix loading

* build thneed model in scons

* don't hardcode /data/openpilot

* release files

* those too

* support for loading/saving binary kernels

* save binaries out of json band

* make binary a command line flag to the compiler

* need include assert

* fix shadowed common in SConscript

* cleanup run.h

* hmm, the recurrent buffer wasn't 0ed

* ugh, unique ptr

* remove power constraint, refactor record

* Revert "remove power constraint, refactor record"

This reverts commit bb6fa52db6df59cd9d6420a6f630430e35af8a5e.

* print on thneed stop

* fingers crossed for this one

* recorded

* just curious

* okay okay, pass tests?

* cleanups

* refactor wait

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 59fac9fdc630fa78f520fc9a244f9f9cd39fa562
2021-01-19 18:08:31 -08:00
HaraldSchafer 5c2c6691b2 remove old model packet (#19769)
* remove publisher

* move to V2

* radard new model

* fix plant

* change packety

* need hack here too

* change to new

* this has been wrong all along

* no more model msg

* subscribe to new model

* not needed anymore

* make work

* need to ignore that too

* should pass tests, needs car test

* fix process replay

* no more poly

* update refs

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 124100d0fa42485edaf86cb25f77f27e8917eed1
2021-01-19 17:15:16 -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: 158210cde8e689daa04bcaa1e502727cf7bfddb6
2021-01-14 18:43:50 -08:00
HaraldSchafer 89b03fa2ee Test model refactor (#2720)
* template funcion fill_meta

* add function get_plan_max_idx

* add function get_mdn_max_idx

* remove temp builder variables

* get_mdn_max_idx->get_lead_data

* get_pan_max_idx->get_plan_data

* fill_lane_line

* combine fill_lane_line&fill_path into one function

* fill_lead_vw

* using unique_ptr

* prefer using constexpr

* more constexpr,remove duplicate defined TRAJECTORY_SIZE

* remove suffix _arr from variable name

* misc

* remove extern c

* refactor model_publish

* remove unused paramaters

* traffic_convention to c style array

* c style array:prev_desire&pulse_desire

* fix error&make easy for review

* const mat3 &transform

* move cl_command_queue into ModelState

* use maco LEAD_MHP_SELECTION

* move constexpr from .h to .cc

* remove #define MODEL_NAME

* modeldata.h: contexpr

* remove param temporal from model_init

* helper function get_best_data

* fix probs

* int

Co-authored-by: deanlee <deanlee3@gmail.com>
old-commit-hash: 630c7309a560e573a9398acd77c96aedcb65dfae
2020-12-09 22:48:14 -08:00
Dean Lee fb9298b120 fix fille lead (#2703)
old-commit-hash: 531b85b983f8f737ef71d17bf7b68893effcde3e
2020-12-06 13:02:23 -08:00
ZwX1616 f4bdc2127c raw pred api (#2611)
* send both

* update cereal

* ptr type

* this is fine

* clean up

* v1 and v2

* header

* update cereal

* cereal
old-commit-hash: f30d15ea24c3d122b55c2789dc996725f13d0bd6
2020-12-02 18:46:12 -08:00
Dean Lee df9e0b2cb4 simplify building capnp messages with arrays (#2617)
old-commit-hash: bd4f6650faea8b3c42a99087b4f1ce0560b7d652
2020-11-30 12:08:52 +01:00
Willem Melching 19855c90f1 remove check on frame drop in modeld (#2638)
old-commit-hash: feaecbd615a13a93b9486aeb6777c854ae0b0e6a
2020-11-27 16:13:37 +01:00
Adeeb Shihadeh 4be6d905dc update frame drop filter (#2592)
old-commit-hash: d92f923d70712e541de59bf76f23a494dd0c46b4
2020-11-21 14:50:53 -08:00
HaraldSchafer 7c8ea30532 fix frame drop percentage (#2578)
* correct, I think

* add model execution time

* remove unused

* token is a file

* this is gonna change

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 7378bc42845a094bbb22fb76154cb40ecb098aaf
2020-11-19 21:05:29 -08:00
HaraldSchafer faad598e29 Minor fixes 08 (#2565)
* correct indexes

* best metrics yet 30231f46-08af-477e-9d30-776593913c24/700

* sometimes x decreases

* update model refs

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 7b216e7cbb30f9a7b164cc17bb66b348d728b65e
2020-11-17 20:04:32 -08:00
HaraldSchafer 008f37c749 Torch model (#2452)
* refactor draw model

* rebase master

* correct valid_len

* rename function

* rename variables

* white space

* rebase to master

* e16c13ac-927d-455e-ae0a-81b482a2c787

* start rewriting

* save proress

* compiles!

* oops

* many fixes

* seems to work

* fix desires

* finally cleaned

* wrong std for ll

* dont pulse none

* compiles!

* ready to test

* WIP does not compile

* compiles

* various fixes

* does something!

* full 3d

* not needed

* draw up to 100m

* fix segfault

* wrong sign

* fix flicker

* add road edges

* finish v2 packet

* Added pytorch supercombo

* fix rebase

* no more keras

* Hacky solution to the NCHW/NHWC incompatibility between SNPE and our frame data

* dont break dmonitoringd, final model 229e3ce1-7259-412b-85e6-cc646d70f1d8/430

* fix hack

* Revert "fix hack"

This reverts commit 5550fc01a7881d065a5eddbbb42dac55ef7ec36c.

* Removed axis permutation hack

* Folded padding layers into conv layers

* Removed the last pad layer from the dlc

* Revert "Removed the last pad layer from the dlc"

This reverts commit b85f24b9e1d04abf64e85901a7ff49e00d82020a.

* Revert "Folded padding layers into conv layers"

This reverts commit b8d1773e4e76dea481acebbfad6a6235fbb58463.

* vision model: 5034ac8b-5703-4a49-948b-11c064d10880/780  temporal model: 229e3ce1-7259-412b-85e6-cc646d70f1d8/430  with permute + pool opt

* fix ui drawing with clips

* ./compile_torch.py 5034ac8b-5703-4a49-948b-11c064d10880/780 dfcd2375-81d8-49df-95bf-1d2d6ad86010/450 with variable history length

* std::clamp

* not sure how this compiled before

* 2895ace6-a296-47ac-86e6-17ea800a74e5/550

* db090195-8810-42de-ab38-bb835d775d87/601

* 5m is very little

* onnx runner

* add onnxruntime to pipfile

* run in real time without using the whole CPU

* bump cereal;

* add stds

* set road edge opacity based on stddev

* don't access the model packet in paint

* convert mat.h to a c++ header file (#2499)

* update tests

* safety first

Co-authored-by: deanlee <deanlee3@gmail.com>
Co-authored-by: mitchell <mitchell@comma.ai>
Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: George Hotz <george@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 08846b5c0ec3a5299c8cb73904da15a18d3aaccf
2020-11-11 20:31:46 -08:00
Willem Melching 498ecbdf3c Params refactor, simplified (#2300)
* always c++

* Create C++ params class

* get works

* tests hang now

* passes tests

* cleanup string formatting

* handle interrupt in blocking read

* fix memory leak

* remove unused constructor

* Use delete_db_value directly

* Rename put -> write_db_value

* filename cleanup

* no semicolons in cython

* Update common/SConscript

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

* add std::string version of delete_db_value

* This is handled

* cleanup encoding

* Add clear method to clear all

* add persistent params

* fix android build

* Should be called clear_all

* only import params when needed

* set params path on manager import

* recusrively create directories

* Fix function order

* cleanup mkdirp

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 2e182e5c574ea1468678b5fd8d0597e34ed5898d
2020-10-13 16:23:23 +02:00
Adeeb Shihadeh ac3422fc0f message builder (#2161)
* use custom MessageBuilder from cereal

* use MesageBuilder.toBytes

* bump cereal

* unused

* another one

* fix ui msg

Co-authored-by: deanlee <deanlee3@gmail.com>
old-commit-hash: 4d5733924a2fdd8a3bbaf5f48869ac744b983401
2020-09-12 21:48:15 -07:00
Adeeb Shihadeh 91ac4efab2 driver monitoring cleanup (#2101)
* read rhd from param

* don't need that anymore

* fix build

* bump cereal

* read param from camerad too

* add read_db_bool helper

* bump model replay ref commit, IsRHD wasn't set
old-commit-hash: 349040d9580bf7c9b98273dd2745fc4b147d3254
2020-08-29 17:16:00 -07:00
Dean Lee ebd4f68cba ui: refactor model related functions (#2026)
* remove read_model

* remove structs for c-capnp

* remove duplicate #define from modeld

* add function fill_path_points

* fix Indentation

* use MODEL_PATH_DISTANCE instead of 192

* fix type

use validLen

* rename left_path_points&right_path_points to xxx_lane_points
old-commit-hash: f8ab6bd009410a9f7ab9c30ce7b72a82c6d2507b
2020-08-18 15:26:43 +02:00
Dean Lee 1bc3801c9b Make sure memory is released by using unique_ptr (#1958)
old-commit-hash: ef435ef2ac14dd7f842d4f59909330ba57f6d177
2020-08-05 12:27:56 +02:00
Adeeb Shihadeh c374f03187 Revert modeld vipc conflate behavior and alert on dropped frame percent (#1877)
* Revert "Fix modeld dropping frames if processing takes over 50 ms"

This reverts commit fb908877a50d72e20a047bd4138316b12c8a30cc.

* track frame drop

* fix unused

* alert on frame drop perc

* reduce thresholds

* posenet is invalid on non-consecutive frames

* Refactor filter time constant

* Use vipc_dropped_frames for posenet valid check

* Actually set frame drop percentage

* Add explicit cast just to be sure

* Prevent frames dropped to go up to quickly on startup

* bump cereal

* reduce soft disable threshold to 1%

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 58c3b5ba84f6c3da3c660770148cea98c708fce5
2020-07-14 14:23:27 -07:00
Adeeb Shihadeh 4d9200f307 only check frame age for posenet too
old-commit-hash: c8f3ff8913ce7e18d755ae8015a27af3365029e9
2020-07-09 20:55:56 -07:00
Adeeb Shihadeh c8a9fb9321 only check frame age for model validity
old-commit-hash: 587bdf593799f9c6612c26703ffcfcd031f98f92
2020-07-09 20:37:28 -07:00
Adeeb Shihadeh a1dbb38a0c Alert when modeld is lagging by more than a frame (#1823)
* alert when modeld is lagging by more than 1 frame

* log frameAge in modelData

* set posenet valid

* compute frame_age once
old-commit-hash: 03e824a4b558daa15191408e88b73fee7ab1792f
2020-07-09 17:02:21 -07:00
Willem Melching 2e056ae2a3 Fix unsigned overflow in modeld frame age computation
old-commit-hash: 5e10efead11073279f7119f07df2825713f033c4
2020-06-22 19:31:57 -07:00
Willem Melching b772d12f87 Make model packets invalid when frames are too old (#1759)
* make model packets invalid when frames are too old

* add frame numbers to cloudlog
old-commit-hash: 88f92663780665b27fafdb5ab86ad501cad4cbcf
2020-06-22 14:27:58 -07:00
Dean Lee 5fb85ede56 add function read_db_bytes (#1662)
old-commit-hash: 90d97de74ddc4672b35a5186e868794468a44345
2020-06-09 13:46:49 -07:00
George Hotz 669977eb1f save valid_len
old-commit-hash: 4e7fe3a9ec4fddd517ea470af3b7eb3a6fd415e3
2020-06-03 14:18:42 -07:00
Dean Lee b72fcb69e2 driving.cc: Pass ModelDataRaw by reference (#1600)
* pass ModelDataRaw by reference

* pass NVGpaint by refer
old-commit-hash: af36aa28abeb55a4445cbc1ff13ac55993d989d9
2020-05-30 10:08:44 -07:00
Willem Melching 7f0b3180a4 Use C++ version of SubMaster and PubMaster (#1548)
* add PubMaster & SubMaster

remove 'delete msg'

remove headers

* use constructor to initial all submster

* modify drain sockets

* fix typo in ssconscript.remove lines

no checkValid in loggerd

last modify

handle_message:event->&event

fix type

remove heads

event to auto

* new interface

* api changed

* Revert "use constructor to initial all submster"

This reverts commit 73be7ea46250a325ce41d3a0445e34395a2ae692.

* change to new api

* revert loggerd

* dd

* use new PubSub api

* update to new interface

don't modify loggerd

reset panda

reset opendbc

remove empty lines

* switch to new pubMaster

* update to the new inteface

change

remove error code

. to ->

merge paramsd.cc

update panda

fix typo

simplify

fix typo

* Fix build

* always conflate

Co-authored-by: deanlee <deanlee3@gmail.com>
old-commit-hash: ab5af232b243ba8137695f68c125f922fb412d44
2020-05-21 16:04:33 -07:00
Willem Melching aedf223401 remove eigen from phonelibs (#1505)
old-commit-hash: add784a7df0bd27aa1df115e38d43d5159c832f9
2020-05-13 16:41:52 -07:00
Harald Schafer 02eeef5f2b safer
old-commit-hash: ee10697d861c422545ce29ce7869c328e42c7a7c
2020-05-10 22:00:41 -07:00
robbederks 5a12fc32e7 Ambient light calibration parameters on persist partition (#1429)
* WIP: light sensor persistent params

* fix params writing

* Persistent params argument in C params lib. Fixed symlink flow

* Removed debug prints

* fix boardd

* fix ui

* remove debug print
old-commit-hash: 71bebc4fca91681669c86b5600b67bf2b7f899bf
2020-05-08 19:39:18 -07:00
HaraldSchafer f3747d2fe5 Better poly (#1437)
- better polyfitting
- no mpc cost change during lane change
- model trained with better ll gt, sim noise and guaranteed memories
old-commit-hash: 65fcc7c45ff1d4d747dc52ff5791afb84a18744a
2020-05-08 17:14:43 -07:00
Dean Lee 451af5865c unmap a previously mapped buff (#1410)
old-commit-hash: 98ec06e125b605405900673be0305677ad5efce3
2020-04-22 10:16:05 -07:00