Commit Graph

36 Commits

Author SHA1 Message Date
Vivek Aithal 43ce3d16df locationd: Add camera-IMU cross-checks (#29727)
* camera-gyro cross checks, but one way

* increase factor to account for gyro noise (potholes, bad roads etc

* increase factor to reduce FP with device taps, bad roads, etc

* factor to 30

* add inputsok to sensoir data invalid alert

* bugfix

* move the sensors check

* add localizer catchall alert

* update refcommit

* remove permanent alert

* revert sensorDataInvalid alert change, split into new PR
old-commit-hash: dbada885acf6418edbf6d781dc79fb85dfa74117
2023-09-06 21:01:01 -07:00
Justin Newberry 3b91610c0b Precommit: ensure executable bit is set (#29784)
* precommit ensure executable

* exclude tinygrad

* bump submodules

* exclude tinygrad globally
old-commit-hash: 4e69937d0d3fbdc7d1d42cbc18d7ccf8ddb115f1
2023-09-05 16:33:26 -07:00
Harald Schäfer 3a28e97a95 Revert: Locationd: enable laikad (#29687)
* Revert: Locationd: enable laikad

* update ref
old-commit-hash: 55b391509d94c45000df6754f173ad446dc1b34c
2023-08-28 16:27:11 -07:00
Harald Schäfer bc017ab936 Locationd: enable laikad (#29570)
* experiment

* llk back

* update refs

* update ref

* no internet

* Update ref
old-commit-hash: 8205590624913b927d7abb1d214ea25886d7c1ea
2023-08-24 16:51:45 -07:00
Dean Lee 1a2f9c464b locationd: passing eigen objects by reference (#28719)
pass eigen objects by reference
old-commit-hash: 3930ec9facb51491309ba37f66a7b3c59a8dd035
2023-08-24 12:55:47 -07:00
Dean Lee 97e9d55588 cpplint: build/include_what_you_use (#29556)
* include_what_you_use

* remove comments

* include <memory>

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 2d99521e7500902070d0aacce69528bcfd8b9964
2023-08-23 13:25:17 -07:00
Harald Schäfer a967592f8f Revert laikad llk (#29535)
* Revert "bump laika (#29522)"

This reverts commit 19ab859e302d52b4f1667f05543ac622ad259e57.

* Revert "Locationd: switch to laikad (#29278)"

This reverts commit 5dda7be8ac08ef6b51283eda74569517bba905f6.
old-commit-hash: fda3106c28af236e8b3dc78bfdca7a1365904d1e
2023-08-22 14:12:51 -07:00
Harald Schäfer 0174c5f21c Locationd: switch to laikad (#29278)
* use_laika

* Update test

* fix spacing

* fix proc replay

* small fix

* Try correct std

* cast correctly

* experimental

* simpler

* update reset thresholds

* improve

* Ready for live running

* outlier reject

* update laika

* add fine speeds

* more experiments

* fixes

* all in laika

* more small tweaks

* outlier rejection not needed

* fix conflict

* no more gpslocation

* update test

* refactor to laika

* runs again

* Update ref
old-commit-hash: fd3b8a3d7511ad3d7c5aa0b82a1e2c28505e5a7f
2023-08-21 22:51:02 -07:00
Kacper Rączy c11ead32d6 locationd: initial value for gps_std_factor (#28533)
* setup_gps method

* Add LocalizerGnssSource

* slight refactor

* make it more readable

* Move gnss_source initialization to configure_gnss_souce

* Add gps_variance_factor, gps_vertical_variance_factor and gps_time_offset

* add header changes
old-commit-hash: 242e8d2ca879665a0dbbf49ea291b86d4f62461d
2023-06-13 16:12:53 -07:00
Shane Smiskol c8cf77b7a7 locationd: log time to first fix (#27990)
* locationd ttff

* log time to first fix

* rename

* max it like laikad

* Update selfdrive/locationd/locationd.cc

* Update ref_commit

* Log when gpsOK first becomes true

* don't forget to update current time!

* stash

* make it deterministic (no proc replay cur time)

* Update ref_commit

* rename to make this clear
old-commit-hash: 03eb02906d9f43799fc93f71ef32331bcf090157
2023-04-21 16:15:13 -07:00
Harald Schäfer f6e3dc289c Locationd qcom retune (#27739)
old-commit-hash: eca3838237463fe34c6abd0e6592a935008d8ff6
2023-03-29 16:35:30 -07:00
Adeeb Shihadeh 47d30174d3 sensord: move to system/ (#27531)
* sensord: move to system/

* add gitignore to releaes files
old-commit-hash: 6f40f0d4427f4238c3939a64d1d6baa7d77f1ecc
2023-03-08 10:56:54 -08:00
Kurt Nistelberger 9570336e6c Laikad: set active (#26850)
* laikad update, renaming

* update locationd

* fix naming

* address PR comments

* upsi

* .

* draft to fix replay

* fix process relay to allow no response for messages

* final fix for process replay

* .

* bump cereal

* update process replay ref commit

* reduce wait time

* .

* last ref change

* move laikad helpers to laika

* .

* fix ublox test

* update refs

* add proper qcom replay support

* fix gnss support if both is available

* update refs

* remove left over

* revert laikad msg

* move laika back to master

* init

* fix gps valid flag

* change time

* add gnss to ignore

* remove gps_valid flag

* .

* adopt orientation reset threshold

* .

* update laikad

* .

* fix stanstill KF resets

* test orienation reset count

* update laika

* bump cereal

* fix process replay

* update laika repo

* remove handle gps

* add extra logging for cache

* .

* add more log

* .

* .

* update laika

* dont remove gps code

* inc min satellite count

* update magic vals and add acc drop

* update laika

* upsi

* rem

* bump laika

* use nav and correct

* more fixes

* use sftp

* No more glonass

* Revert "No more glonass"

This reverts commit a76124da50a1e25f423ad1137c7a046e1d57811d.

* nump laika

* back support old ephemeris cache

* add health to ephemeris message

* bump laika

* remove print

* fix laikad tests

* clean

* remove extra log

* bump laika

* inc timeout for plotjuggler build

* rem cache clear

* .

* enable gps after checks

Co-authored-by: Kurt Nistelberger <kurt.nistelberger@gmail.com>
Co-authored-by: Bruce Wayne <harald.the.engineer@gmail.com>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 88423e25df8bfbd8e6a3275eb086f468cf9a59f1
2023-01-13 11:37:38 -08:00
Kurt Nistelberger c469ee2f6c Laikad preperation (#26800)
* 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: 981532f0c32f58e0ba4675fe3b066d7c6d0d9a8e
2022-12-29 16:56:35 -08:00
Vivek Aithal dd16344a1b [locationd] Add input checks (#26460)
* add input checks with same decay as reset_tracker

* add observation timings check

* typo

* bugfix

* improve offline locationd visibility

* sbugfix offline lld

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: fbf2f3816b18321ed921cf03042327134be68edb
2022-11-14 15:02:26 -08:00
Kurt Nistelberger 890f7ffd80 locationd: add gps sanity check for quectel gps (#26352)
* update check

* .

* .

* remove gps kf time check for gps ok

* upsi

* dont use gps_mode

* update refs

* Update selfdrive/locationd/locationd.cc

Co-authored-by: Shane Smiskol <shane@smiskol.com>

Co-authored-by: Kurt Nistelberger <kurt.nistelberger@gmail.com>
Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: aebb08e10542758c458c3abb219f8b57485e0b61
2022-11-03 23:43:30 -07:00
HaraldSchafer eac9ec1570 locationd: Fix GPS sensor times with fixed offsets (#25920)
* Rewind to qcom time

* Fix test

* Typo

* init unix_time fix

* add gps sensor_time_offsets

* remove all clocks code and add todo

* :emove clocks in unit test

* update refs

* update refs

Co-authored-by: nuwandavek <vivekaithal44@gmail.com>
old-commit-hash: b3324418034fcf09123b614ee2429a4e5bc9d7a5
2022-10-12 17:47:30 -07:00
Kurt Nistelberger fb06d2769f Sensor events splitup (#25714)
* PoC of reading sensors via interrupts instead of polling

* add Gyro and draft for magn

* add more functionality to gpio.cc

* change LSM gyro to interrupt

* resolve rebase conflict

* update BMX accel interrupt impl

* add interrupt collector thread to fetch in parallel

* change get_event interface to return true on successful read

* update BMX gyro interrupt impl

* update gpio.h/.cc according to comments

* address comments, rename Edgetype enum

* Edgetype to EdgeType

* update sensor interrupt interface

* add error handling, and read fd on trigger

* avoid sending empty messages

* fix build

* use gpiochip

* less diff

* gpiochip on both edges, but skip falling edge if rising edge is detected

* init last_ts with 0

* update sensord testcases

* update sensord testsweet

* test for pipeline

* readd with_process

* add null check

* move tests update to seperate PR

* sensord: improve test coverage (#25683)

* update sensord-interrupt testsweet

* address review comments

* inc stddev threshold

* fix format string

* add version 0 check again

* relax strictness after c3 with bmx tests

* relax strictness after tests

Co-authored-by: Kurt Nistelberger <kurt.nistelberger@gmail.com>

* address PR comments

* fix typo

* remove 4ms limit, and skip first 0.5sec of data

* revert disable_interuppt change to destructor

* fix and remove timing skip

* make gpiochip generic

* sensord port

* change from sensorEvents to separated events

* fix gyro usage

* add splitted sensor tests

* modify debug script sensor_data_to_hist.py

* refactor get_event interface to remove sensorEvent message type

* update locationd to non sensorEvent usage

* tmp commit

* fix replay

* fix accelerometer type

* fix sensor to hist debug script

* update sensord tests to split events

* remove rebase artifacts

* port test_sensord.py

* small clean up

* change cereal to sensorEvents-splitup branch

* upate sensorEvents in regen

* fix route generation for splitted sensor events

* regen cleanUp from sensorEvents change

* .

* remove light and temp from locationd

* add generic init delay per sensor

* .

* update routes

* move bmx gyro/accel to its own channel

* adopt sensor tests to bmx channel

* remove rebase artifacts

* fix sensord test

* handle bmx not present

* add bmx sockets to regen

* .

* .

* code cleanUp

* .

* address PR comments

* address PR comments

* address PR comments

* lsm clean up

* readd sensorEvents

* rever regen.py

* .

* update replay refs

* move channels

* fix artifact

* bump cereal

* update refs

* fix timing issue

Co-authored-by: Bruce Wayne <batman@workstation-eu-intern2.eu.local>
Co-authored-by: gast04 <kurt.nistelberger@gmail.com>
Co-authored-by: Willem Melching <willem.melching@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 29d3ed2ce63a65f793dc0ecb553180a0d0fba03e
2022-09-29 14:31:54 -07:00
Adeeb Shihadeh f4675fc260 Merge common/ and selfdrive/common (#24556)
* Merge common/ and selfdrive/common

* fix that

* fix version

* fix unit tests
old-commit-hash: cb8885cffb313bea258c012c3026461a22bf8135
2022-05-18 14:11:57 -07:00
HaraldSchafer b0444b39d2 Body cleanup + 100Hz locationd (#24168)
* use PID

* 100hz on the branch

* Better defaults

* fix int clip

* More cleanup

* Fix pid comments

* only notcar gets 100hz

* cleanup

* fix tests

* ignore

* update refs

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: f54e724b5dd8b95e03dd4f46676c5e854bafaea6
2022-04-09 15:22:29 -07:00
Vivek Aithal 069fe1a749 locationd: Commissue fix (#23951)
* check allAliveAndValid only at filter init

* revert cereal and bugfix test

* rename filterValid to filterInitialized

* bump cereal

* correct err

* update refs
old-commit-hash: dfc12926144df063fb6bd20a97bb4390a4f5a4ef
2022-03-15 14:40:29 -07:00
Vivek Aithal d537897e9a locationd: Fix Nav localization reliability (#22959)
* modify reset logic

* remove debug statements

* use ecef pos and vel covariances during reset

* reset orientations initialized to 0,0,GPSbearing

* refactor nav fix

* add fake gps observations to control ecef pos and ecef vel std

* replace fake_P with individual fake cov

* set gps mode flag

* add gps invalid flag names

* update refs

* more accurate gps accuracy check + update refs
old-commit-hash: 8b6a14758329eb977beb5cba73403dd113495aeb
2021-11-24 15:24:25 -08:00
Vivek Aithal 80600a77dc expose filter internal states and stds (#22564)
old-commit-hash: f1546e6552fdf51b99cb44eafff5f88b1de536f1
2021-10-14 19:44:31 -07:00
HaraldSchafer d1c5e054d0 Better localizer unstable alert (#21660)
* use canonical language

* filter out when gps signal is flaky

* Update selfdrive/locationd/locationd.cc

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

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 049a1bca34c74ea1fae473386e8bea62f1b3041c
2021-07-20 19:20:00 -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
HaraldSchafer f0f36a0a06 Many localizer resets alert (#21116)
* add excessive reset

* add alert

* add event
old-commit-hash: 1c926d23da0c73ceb246ca6d61db6ed1c48a1ab9
2021-06-03 09:26:53 -07:00
HaraldSchafer c0c009bba9 Filter only initialized if up for 1sec (#20940)
* add time since reset check

* fix time since reset

* update ref

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 2f80775b50174070ab463896e73bfef827d00516
2021-05-18 11:12:02 -07:00
HaraldSchafer 420090ffea time checks in locationd (#20880)
* time checks

* no debug print

* correct timestamps in test

* non nan
old-commit-hash: 62e22e7eac898216b11fc0ae364a3a9905df6699
2021-05-11 15:57:13 -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
Willem Melching b4263a43fc Locationd 100 Hz (#20816)
* fix std transform

* 100Hz

* new ref

* no more decimation

* clean up confusing maths

* static typing

* Revert "static typing"

This reverts commit 23d87337de648e629fbd35dd8c04a740bbefca47.

* 100Hz costs more

* move normalization into core

* add quat idxs

* add big eps

* this is not safe in the filter

* more sensible

* updates to rednose

* not tested

* normalize in python too

* update rednose

* nan check

* check for infs too

* all should be finite

* update ref

* rednose pr now in master

Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
old-commit-hash: e9db5723ef348954118643501a92cf0715402fea
2021-05-06 11:01:58 +02:00
Adeeb Shihadeh 532d19427c bump cereal
old-commit-hash: 8a280fbb8eb433fbfe0fc43254c9cbdaceedbab6
2021-05-03 20:47:11 -07:00
Dean Lee 9a827fea20 c++ cleanup: standardize file extensions to .cc and .h (#20800)
* c++ cleanup: standardize file extensions to .cc and .h

* cleanup files_common
old-commit-hash: 81491dc57f5080c602a0be58dd5f9feba2fa31b9
2021-05-03 11:53:11 +02:00
HaraldSchafer fd28911282 Revert "Locationd 100hz (#20759)" (#20797)
* Revert "Locationd 100hz (#20759)"

This reverts commit 995b89e6424a7b717fb2c725a64d617fb24a1a85.

* new ref
old-commit-hash: daecf4247be74fbe56ae84b4c6585c4c8cbc49b5
2021-05-02 15:06:34 -07:00
HaraldSchafer cbc2cb24b7 Locationd 100hz (#20759)
* fix std transform

* 100Hz

* new ref

* no more decimation

* clean up confusing maths

* static typing

* Revert "static typing"

This reverts commit 23d87337de648e629fbd35dd8c04a740bbefca47.

* 100Hz costs more
old-commit-hash: 333313cf0e6819767d8dcc4a55bea70f0354579f
2021-04-28 15:29:14 -07:00
Joost Wooning 5b31cc281c compare carspeed float to epsilon instead of zero (#20714)
* compare carspeed float to epsilon instead of zero

* update ref

* add ref commit again

Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
old-commit-hash: d2a2ccfee45fdf94425354efbfd17fabce4cb5e7
2021-04-22 17:55:41 -07:00
Joost Wooning c0ac9bb63c convert locationd to c++ (#20622)
* live_kf to c++

* first locationd code

* Running in process_replay

* locationd handle cam_odo and live_calib

* log event handlers

* working message receiving

* compiling message sending

* correctly sending some messages

* correct receiving and sending

* update ref_commit with some all_alive_and_valid being false, minor fixes

* fix std abs

* linking on device fix

* fix cpu usage test

* generate kf constants and defines

* fix replay test

* replay without acks, cleanup

* operate on bytearray messages

* cleanup

* send msg fix

* small sleep, less flaky test

* remove python locationd

* review feedback

* bump rednose
old-commit-hash: 3420707ad58b060333246eb43db09474bb336d39
2021-04-20 11:56:43 +02:00