* Added modeld.py (WIP)
* No more VisionIpcBufExtra
* Started work on cython bindings for runmodel
* Got ONNXModel cython bindings mostly working, added ModelFrame bindings
* Got modeld main loop running without model eval
* Move everything into ModelState
* Doesn't crash!
* Moved ModelState into modeld.py
* Added driving_pyx
* Added cython bindings for message generation
* Moved CLContext definition to visionipc.pxd
* *facepalm*
* Move cl_pyx into commonmodel_pyx
* Split out ONNXModel into a subclass of RunModel
* Added snpemodel/thneedmodel bindings
* Removed modeld.cc
* Fixed scons for macOS
* Fixed sconscript
* Added flag for thneedmodel
* paths are now relative to openpilot root dir
* Set cl kernel paths in SConscript
* Set LD_PRELOAD=libthneed.so to fix ioctl interception
* Run from root dir
* A few more fixes
* A few more minor fixes
* Use C update_calibration for now to exactly match refs
* Add nav_instructions input
* Link driving_pyx.pyx with transformations
* Checked python FirstOrderFilter against C++ FirstOrderFilter
* Set process name to fix test_onroad
* Revert changes to onnxmodel.cc
* Fixed bad onnx_runner.py path in onnxmodel.cc
* Import all constants from driving.h
* logging -> cloudlog
* pylint import-error suppressions no longer needed?
* Loop in SConscript
* Added parens
* Bump modeld cpu usage in test_onroad
* Get rid of use_nav
* use config_realtime_process
* error message from ioctl sniffer was messing up pyenv
* cast distance_idx to int
* Removed cloudlog.infos in model.run
* Fixed rebase conflicts
* Clean up driving.pxd/pyx
* Fixed linter error
old-commit-hash: 72a3c987c0
* Added cython bindings for model runners and commonmodel
* Removed cython language_level=3
* loop to set CXXFLAGS for both envs
old-commit-hash: e2e39d100b
* 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>
old-commit-hash: 973d90be77
* Uncomment build_mac job
* Add PYCURL_CURL_CONFIG
* Acados universal binary
* Remove x86 macos references from sconscript
* Add missing include in cabana
* Update cereal
* Update workflow
* Remove unnecessary libpaths for darwin
* Add missing path to cached dirs
* Fix path in cache preparation step
* Add poetry caches to CI cache
* Compile acados with lower deployment target for CI
* Update cereal
* Pass -rpath in linker flags as scons doed not support RPATH on macos
* Use scons api instead of os
* @rpath in install name of acados dylibs
* SConstruct cleanup
* fix liblocationd tests by adding lib suffix based on platform
* Update cereal
* Update opendbc
* Update opendbc
* Add acados gitignore to release files
* Update cereal
* Update cereal
* Add scons_cache to build cache
* Add Caskroom to cache
* Fix typo
* Link all packages at once, instead of one by one
* Run cleanup stage using poetry
* Remove casks from cache
* Move scons cache to separate cache step
* Save scons cache only on master
* Remove restore-keys from save-scons-cache step
* Uncomment if conditions for scons save
* Add gcc-arm-embedded cask cache to cache
* Custom handling of gcc-arm-embedded toolchain cache
* Rename dep cache key
* Exclude .fseventsd from cache
* Fix glob pattern
* Remove .feventsd before caching
* Run mac_setup only if dependency cache-hit != true
* Update cereal to master
* Add overwrite flag to brew link
* Remove manual casadi build from mac_setup
* Remove restore-keys from dependency cache
* Remove linux requirement for casadi
* Restore restore-keys to dependency cache
old-commit-hash: 45a6834a74
* random car control
* format
* struct generation
* math
* staying real
* really staying real
* move
* split this
* format
* Revert "format"
This reverts commit a70a73952e.
* Revert "split this"
This reverts commit ae96be63cb.
* space
old-commit-hash: 3fc104fb6d
* replay_process_with_fake_sockets implementation
* add missing polled_pubs to configs
* drained_pubs field
* updated cereal
* Remove python/native variations of process replay. Replace with universal one using cereal fake sockets
* Replace old py FakeSocket with DummySocket
* Invalidate and deregister fake sockets after replay is done
* Remove unused import
* Set up new prefix for each replay
* Fixes for radard
* Refactor ReplayContext and ProcessConfig
* Minor fixes
* Reimplement controlsd fingerprinting callback
* time.sleep for sockets to safely reconnect
* Fix fingerprinting for controlsd
* Fixes for regen to work
* Fix replay loop to respect submaster frames
* Fix profiler to use new ProcessConfig fields
* Remove tqdm
* Refactor tests to use new ProcessConfig
* Add FrequencyBasedRcvCallback
* Make tolerance None by default
* Update cereal
* Add get_process_config utility func
* Update cereal. Simplify sync procedure
* Chain context managers
* New sub-socket reconnection procedure
* Fix linter issues
* Revert chaining of context managers
* Init controlsState only when replaying controlsd. Update cereal
* Update cereal
* Update process_replay to use new cereal API
* Update cereal
* Update cereal
* Update cereal
* Simplify radard recv callback
* Update release/files_common
old-commit-hash: e6ac6320ac
* time to onroad test
* run few times
* test on stripped builds
* manager
* cleanup
* split those out
* run first
---------
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 39c5d492bf
* laikad update, renaming
* update locationd
* address PR comments
* draft to fix replay
* fix process relay to allow no response for messages
* bump cereal
* update process replay ref commit
* move laikad helpers to laika
* fix ublox test
* update refs
* add proper qcom replay support
* fix gnss support if both is available
* update refs
* move laika back to master
* move cereal back to master
Co-authored-by: Kurt Nistelberger <kurt.nistelberger@gmail.com>
old-commit-hash: 981532f0c3
* Added navmodeld
* New nav model: 7c306685-5476-4bd4-ab65-105b01b6bca8/300, feats only
* little cleanup
* Remove NAV flag
* Moved to_kj_array_ptr to commonmodel.h
* Switch from decimation to last_frame_id check
* add to release files
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: bb8a38a050
* add test translations to precommit
* fix test translations pre-commit hook
* revert
* fix that
* add to release files
add to release files
* fix
* don't run test on stripped dir
* fix
old-commit-hash: 6393d29b04
* wip torqued
* add basic logic
* setup in manager
* check sanity and publish msg
* add first order filter to outputs
* wire up controlsd, and update gains
* rename intercept to offset
* add cloudlog, live values are not updated
* fix bugs, do not reset points for now
* fix crashes
* rename to main
* fix bugs, works offline
* fix float in cereal bug
* add latacc filter
* randomly choose points, approx for iid
* add variable decay
* local param to capnp instead of dict
* verify works in replay
* use torqued output in controlsd
* use in controlsd; use points from past routes
* controlsd bugfix
* filter before updating gains, needs to be replaced
* save all points to ensure smooth transition across routes, revert friction factor to 1.5
* add filters to prevent noisy low-speed data points; improve fit sanity
* add engaged buffer
* revert lat_acc thresh
* use paramsd realtime process config
* make latacc-to-torque generic, and overrideable
* move freq to 4Hz, avoid storing in np.array, don't publish points in the message
* float instead of np
* remove constant while storing pts
* rename slope, offset to lat_accet_factor, offset
* resolve issues
* use camelcase in all capnp params
* use camelcase everywhere
* reduce latacc threshold or sanity, add car_sane todo, save points properly
* add and check tag
* write param to disk at end of route
* remove args
* rebase op, cereal
* save on exit
* restore default handler
* cpu usage check
* add to process replay
* handle reset better, reduce unnecessary computation
* always publish raw values - useful for debug
* regen routes
* update refs
* checks on cache restore
* check tuning vals too
* clean that up
* reduce cpu usage
* reduce cpu usage by 75%
* cleanup
* optimize further
* handle reset condition better, don't put points in init, use only in corolla
* bump cereal after rebasing
* update refs
* Update common/params.cc
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* remove unnecessary checks
* Update RELEASES.md
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 4fa62f1464
* Add VMCU address for EV6
* Rename vmcu
* add to tests
add to tests
* rename to more generic name
* more explicit
* remove print
* Like this much better, removes subtle fingerprinting problems
* clean up
* add test and clean up
* remove hyundai stuffs
* global
* Fpv2Config class
* fix missing fw versions from import order
* unused
* revert for now
* test for fpv2 configs with subtests
* subtests don't work that way
* do toyota as an example
* revert
revert
* do chrysler
* do rest
* stash
* much smaller of a diff than the alternative
* remove unused test
* fix tests
* remove brand from Request
* Make StandardQueries class
* add missing_ecus
clean up
* rename file
* unused
* test implemented
* add comment and rename
add comment and rename
add comment and rename
* should be impossible now
* this is a fixme
* rename to fw_query
* rename this too
* and this
* move vin queries to class
* order
* can use p16!
* formatting
* whoops, this wasn't gated on not len(found_versions)
* make this clear
* Standardize manufacturer software version query
old-commit-hash: 0ef6bb48df
* delete unused stuff
* remove CL interceptor from thneed since we don't use SNPE anymore
* remove dead files from release
* that's removed
* oops, didn't save
old-commit-hash: 6c39382d71
* compiling, won't work yet
* running with inputs and outputs
* there's some magic chance this works
* no more dlc, include onnx
* yolo tests plz
* bump tinygrad
* files_common + delete dlc
* tinygrad_repo -> tinygrad
* pre commit config
* llops needed
* extra in files_common
* bump tinygrad
* fix indent
* tinygrad/nn/__init__
* tinygrad_repo
* bump tinygrad repo
* bump tinygrad
* bump with native_exp, match maybe
* native_explog is argument
* pyopencl no cache
* 5% chance this matches
* work in float32?
* bump tinygrad
* fix build
* no __init__
* fix recip
* dumb hack
* adding thneed PC support
* fix pc segfault
* pc thneed is working
* to_image
* prints stuff with debug=2
* it sort of works
* copy host ptr is simpler
* bug fix
* build on c3
* this correct?
* reenable float16
* fix private, fixup copy_inputs internal
* bump tinygrad and update ref commit
* fix OPTWG on PC
* maybe fix non determinism
* revert model replay ref commit
* comments, init zeroed out buffers
* upd ref commit
* bump tinygrad to fix initial image
* try this ref
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 40d6f4b65c
* pc thneed prereqs
* ugh, out of date
* that can stay private
* memcpy here is fine in SNPE variant
* release files
* thneed docs don't work anymore. they didn't look too useful
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: b6e355a933