Commit Graph

105 Commits

Author SHA1 Message Date
ZwX1616 dae628002f Clean up and test camerad refactor (#2310)
* refactor

add function get_camerabuf_by_type

remove cl_free

use camera_id

move front stuff into frontview_thread

bigger refactor

more

typo

rename camerabuf *c to *b

cleanup header files

remove wideview_thread

camera_qcom.c to c++

fix SConscript

camera_process_buf

space

sendrgb same with before

do autoexposure in processing_thread

correct sendrgb

add camera_common.cc

move yuv_transform to CameraBuf

* use C to keep consitent

* rebase master

* rebase master

* continue refactor

* refactor all camera related data&function out of main

 done

* cleanup

* -use buf.rgb_width&height

* remoe ,

* rebase master

* remove unused std::vector

* add func common_camera_process_front

* fix max

* fix sendrgb

* less crap being logged

* fix indents

* add back thumbnails

* thumbnail fixed on tici

* junk junk junk

* unify api

* fix ptr ref

* lol!

* cleanup

* more simplified

* typos

* remove terminate

* use standard polling

* ops_thread refactor, too much code!

* fix build

* ok

* assert

* listen

* incl more

* wq!

* fix more build

* macos

* fix exp targets

* front is different

* const

* bye

* remath

* remove irrelevant

* do ops in a thread

* fix init

* return null

* QCOM2 ops

* qcom2 build

* missing comma

Co-authored-by: deanlee <deanlee3@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 6b020241c9
2020-10-16 21:58:05 -07: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: 2e182e5c57
2020-10-13 16:23:23 +02:00
ZwX1616 9589d518a2 Upgrade to SNPE 1.41.0 (#2285)
* snpe 1.41.0

* cleanup

* unignored

* where is my symphony

* add snpe/dsp to release files

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 80515576d5
2020-10-08 17:18:01 -07:00
grekiki 079f409e58 Uploader speedup (#2214)
* use caching for getxattr

* fix some git issues

* Scheduled network checks

* attempt optimization

* Delete speed_test.py

* Style fixes

* Fix styling

* fix spaces

* fix spaces

* fix naming

* Update uploader.py

* Update mark_all_uploaded.py

* Add file to release

* Update selfdrive/loggerd/tools/mark_all_uploaded.py

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

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: cf46de13d2
2020-09-22 11:37:24 +02:00
Adeeb Shihadeh 86bb0caf66 Realtime shield (#2194)
* cpu 3 shield

* set priority before affinity

* add to release files

* only run on android
old-commit-hash: b341fdc644
2020-09-17 15:49:14 -07:00
Willem Melching d455516765 Tici hardware abstraction layer (#2183)
* rename android hardware

* add tici class

* elif

* read correct serial number

* Update release files

* Get IMEI

* Refactor AT command

* move get_cmdline into base class

* Remove unused import

* Small cleanup
old-commit-hash: c90cb1b529
2020-09-17 13:36:42 +02:00
Adeeb Shihadeh 4d293f610d Revert "don't ship QT UI in release", needed by release CI test for now
This reverts commit c69553564e616477ffdcc2a57aef3304cd1f49c6.

old-commit-hash: dd6a2b8dc2
2020-09-11 13:10:02 -07:00
Adeeb Shihadeh 5fcdbef4cd don't ship QT UI in release
old-commit-hash: bcd79669b0
2020-09-11 12:11:47 -07:00
Adeeb Shihadeh 64a9728f2e Reduce paramsd and calibrationd CPU usage (#2119)
* reduce paramsd cpu

* reduce calibrationd cpu usage

* calibration_helpers was mostly unused

* more calibration cleanup

* update refs

* fix thresholds in CPU test
old-commit-hash: e0004d0981
2020-09-10 12:16:29 -07:00
Adeeb Shihadeh 0ae5e7403e QT UI: sounds (#2078)
* move android into own dir

* fix name

* maybe this works? qt ui doesn't work on mac

* fix that

* pc sound works

* fix pc build

* lowercase

* that needs to be real_arch

* split into classes

* fix typo in lib

* Fix cycle alerts

* Add qt multimedia libs to install scripts

* Add ui/android folder

* Fix android build

* Raise exception if sound init fails

* add missing return

Co-authored-by: Willem Melching <willem.melching@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: acd1bde496
2020-09-09 19:04:28 +02:00
Willem Melching 55c441b6dd Systemd logcatd (#2085)
* Systemd logcatd infrastructure

* This should work

* Cleanup

* Split

* More compact and cleanup

* Add to ubuntu setup package list

* Run logcatd on all non pc platforms
old-commit-hash: 5782efe3ae
2020-08-26 17:09:23 +02:00
Willem Melching 16fe1bb2ad Hardware abstraction class (#2080)
* hardware abstraction class

* De Morgan

* Rename pc hardware class

* Fix sound card in controlsd

* Pc get sim info

* fix hardware in test

* two more

* No more random imei on android

* no randomness on android

* Need to return something that looks like imei for registration to work

* Return proper network strength

* Unused import

* Bug fixes + gpsd is only android
old-commit-hash: c7152d5419
2020-08-26 14:57:17 +02:00
robbederks c09e7f04e7 Tici sensord (#2072)
* tici sensord: WIP

* add sensor constants

* rename files

* base class

* init sensors

* publish something

* dont leak memory

* try reading from accel

* Accel works

* add time and sensor source

* Update release files

* If we want low BW we want 125hz

* this should run gyro as well

* add filter on gyro

* also filter accel data

* Add i2c files

* cast makes macos unhappy

* Same outputs as android sensord

Co-authored-by: Tici <robbe@comma.ai>
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 622e42d504
2020-08-26 11:30:30 +02:00
Willem Melching 22e0a2474a Pandad: turn on panda power (#2073)
* pandad turn on panda power

* Add gpio.py

* needs bytes

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 6bb2630eba
2020-08-24 16:56:29 +02:00
Willem Melching 473fb11d34 Qt ui for PC (#2023)
* qt ui boilerplate

* this kinda works

* cleanup

* render inside other widget

* cleanup

* more cleanup

* Not needed

* Handle click

* Draw at 20Hz

* create paint.hpp

* move stuff around

* update sidebar

* Draw vision

* this works again

* add clickable settings button

* Only collapse sidebar when started

* always use qt on linux

* fix width

* scrollable area

* talk to NetworkManager

* code to add a connection

* params toggles

* small cleanup

* add qt5 to dockerfile

* Qt on mac

* Add qt to release files

* fix macos build

* nore more ifdefs needed

* add icons

* make a bit nicer

* Hide scrollbar

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: e115c51452
2020-08-20 17:16:44 +02:00
Willem Melching 938ce91d02 Pigeon abstraction layer (#1977)
* pigeon abstraction layer

* Fix string literals

* more generic pigeon class

* add TTYpigon

* nicer tty error handling

* close tty fd on pigeon delete

* pigeon receive return std::string

* use sizeof

* max receive size to prevent infinite loop

* remove namespace

* add unistd include for usleep

* fix is pigeon

* Handle tty error in opening

* fix printing binary strings with dump.py

* fix pigeon build on macos

* Handle errors seperately

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 502cc665e0
2020-08-13 10:10:50 +02:00
Adeeb Shihadeh e25063a0b3 add launch_env.sh to release files
old-commit-hash: 9bc0b350fd
2020-08-12 17:34:15 -07:00
martinl 6a000279ad Add preglobal Subaru Forester and Outback (#1993)
* Add preglobal Forester and Outback

* Tests and values cleanup

* Update units in carstate

* Remove ()

* Add OUTBACK_PREGLOBAL_2018 to non_tested_cars

* Add replay route for OUTBACK_PREGLOBAL_2018
old-commit-hash: c9adc4900b
2020-08-10 12:31:40 -07:00
martinl 0aeae7d81e Subaru pre-global: add support for Subaru Legacy 2015-18 (#1805)
* Add support for Subaru Legacy 2015-18

* syntax fix

* Add Legacy 2018 FPv1

* Add Subaru Ascent from upstream

* Use GLOBAL_CAR and LEGACY_CAR lists

* Change LEGACY_2015 to LEGACY_PREGLOBAL

* Add LEGACY_CAR to carstate

* Change LEGACY_2015 to LEGACY_PREGLOBAL in test_car_models

* Add missing SafetyModel to Ascent

* Use GLOBAL_CAR and LEGACY_CAR to set safetyModel

* Change LEGACY_CAR to PREGLOBAL_CARS, remove GLOBAL_CAR

* Fix PREGLOBAL_CARS in carstate and subarucan

* Minor cleanups

* Add accelCruise button event

* Change Preglobal Driver Torque limit to match Global

* Match comments to upstream

* Use Steer_Warning and Steer_Error_1 only for Global

* Change mph units to match upstream values

* Increase Preglobal brakePressed  threshold to 2

* Add DashcamOnly to LEGACY_PREGLOBAL

* Fix typo in variable name

* Update README, add create_preglobal_steering_control

* cleanup carcontroller

* cleanup values

* missed that one

* Update STEER_STEP

* Update STEER_MAX

* Add preglobal signal frequency checks

* remove PREGLOBAL_CARS from subarucan

* Remove whitespace

* Use common frequency checks

* cleanup carstate

* cleanup subarucan

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: e37b8e5d56
2020-08-06 21:55:13 -07:00
Adeeb Shihadeh 069bd4061e Driver view refactor (#1869)
* quick driver view cleanup

* send at correct freq

* let manager handle that

* don't block starting on driver view

* fix UI hacks

* ui cleanup

* move driver view functionality into dmonitoringd

* dmonitoring thresholds shouldnt be in UI

* remove driver view file from release files

* timeout on frontview

* bump cereal
old-commit-hash: a7ee2a53a8
2020-08-01 17:26:35 -07:00
Willem Melching 562394e2ae Panda abstraction layer in boardd (#1919)
* start on panda abstraction layer

* handle bulk transfer in library

* Safety model abstraction

* Abstract hw type into library

* Handle disconnect

* RTC stuff

* Fan control

* Health

* Panda fw version

* Read serial

* Power saving

* Power mode

* Cleanup pigeon thread init

* Rename safety setter variable name

* Remove comment

* Unused global cleanup

* malloc -> new

* whitespace

* Use std::thread

* Use std::thread for safety setter

* Cleanup igntion_last global

* Heartbeat

* logd

* More global cleanup

* Put back sleep

* ir pwr

* Always broadcast health

* init struct with zeroes

* Fix eon build

* fix race condition

* fix Adeebs comments

* abstract can send and receive
old-commit-hash: 80acb32825
2020-07-31 23:14:31 +02:00
Adeeb Shihadeh 011c336047 Improve on-device CI reliability (#1922)
old-commit-hash: 90fc1c6028
2020-07-25 02:12:19 -07:00
Willem Melching 488bbcaaa4 remove old params learner (#1918)
old-commit-hash: e0e7c7486d
2020-07-24 18:43:17 +02:00
martinl 54e4939168 Subaru Global generated dbc and new signals (#1908)
* Change carstate signals to use feature-subaru-long dbc

* Add Conventional_Cruise signal to carstate

* Fix Conventional_Cruise signal source

* Use Cruise_Cancel signal in subarucan

* switch to subaru-global-2020 opendbc branch

* Update release file

* bump opendbc

* switch panda to subaru-global-carstate branch

* bump panda

* bump opendbc

* revert submodules for upstream PR

* switch panda and opendbc to upstream

* bump opendbc
old-commit-hash: a086f52881
2020-07-23 12:28:23 -07:00
Greg Hogan f646a64cce Honda CRV BSM alert from B-CAN (#1867)
old-commit-hash: 825821f010
2020-07-21 17:41:45 +02:00
Adeeb Shihadeh c4f1ae4ced fix release date
old-commit-hash: eebb941b5a
2020-07-16 14:44:58 -07:00
Adeeb Shihadeh 246815820f bump opendbc
old-commit-hash: 9170ffcad4
2020-07-08 14:10:05 -07:00
Adeeb Shihadeh 617c6fa84c use special 'eon-build' device for release build
old-commit-hash: 65d800c4f5
2020-07-07 16:41:04 -07:00
Adeeb Shihadeh 44afc4ae3c Build release2 and dashcam in CI (#1834)
* start building release2 in CI

* build script

* bring over changes from test branch

* fix build release test

* remove references to test branches

* ucnomment push

* fix duplicate remove

* two commits for dashcam

* need the key
old-commit-hash: c715661656
2020-07-07 14:17:09 -07:00
Adeeb Shihadeh b4978bafc9 Revert "build script", should've been on branch
This reverts commit 66c6a7a32a4301a4599b119098f45da04dddee46.

old-commit-hash: 6b942c94de
2020-07-06 20:16:16 -07:00
Adeeb Shihadeh 466ed6ac10 build script
old-commit-hash: 975ab40786
2020-07-06 20:15:38 -07:00
Adeeb Shihadeh 020258a485 remove Jenkinsfile from release files
old-commit-hash: 88f6fad392
2020-07-05 18:04:25 -07:00
Adeeb Shihadeh 0d79150606 Sound test (#1820)
* WIP sound test

* it does something

* refactor

* phone only

* update release files

* test sound card init

* add to CI

* check writes

* increase time

* unused

* only build cereal

* small tolerance

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: f1afb3e3ae
2020-07-05 17:56:24 -07:00
Adeeb Shihadeh 4f4c83a0c3 remove manager_helpers.py after CPU usage test refactor
old-commit-hash: b23d7950e3
2020-07-04 00:10:58 -07:00
Adeeb Shihadeh 80024996e2 increase jenkins timeout
old-commit-hash: 3f57b7ee76
2020-07-03 20:34:31 -07:00
Adeeb Shihadeh 0a37fc0565 phone CI: pull over https, push over ssh
old-commit-hash: ba20e91d11
2020-07-03 19:40:39 -07:00
Adeeb Shihadeh de457fddc2 On-device CI framework (#1784)
* let's see if this works

* fix build_release actions job

* does jenkins like this config

* separate jenkinsfile for release build

* fix devel build

* devel build should work

* always pass that for now

* run modeld replay

* release2 build will be a separate PR

* pass env to phone shell

* force checkout

* run on real jenkins eons

* add timeout

* rsync

* more timeout

* trailing slash

* fix branch detection

* debug

* not sure why paramiko doesn't pass it through

* newline

* CI_PUSH

* still not passing it

* test branch

* should be good now
old-commit-hash: 32f03ec8a5
2020-07-03 19:12:05 -07:00
Adeeb Shihadeh f74865bedf Refactor CPU usage test (#1802)
* pull CPU usage test out of manager

* remove that

* add to release files

* cleanup

* executable

* this should work

* check if car started procs are running

* debug

* add min cpu usage

* remove debug prints

* adjust min cpu threshold

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 6db7fa8c03
2020-07-03 15:40:13 -07:00
Adeeb Shihadeh 414a3400bd remove duplicate key
old-commit-hash: 3c48b5a3ed
2020-06-29 15:05:47 -07:00
Adeeb Shihadeh 673d208346 actually remove all old files
old-commit-hash: 38b5f25da2
2020-06-25 15:39:35 -07:00
Adeeb Shihadeh 4ae4575c39 add upate_kernel.json to release files
old-commit-hash: 6cb2d83253
2020-06-22 11:32:48 -07:00
Adeeb Shihadeh 309bb796cd release2 cleanup (#1703)
* cleanup intermediate files

* test car interfaces
old-commit-hash: a1d4dd3adc
2020-06-19 13:46:24 -07:00
Adeeb Shihadeh 16b4216a40 fix 'openpilot' symlink being created in release branches
old-commit-hash: 9b6864b31a
2020-06-18 14:23:11 -07:00
Adeeb Shihadeh 58c4798332 Remove logentries from pyextra (#1721)
* remove logentries from pyextra

* update release files

* gitignore
old-commit-hash: bbb6fa1172
2020-06-18 11:48:28 -07:00
Dean Lee dffb9800ad Sound refactor (#1589)
* Soud refactor

* remove files from  files_common

* add timeout to set_volumn

* add param volume to init

* done

* test.cc

* fix typo

* add repeat param instead of loop

* revert submodule

* add member function currentSound

* remove function create_player from class member

* fix build error

fix repeat

* rename CHECK_RESULT to ReturnOnError

* set currentSound_ before posible err

* use std::map to initialize sound table

cleanup

cleanup

cleanup

fix bug in stop

change paramater name

* done

* remove function CreatePlayer, create player in init()

* resolve conflict

* remove sound test

* rebase

* remove whitespace

* Apply great review suggestion

* use player's SLVolumeItf interface to set volume

* use float

* leave the volume control the way it is
old-commit-hash: 8cacc14b31
2020-06-15 15:26:38 -07:00
Willem Melching 76a465e0ec Write orientation & transform in C++ (#1637)
* locationd at 20hz

* update ref

* bump cereal

* dont modify global state

* add scons files

* ecef2geodetic and geodetic2ecef

* Finish local coords class

* Add header file

* Add orientation.cc

* cleanup

* Add functions to header file

* Add cython wrapper

* y u no work?

* This passes the tests

* test rot2quat and quat2rot

* Teste euler2rot and rot2euler

* rot_matrix

* test ecef_euler_from_ned and ned_euler_from_ecef

* add benchmark

* Add test

* Consistent newlines

* no more radians supported in geodetic

* test localcoord single

* test localcoord single

* all tests pass

* Unused import

* Add alternate namings

* Add source for formulas

* no explicit tests needed

* remove benchmark

* Add release files

* Typo

* Remove print statement

* no access to raw transform matrix

* temporarily add tolerance

* handcode quat2euler

* update ref
old-commit-hash: c18e7da3c2
2020-06-09 16:44:26 -07:00
Adeeb ea0292d86e Move driver monitoring out of controls (#1642)
* move dmonitoring out of controls

* run monitoring unit tests in CI
old-commit-hash: d4858e5ff5
2020-06-09 13:25:15 -07:00
Adeeb daea932130 Release cleanup (#1649)
* start cleanup

* whitelist submodule release files

* don't need to ship tests

* revert changes to build script

* add those tests back

* fix typo

* whitelist dbcs

* test

* run the right test

* whitelist opendbc/can

* revert that

* add missing dotfiles

* clean up

* ford DBCs

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: c24a7e248a
2020-06-08 14:24:14 -07:00
Adeeb 16c0bc99b2 Remove common/messaging.h (#1635)
* remove common/messaging.h

* release files
old-commit-hash: 7666d99694
2020-06-05 12:46:49 -07:00
Willem Melching ce6dd8d4e9 Model + camerad test (#1622)
* kind of works

* move that

* hack to get camerad to reliably terminate

* not sure why SIGTERM wasn't working before

* compare bytes

* clean up some hacks

* gitignore

* fix that

* WIP

* no reboot

* comparison works

* pretty print

* fix build

* run in jenkins

* python path

* space

* raise timeout

* new eon

* skip the copy

* spinner

* spin less

* update model ref commit

* reenable that

* clean up

* fix jenkinsfile

* parallel

* wrap it in a stage

* fix linter

* better progress

* lower timeout

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 63c8e8439b
2020-06-04 18:57:25 -07:00