Commit Graph

51 Commits

Author SHA1 Message Date
Dean Lee
b9cffac29c boardd: check fw version when connecting (#28823)
* Check fw version when connecting

* apply reviews

* mv to boardd

* don't keep looping

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-07-08 20:06:10 -07:00
Comma Device
78df554217 boardd: only look for new usb pandas 2023-05-25 19:35:57 -07:00
Adeeb Shihadeh
66ff2de0a2 boardd: connect to SPI panda by UID (#27035)
* move list

* connect by serial

* cleanup hw serial

* little more

* rm excessive print

Co-authored-by: Comma Device <device@comma.ai>
2023-01-21 19:42:10 -08:00
Robbe Derks
3136985b95 No more magic for the can chunks (#26861)
* remove magic and add checksum

* add comms reset

* bump submodule
2023-01-13 15:01:55 -08:00
Adeeb Shihadeh
9cc06e9ea6 boardd: misc spi fixes (#26670) 2022-12-02 11:51:25 -08:00
Adeeb Shihadeh
c3e3047080 boardd: cleanup defs from panda (#26628)
* more stuff

* bump pnada
2022-11-29 16:05:46 -08:00
Adeeb Shihadeh
06be96cae2 boardd: prep for SPI + factor out USB (#26356)
* merge origin/spi-panda

* just prep

* boardd: factor out USB comms

* fix those

* add to release files

* little more
2022-11-04 16:36:27 -07:00
Greg Hogan
d5ef6f82e6 add CAN-FD non-ISO mode support (#25947)
CAN FD non-ISO support

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-10-12 15:40:19 -07:00
Igor Biletskyy
53959082e7 boardd: add CAN health to pandaStates (#25800)
* init

* try this

* mistake

* fix

* bump cereal

* make obvious

* fixes

* remove comment

* one helath header

* ..

* preallocate vectors
2022-09-20 12:39:12 -07:00
Adeeb Shihadeh
28cb1897cb USB power mode cleanup (#25619)
* first pass at usb power mode cleanup

* fix build

* a sneaky one

* little more

* fix build

* bump pnada

* remove that

* power monitoring cleanup

* fix tests

* bump submodules
2022-08-31 21:13:53 -07:00
Shane Smiskol
4190d2608a Change safetyParam to uint16_t (#24376)
* bump panda & cereal

* bump panda

* rest of references

* regen TOYOTA with safety param 578, TOYOTA2 with 329

* regen rest of routes

* update ref

* bump cereal
2022-05-02 13:34:31 -07:00
Shane Smiskol
6e62df65d7 Make safetyParam unsigned (#24160)
* bump panda & cereal

* make unsigned in boardd

* update health packet version

bump panda

* fix definition

* bump

* regen TOYOTA2 route

* upload route

* oh, ndog param wasn't being set

* regenerate routes with non-zero safety params

* update refs

* regen routes and update refs

* bump panda

* update refs

* update refs

* bump submodules to master
2022-04-21 00:01:05 -07:00
Shane Smiskol
e91613bc62 update unsafeMode to alternativeExperience (#23995)
* update unsafeMode to alternativeExperience

* fix

* fix

* bump submodules

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-03-24 14:59:16 -07:00
Igor Biletskyy
0b64ddb678 panda.cc: add panda deep sleep mode(#23911)
* needed for panda deepsleep mode

* add set_deepsleep to panda.cc

* rename to enable_deepsleep

* remove void

* fix value

* bump panda
2022-03-07 18:55:16 -08:00
Willem Melching
f2eb84eef0 handle usb error in reading panda state (#23686) 2022-02-10 13:52:24 +01:00
Adeeb Shihadeh
9dca040ed9 boardd: get health struct from panda (#23648) 2022-01-27 19:22:44 -08:00
Adeeb Shihadeh
43c6ea8e73 boardd: add blocked msg cnt (#23647)
* boardd: add blocked msg cnt

* bump panda

* bump panda
2022-01-27 17:48:24 -08:00
Shane Smiskol
31d147dca2 controlsd: verify unsafe mode consistency (#23563)
* add unsafe mode check to controlsd

bump submodules

forgot to add to health_t struct

bump

ahh forgot to set it!

bump

bump

clean up

clean up

bump

* fix ordering

* move to end

* unsigned

Co-authored-by: Willem Melching <willem.melching@gmail.com>
2022-01-25 12:09:13 +01:00
Igor Biletskyy
285addeef2 Revert "boardd: new class USBDevice (#23015)"
This reverts commit 4061f50da3.
2021-12-16 17:11:45 -08:00
Dean Lee
4061f50da3 boardd: new class USBDevice (#23015)
* USBDevice

* merge master

* rebase master

* add to fiels_common

* inline functions

* namespace

* init err

* remove nested if

* cleanup

* bump panda for branch

* change includes

* bump panda branch

* change name

* bump master panda

Co-authored-by: Igor Biletskyy <briskspirit@users.noreply.github.com>
Co-authored-by: Igor Biletskyy <bs@privacy.im>
2021-12-16 16:53:48 -08:00
Adeeb Shihadeh
a793b949be boardd: add controls heartbeat (#23185)
* boardd: add controls heartbeat

* bump panda

* bump again

* bump panda
2021-12-15 17:58:16 -08:00
Dean Lee
827fae8faa panda: refactor can_send (#22981)
* refactor

* merge master

* fix

* move  down

* space

* merge master

* remove struct PacketWriter, use function

* Update selfdrive/boardd/panda.cc

less violations

* Update selfdrive/boardd/panda.cc

comment

* Update selfdrive/boardd/panda.cc

add comment to counter

Co-authored-by: Igor Biletskyy <briskspirit@users.noreply.github.com>
2021-12-06 20:04:25 -08:00
Igor Biletskyy
e294e1620e len_to_dlc make static (#23120) 2021-12-03 16:37:17 -08:00
Dean Lee
599c07e027 panda: refactor can_recv (#22977)
* refactor

* use macro

* rebase master

* fix incorrect chunk_len

* cleanup

* type fix

* lines

* while

Co-authored-by: Igor Biletksyy <bs@privacy.im>
2021-12-02 16:28:38 -08:00
Dean Lee
c77354009c panda: add unit tests for usb protocol (pack/unpack) (#22955)
* prepare for unit tests

* add to selfdrive_tests.yaml

* test header

* test chunk count

* rename test function

* continue

* don't check chunks count

* test recv_can

* continue

* small cleanup

* merge master

* cleanup

* rename functions

* test different packet size

* fix operator precedence problem

* refactor unpack_can_buffer

* cleanup test

* cleanup unpack_can_buffer

* add test for multiple pandas

* rename to test_panda

* restore test_boardd

* rename to test_boardd_usbprotocol

* fix typo

* bus_offset = [0,4]

* change src

* use USBPACKET_MAX_SIZE
2021-11-23 20:15:22 -08:00
Igor Biletskyy
edaf7d7604 fix chunk buffer size (#22969) 2021-11-18 14:15:06 -08:00
Igor Biletskyy
47d0d717eb panda.cc: struct for CAN header, counter complexity, cleanup for readability (#22956)
* try struct

* can_send refactor

* cleanups

* Resize vector only when it is needed

* ...

* more cleanup
2021-11-17 16:00:18 -08:00
Igor Biletskyy
04e1a25881 panda.cc: add functions to set can and data speed (#22920) 2021-11-15 16:10:39 -08:00
Igor Biletskyy
e293ccf016 New usb protocol for panda (#22752)
* first try

* move dlc_to_len

* panda switch to mailbox branch

* add bitstruct to pipfile

* bump panda and remove bitstruct

* few cleanups and fixes

* sanity check data.size == dlc_to_len

* check problem with test

* Revert "check problem with test"

This reverts commit b4855b7c12188d36d5d510e729344dab2cf21be9.

* clean

* revert Pipfile.lock

* that was an issue???

* fix crash

* ...

* include dlc_to_len from panda

* alph

* define macros for returned and rejected

* cleanup

* bump panda to current master
2021-11-12 16:47:26 -08:00
Robbe Derks
585c16cd2a Multipanda support (#22402)
* squash all PR commits for easy rebase

* merged all panda rx can into one message

* fix buffers in can_send

* more cleanup and minor fixes

* fix even more stuff

* fix non-allocated send buffer

* make connecting more robust

* fix bus offset

* fix controls_mismatch?

* simplify mismatch check

* C++ style struct

* fix connect loop

* update ref

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-10-29 13:04:26 +02:00
Adeeb Shihadeh
2f1ab63920 boardd: reduce unnecessary allocations (#22494) 2021-10-08 16:16:23 -07:00
Willem Melching
f4e2537b12 Split pandaState into peripheralState and pandaState (#22385)
* publish peripheralState from boardd

* refactor consumers

* rename thread

* peripheralState has panda type too

* add to process replay

* fix device build

* properly remove hardware unsupported alert

* latest peripheralState

* remove pandaState from thermal_monitor

* put that back

* add back harness check

* fix cloudlog

* needs pandaState

* Update selfdrive/thermald/tests/test_power_monitoring.py

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

* dont conflate

* Update selfdrive/thermald/tests/test_power_monitoring.py

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

* pigeon is peripheral

* cleanup

* less global

* comment

* move rtc to peripheral_control_thread

* better diff?

* whitespace

* get msg

* bump cereal

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-10-04 11:30:11 +02:00
Igor Biletskyy
603ad435be add function to list connected pandas to panda.cc (#21989)
* add list() to panda.cc

* std:size instead of sizeof

* refactor usb init

* change serial length to 26 to get null terminated

* safer char to string

* forgot variable

* initialize descriptor array

* ...

* move init usb out of class

Co-authored-by: Willem Melching <willem.melching@gmail.com>
2021-08-30 19:20:50 -07:00
Igor Biletskyy
fc56ae70ee Add argument to Panda to connect by serial number (#21905)
* Add list() to panda.cc

* add default

* change var names

* comments

* advices

* revert

* ...

* ..

* connect by serial

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-08-19 19:06:24 -07:00
Adeeb Shihadeh
f04d6a9b3f log on startup when panda heartbeat is lost (#21151)
* log when heartbeat lost

* bump panda

* bump panda

* add to pandaState

* move that
2021-06-04 23:22:08 -07:00
Dean Lee
0495426535 Cleanup includes (#20925)
* remove #include <pthread.h>

* remove #include<stdbool.h> for cc files

* remove #include<iostream>
2021-05-17 10:31:31 +02:00
Adeeb Shihadeh
e694f0b4d6 boardd: set can and pandaState valid flags (#20899)
* boardd: set can and pandaState valid flags

* add event

* bump cereal

* consistency
2021-05-14 21:26:02 -07:00
Dean Lee
7222d0f20d 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>
2021-05-08 22:15:17 -07:00
Willem Melching
34328ba305 Remove panda set power functions (#20712)
* remove panda set power functions

* removed
2021-04-20 15:31:19 +02:00
Willem Melching
3c23226edc verify safetyParam read back from PandaState (#20384)
* verify safetyParam read back from PandaState

* update ref

* bump panda
2021-03-17 14:20:05 +01:00
Adeeb Shihadeh
dd74f09eab turn pigeon off when going offroad (#20296)
* cleanup

* power off pigeon

* comment

Co-authored-by: Comma Device <device@comma.ai>
2021-03-09 22:48:27 -08:00
Adeeb Shihadeh
312b681a46 cereal cleanup part 2 (#20092)
* car stuff

* thermal

* Revert "car stuff"

This reverts commit 77fd1c65ebd01abfa8493ae12c9e6b14f7ada976.

* panda state

* camera stuff

* start deg

* most is building

* builds

* planner + controls run

* fix up paramsd

* cleanup

* process replay passes

* fix webcam build

* camerad

* no more frame

* thermald

* ui

* paramsd

* camera replay

* fix long tests

* fix camerad tests

* maxSteeringAngle

* bump cereal

* more frame

* cereal master
2021-02-16 21:39:32 -08:00
Adeeb Shihadeh
000bd226aa Cereal cleanup (#20003)
* start cleanup

* fan speed

* cleanup dm

* fix cereal

* hwType -> pandaType

* update refs

* update refs

* bump cereal

* freeSpacePercent

* cereal master
2021-02-03 19:57:30 -08:00
Dean Lee
0b75a85adc Panda: use 'std::atomic<bool> connected' to ensure thread-safety (#19954) 2021-01-28 11:35:13 -08:00
Dean Lee
c4215d8476 Panda: refactor get_firmware_version, return std::optional<std::vector> (#19896)
Co-authored-by: Willem Melching <willem.melching@gmail.com>
2021-01-28 16:25:05 +01:00
Dean Lee
96cc633d91 panda: refactor get_serial, return std::optional<std::string> (#19895) 2021-01-28 16:21:18 +01:00
Dean Lee
b0c0de5b66 Fix panda: dangling pointer problem in can_receive (#19892)
* refactor can_receive

* still send empty msg
2021-01-26 16:04:38 +01:00
Dean Lee
5594b8f3cb Panda: replace pthread_mutex with std::mutex (#19909) 2021-01-26 14:57:55 +01:00
Shane Smiskol
5eea86cbf4 Abstract set_unsafe_mode function to Panda (#2431)
* Abstract set_unsafe_mode function to panda.cc

* whoops

* use uint16_t
2020-10-28 13:21:07 -07:00
Willem Melching
502cc665e0 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>
2020-08-13 10:10:50 +02:00