Commit Graph

136 Commits

Author SHA1 Message Date
Dean Lee
57b1b4c456 loggerd: split bootlog to a separate program (#19831)
* bootlog

* blank lines

* move file_exists to util.h

* src = ['loggerd.cc']

* log_init_data

* Revert "src = ['loggerd.cc']"

This reverts commit 18a587023d75b3a3a54f1ceaf9cb31a51640a067.

* add bootlog to .gitignore

* use s->has_qlog instead of true

* add blank lines & remove extern C
old-commit-hash: f973c56a36
2021-01-19 12:16:12 -08:00
Adeeb Shihadeh
9e1f524965 On-device onroad CI test (#19792)
* start onroad test

* cpu usage test works

* nice print

* run in jenkins

* pretty reliable

* bump loggerd cpu usgae

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 5a9769020d
2021-01-16 18:11:53 -08:00
Dean Lee
c3043515d8 text.c->text.cc (#19734)
old-commit-hash: c5c9b6f712
2021-01-15 13:42:26 -08:00
Dean Lee
74dc639515 convert glutil.c to gltuil.cc & add class GLShader (#19720)
* c++ glutil

* function getUniformLocation

* rebase master
old-commit-hash: cef469cbed
2021-01-12 15:43:34 +01:00
Adeeb Shihadeh
9909060b4d Video Encoder abstraction (#19729)
old-commit-hash: a1c7f19fe4
2021-01-12 00:03:31 -08:00
Dean Lee
4c1919f41e merge utilpp.h into util.h (#19710)
old-commit-hash: 595830135b
2021-01-10 14:57:32 -08:00
Willem Melching
3f950832b9 VisionIPC 2.0 (#19641)
* Squashed vipc

* Update release files

* Remove else

* add visionipc to release files

* use poller in vipc receive

* opencl framework instead of lib on macos

* Fix camera webcam

* Fix opencl on mac in ui

* more webcam fixes

* typo in ui sconsfile

* Use cur_yuv_buf

* visionbuf c++ class

* Camera qcom was still using visionbuf_allocate

* Turn loggerd back on

* fix snapshot

* No build needed

* update test camerad

* no more release callback

* make encoder c++

* Revert "no more release callback"

This reverts commit e5707b07002fee665d0483d90713154efc2d70d4.

* fix exit handlers

* No need to check errno

* move release callback call

* s/VIPCBufExtra/VisionIpcBufExtra/g

* use non blocking connect

* ui use non blocking connect

* Lower condition variable wait time

* Snapshot cleanup

* bump cereal

* bump cereal
old-commit-hash: fb496c692a
2021-01-08 14:54:25 +01:00
Adeeb Shihadeh
1c2560352c loggerd cleanup (#19668)
old-commit-hash: 206d072bb4
2021-01-07 23:08:40 -08:00
Adeeb Shihadeh
5bbe4f3d52 manager tests + make all processes exit cleanly (#19595)
* manager tests

* logcatd exits cleanly

* sigint

* boardd

* multiple dbus connections hangs for some reason

* clocksd proclogd

* network type from thermal

* fix tests

* fix android logcatd

* fix mac

* fix mac proclogd

* move on device athena tests

* build first

* build first

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: ffa7e0cbdb
2020-12-29 22:32:03 -08:00
Adeeb Shihadeh
0f22f60170 small ubloxd cleanup
old-commit-hash: c131f9db57
2020-12-19 15:05:40 -08:00
Adeeb Shihadeh
349429836c agnos updater (#2600)
* agnos updater

* add manifest

* fix path

* get manifest from overlay

* update manifest

* remove merge markers

* add streaming decompressor

* dont need read all

* Unsparsify

* Fix output filename

* Optimization

* cleanup

* Small cleanup

* Read manifest from merged overlay

* Write hash at end of partition

* Sync before writing hash

* Write bytes in file

* add manifest with image sizes

* Fix manifest path

* File was closed already

* Format string

* Put raw hash

* Read hashes in launch script

* update launch script

* should be agnos version

* fix slot

* Make sure we clear the hash

* Verify partition size

* move updated

* Standalone flasher

* Don't rely on ordering

* Get path

* Debug log

* Download agnos

* Info is enough

* update manifest

* Remove f

* Check downloader return code

* Exit on wrong manifest

* Fix typos

* Set pythonpath before hardware init

* move agnos into hardware folder

* remove comments

* Fix abstractmethod

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: b276881fcd
2020-12-18 13:17:12 +01:00
Adeeb Shihadeh
b950cab874 HW abstraction layer (#19530)
* start hw refactor

* move that

* pins

* put that back
old-commit-hash: 8674b023ba
2020-12-16 21:30:23 -08:00
Dean Lee
75e3d20dac convert loadyuv.c to loadyuv.cc (#2754)
old-commit-hash: d6eead25d0
2020-12-12 17:10:51 -08:00
Dean Lee
0066e93b34 covert rgb_to_yuv.c to rgb_to_yuv.cc (#2757)
old-commit-hash: 3d63b3d414
2020-12-12 16:52:15 -08:00
Dean Lee
9be81a6f99 clutil refactor (#2733)
* cleaup clutil.h

* clutil.c -> clutil.cc

* std::hash

* try simplify functions

* using namespace group help functions

* continue

* add function get_platform_info

* continue

* remove caching

* struct CLContext

* std::cout & CL_ERR_TO_STR

* remove CLU_NO_CACHE

* Revert "struct CLContext"

This reverts commit 882e413f227e4c1ba4bb83f956cc67739a189221.

* cl_get_error_string : remove undefied error codes

* replace all printf with std::cout

* util::read_file

* cleanup

* revert CL_ERR_TO_STR

* simplify

* add macro CL_ERR_TO_STR

* cl_get_error_string: fix undeclared errors

* log_size should not +1

* use std::stirng log

* apply review
old-commit-hash: 3c08d0f1f7
2020-12-11 13:05:32 +01:00
Adeeb Shihadeh
fa147c5d6e add wifi to setup (#2604)
* add wifi to setup

* wifi looks better

* move widgets

* this looks ok

* small fixups

* fix relase tests
old-commit-hash: 6a2678aae7
2020-11-30 22:35:17 -08:00
Adeeb Shihadeh
0c87036b54 fix release build
old-commit-hash: db0d4cdd86
2020-11-26 16:15:59 -08:00
Adeeb Shihadeh
5447224a0b bump cereal again
old-commit-hash: 15456ad4a4
2020-11-25 17:25:06 -08:00
Adeeb Shihadeh
86bc11f219 fix double awk
old-commit-hash: ce8a040cc2
2020-11-24 13:30:11 -08:00
Adeeb Shihadeh
24a4a30a61 fix release version tag
old-commit-hash: 51919ff2ff
2020-11-24 13:13:09 -08:00
Willem Melching
215918c7d4 put hash in version (#2607)
old-commit-hash: 6c49c6a9f1
2020-11-23 21:32:16 +01: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: 08846b5c0e
2020-11-11 20:31:46 -08:00
grekiki
0b902a02c1 Scons builder for cython extensions (#2485)
* complie boardd without python

* not good, but don't want to lose the file, because it works

* clean a bit

* update dbc

* should build on CI

* not good, but don't want to lose the file, because it works

* clean a bit

* should build on CI

* remove unneeded path

* reorder paths

* reduce diff

* and now it works?!

* ... should work in CI

* add kj, 30% chance to fix macos

* pydebug

* new way to find path

* fix :)

* tested

* sanity check

* repl. MacOS flags

* hope it works

* need more logs

* need more logs2

* test if it works

* should work on CI

* correct python file

* should not work

* cleanup

* real cleanup

* more removals

* 50% of file

* transformations

* fixed a hardcoded variable

* more logs

* simpl.

* kalman

* all donw if it passes tests

* cleanup

* reduce code by 20 lines if this works

* fix bugs

* cleanup

* SharedLibrary

* cleanup

* ...

* remove unused

* CI fix maybe?

* add more valid path

* more logs

* ...:

* fix webcam CI

* remove WError flag

* deprecated is not an error

* more Wno things

* reduce diff, add Wno to env

* don't import nonexistent stuff

* SharedLibrary v2

* less custom env

* renaming, remove SharedLibs

* pack libs in envCython

* experiment

* better docker caching

* whitespace

* more docker caching

* improvement

* improvements

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 9529764549
2020-11-11 21:14:51 +01:00
Willem Melching
fc0b6f099f Revert "convert mat.h to a c++ header file (#2499)"
This reverts commit 607866bb60ba1c69c6f777082c5ea787e895a251.

old-commit-hash: f2c8a6122d
2020-11-09 01:41:36 -08:00
Dean Lee
13a25b9e27 convert mat.h to a c++ header file (#2499)
old-commit-hash: 519c043a63
2020-11-09 01:19:09 -08:00
Adeeb Shihadeh
3a05f06ced Qt spinner (#2494)
* move android spinner

* qt spinner

* rotation

* nothing by default

* spin spin

* fix rotate

* style

* spinner for all

* -2

* unused
old-commit-hash: 6c86afee16
2020-11-06 18:44:04 -08:00
Adeeb Shihadeh
57de41eae5 Qt text window (#2489)
* qt text window

* auto size

* real text

* this is cleaner

* fix android build

* exit on pc

* tici fixes
old-commit-hash: 68ba1649b9
2020-11-06 12:05:24 -08:00
Adeeb Shihadeh
09034a6147 Car Port: Lexus NX300 (#2481)
* Adding 2018 Lexus NX 300

* adding test model

* Update README.md

adding lexus nx 300 to readme

* update route

* add nx dbc to release files

* fix readme

* add to release notes

Co-authored-by: matt12eagles <matt12eagles@gmail.com>
old-commit-hash: 4d0745504b
2020-11-03 15:43:52 -08:00
Adeeb Shihadeh
89c511b32b Qt offroad (#2451)
old-commit-hash: 06400af09f
2020-10-30 17:03:51 -07:00
Chris Souers
747de9f80f Add 2020 Acura RDX (#1557)
Update CAN Fingerprint

Update files_common

Update test_car_models.py
old-commit-hash: dc8b5538e8
2020-10-18 19:03:04 -07:00
Adeeb Shihadeh
a0845d8301 NEOS 15 (#2084)
* doze

* need a new apk

* new build

* neos 15 part 1

* new build to re-enable display control for ft8716

* production image
old-commit-hash: f9a5f71bf5
2020-10-18 17:03:28 -07:00
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