Commit Graph

2990 Commits

Author SHA1 Message Date
Shane Smiskol
63db708491 driver torque limit: make driver torque message abstract (#1377)
* abs

* uncomment

* fixy
2023-04-28 17:36:35 -07:00
Shane Smiskol
99809f7071 angle safety tests: more clear helper function name
here too
2023-04-28 15:02:57 -07:00
Shane Smiskol
001f9917ef ford: disable counter check for second speed (#1375)
add comment and disable counter for second speed
2023-04-28 14:25:35 -07:00
Shane Smiskol
4160d8d71c safety: common angle safety function (#1369)
* draft clean up

* always check

* add angle to name

* ford sends curvature when not steering and bit is 0.

it's not torque, curvature of 0 will still apply torque

* need this to be generic

* formatting

* rm

* test that we can send curvature=0 if enabled=False while control_allowed=True (let's say EPS faults, OP doesn't want to actuate)

* revert ford tests to master

* this <i>should</i> preserve behavior

* this is fine to remove

* and this should also be covered

* yeet

* change opt name, combine checks, much better!

* one more

* modes

* Add comment

* misra has a bug :(

* ugh

* make this clear

* ?

* order

* fix

* comments
2023-04-27 23:33:54 -07:00
Shane Smiskol
69a0b6ed34 safety: use max_limit_check helper in angle safety (#1373)
* better

* ?

* ?

* Revert "?"

This reverts commit ae70c7ff3b.

* Revert "?"

This reverts commit db7fd644a9.
2023-04-27 23:19:26 -07:00
Shane Smiskol
aac46a2ef2 angle safety: enforce disabled angle when not steering (#1372)
* enforce disabled angle when bit not set, below we enforce bit to be 0 when not controls allowed

* test

* other test

* combine tests

* comment
2023-04-27 21:41:38 -07:00
Shane Smiskol
240370cdd1 ford: allow 0 curvature when controls are allowed if not steering (#1370)
* test that we can send curvature=0 if enabled=False while control_allowed=True (let's say EPS faults, OP doesn't want to actuate)

* draft

* only check error if apply bit is 1

* subtest

* no subtest

* fix safety and tests

* tests say this works

* clean up

* subtests are sloww

* Revert "subtests are sloww"

This reverts commit 560c6745c8.

* fix test from merge

* add comment

* add comment

* add another comment

* spacing
2023-04-27 17:44:32 -07:00
Shane Smiskol
07680692d9 Ford: add subtests (#1371)
* subtest here

* and here

* bit faster
2023-04-27 17:27:18 -07:00
Shane Smiskol
c9c3cb38f6 Ford safety: curvature error limit (#1353)
* set ford vehicle speed

* parse yaw rate signals

* misra

* misra

* misra

* misra

* draft

* update module

* already checked

* and set it properly

* some stuff

* draft

* clean up (will fail tests because we don't send yaw rate yet)

* could do something like this

* this is better and less prone to bugs

* match simple op limiting, debugging

* set checksum for messages in tests

* clean up

* fix that

* one m/s fudge

* fix sign of yaw rate

* interpolate detects size

* forgot OP flips the curvature sign. it matches yaw on can

* all my debugging crap

* make replay work for ford

* fix panda blocking messages (array is fixed size so size-1 is 0 rate at high speed)

* uncomment safety test limits

* revert

* round for zero blocked msgs

* fix limits

* meas safety checks that down rate is >=, not <

* test pass

* lots of comments and draft what one meas torque check would look like

* fix that

* add curvature meas

* add debugging stuff

* Revert "add debugging stuff"

This reverts commit 449783fc62.

* messy but at least one test passes now

* draft

* add max_steer

* some safety clean up

* and that

* start with a test that works

* another test that works (sort of, we need more strict panda safety without false positives)

* no max curvature check (not safety related), allow any rate limits

* add new function

* also need to consider max val here, since OP will send up to that

* and now use the function

* lower to 10

* compilation fixes

* clean up (no rate limiting)

* remove that too

* curvature diff test

* more clean up

* debug

* ?

* better names

* more official

* use _curvature_meas_msg_array here

* bit faster

* no i don't

* revert that

* why not just use angle_meas?

* bb ll

* bb deb

* clean up debug vals

* more

* revert replay drive debugging changes

* Update board/safety.h

* rm line

* only need to round the final thing

* not needed, under 10 ms

* make a class variable

* fix a misra?

* another misra?

better

* ?

* 12.1

* need to explicitly convert

* add one to not false trigger the violation (float rounding)

* not really needed

* rm line

* cmt

* use clamp

* rename

* in struct

* comment

* use max_limit_check

* draft clean up

* Revert "draft clean up"

This reverts commit d1a0e8acd1.

* make a global

make a global

* this is fine
2023-04-27 00:40:29 -07:00
Shane Smiskol
4269b74a84 safety: use max_limit_check (#1368)
use max_limit_check
2023-04-26 23:55:04 -07:00
Adeeb Shihadeh
1e8c5d59c7 CI: run tests with UBSan (#1363)
* CI: run tests with UBSan

* try this
2023-04-26 23:15:28 -07:00
Adeeb Shihadeh
7aef934d4c Fix undefined behavior in GET_BYTES macro (#1367) 2023-04-26 22:59:58 -07:00
Shane Smiskol
f444f1554f Ford: check second speed for mismatches (#1358)
* Add second speed

* 2.5 m/s is 9 kph, 4 kph is the max in the field

* add quality signal

* qf signal name

* comment

* checksum matches except it goes to zero when turning the car off despite counter still active

* update comments

* now test it

* spacing

* Update board/safety/safety_ford.h

* zzzz

* not needed

* whoops

* test vehicle state mismatch

* add to safety_helpers

* probably misra

* we might want to check it in both speed signals in case one doesn't exist on a car

* Revert "we might want to check it in both speed signals in case one doesn't exist on a car"

This reverts commit 3338931409.

* fix formatting

* 2 m/s (7 kph)

* set controls_allowed directly like other safety models

remove vehicle_state_mismatch

* obv
2023-04-26 22:37:36 -07:00
Shane Smiskol
5c21b14049 Ford: check 2nd speed message (#1365)
* Add second speed

* 2.5 m/s is 9 kph, 4 kph is the max in the field

* add quality signal

* qf signal name

* comment

* checksum matches except it goes to zero when turning the car off despite counter still active

* update comments

* now test it

* spacing

* Update board/safety/safety_ford.h

* zzzz

* not needed

* whoops

* test vehicle state mismatch

* add to safety_helpers

* probably misra

* we might want to check it in both speed signals in case one doesn't exist on a car

* Revert "we might want to check it in both speed signals in case one doesn't exist on a car"

This reverts commit 3338931409.

* fix formatting

* 2 m/s (7 kph)

* revert mismatch stuff
2023-04-26 21:49:39 -07:00
Shane Smiskol
048ddeea4a safety: make addr index getter more explicit (#1361)
make this explicit
2023-04-26 21:15:55 -07:00
Shane Smiskol
f3d6d613c0 safety: don't check out of bounds array item (#1360)
* safety: don't check out of bounds array item

* better name

* cleanup

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-04-26 19:43:30 -07:00
Shane Smiskol
23b5130de9 replay drive: fixes (#1362)
* make explicit, there was no bug only because the if statement is identical to above

* debug

* Revert "debug"

This reverts commit 2ec83677c3.

* Revert "make explicit, there was no bug only because the if statement is identical to above"

This reverts commit fcb2a106b9.

* fixes

* clean that up

* and this
2023-04-26 17:45:04 -07:00
Adeeb Shihadeh
b342c2d724 fan: add stall threshold backoff (#1357)
* fan: add stall threshold backoff

* Update board/config.h

* cleanup

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-21 15:41:26 -07:00
Adeeb Shihadeh
08ed853bf9 log total stall count in fan tuning script 2023-04-21 13:47:13 -07:00
Adeeb Shihadeh
272b81e97b fan: fix stall detection (#1351)
* cleanup and fix

* dos must stall

* clean those up

* fix misra

* more test

* fix import

* cleanup

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-20 15:44:12 -07:00
Adeeb Shihadeh
6093301bc9 add CLAMP macro (#1356)
* add CLAMP macro

* fix
2023-04-20 14:34:11 -07:00
Adeeb Shihadeh
3c75a8bc00 add fan stall count to health (#1355)
* add fan stall count to health

* fix misra

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-20 13:30:56 -07:00
Adeeb Shihadeh
0e2eb9c0f5 fan debugging script (#1354)
* fan debugging script

* merge those

* disable

* better print

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-20 13:00:40 -07:00
Adeeb Shihadeh
e6cad01955 H7: fix CAN FD IRQ rate (#1332) 2023-04-19 17:34:31 -07:00
Adeeb Shihadeh
cf307348af CI: run HITL tests on tres (#1326)
* run on tres

* disable those for now

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-18 22:17:11 -07:00
Adeeb Shihadeh
0b03ef5468 HITL tests: skip internal tests on uno (#1350)
Co-authored-by: Bruce Wayne <batman@comma.ai>
2023-04-18 16:15:27 -07:00
Robbe Derks
d3904a9f75 HITL fan test (#1330)
* hitl fan test

* enable cooldown on dos as well

* small cleanup

* get expected RPM from panda class

* fix

* overshoot test

* fix max RPM getting

* fix percentage

* revert cooldown fix

---------

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-04-18 14:47:22 -07:00
Robbe Derks
237ffedcb3 Dos fan fix (#1335)
* hitl fan test

* enable cooldown on dos as well

* small cleanup

* get expected RPM from panda class

* fix

* overshoot test

* fix max RPM getting

* fix percentage

* revert cooldown fix

* add cooldown for dos fan as well

* remove feedforward from the fan controller to eliminate overshoot

* update clip

* cleanup

* add that back

---------

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-04-18 14:15:06 -07:00
Justin Newberry
1f8b03666d Subaru: add ability to send infotainment status message (#1333)
* added infotainment status to panda

* dont fwd infotainment status

* revert placeholder and add test case

* Fix test case

* gen2 only

* fix test case

* Revert "fix test case"

This reverts commit 8cc7579620.

* Revert "gen2 only"

This reverts commit 6a511a9976.

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-04-17 18:47:51 -07:00
Adeeb Shihadeh
2f79621893 improve flash and recover scripts (#1349)
* improve flash and recover scripts

* update references

* cleanup

* less spaces

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-16 15:08:46 -07:00
Adeeb Shihadeh
9cd01ac263 PandaDFU: retry SPI comms (#1348)
* retry

* set exc

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-16 14:43:58 -07:00
Adeeb Shihadeh
862b03b5c5 CI: add job to update pre-commit hooks (#1346)
* CI: add job to update pre-commit hooks

* rm push trigger
2023-04-15 17:56:25 -07:00
Jason Young
6ec078db5a VW MQB: Cleanup HCA control message (#1310)
* VW MQB: Cleanup HCA control message

* update opendbc ref

* revert this before merging

* MISRA

* revert Dockerfile to comma master

* reverted a little too much
2023-04-15 11:34:42 -07:00
Shane Smiskol
ada8b49cb5 Honda Bosch Radarless: allow alt brake (#1341)
* radarless can use this

* fix addr check

* update opendbc ref
2023-04-14 01:51:19 -07:00
Igor Biletskyy
0117ff9d13 H7: Rx FIFO lost counter (#1345)
* fifo rx lost counter

* add comment
2023-04-13 17:37:48 -07:00
Jason Young
fddca54fd6 VW: Allow inactive accel values at all times (#1247)
* allow inactive accel values at all times

* cleaner

* unnecessary, done by default

* better comments

* move test to common class

* fix

* flip

* comment

* append 0 and INACTIVE_ACCEL to test accels + check acc_07 sends if inactive only

* cleanup

* fix that

* copy testing convention of VW and Honda

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-04-13 17:28:33 -07:00
Adeeb Shihadeh
22b8e5df7f add extra fault assert in HITL tests for context 2023-04-12 16:28:45 -07:00
royjr
9e03d10857 README: better setup order (#1337) 2023-04-12 16:22:19 -07:00
Igor Biletskyy
0832d65347 Fix CAN message corruption on H7 under high load (#1342)
* fix RX FIFO corruption

* Add checksum to CANFD test data

* cleaner and MISRA

* nah

* oops

* fix test
2023-04-12 11:07:58 -07:00
royjr
6d86f546c0 README: fix git error while trying to build (#1344)
Update README.md
2023-04-11 19:38:02 -07:00
Adeeb Shihadeh
85cc70d4aa safety: only pass addr to fwd hook (#1339) 2023-04-08 16:45:59 -07:00
Adeeb Shihadeh
2a567674dc Tesla: move reading AEB state to RX hook (#1340) 2023-04-08 16:20:38 -07:00
royjr
a1390647fc README: fix error while installing requirements (#1336)
fixes error while installing requirements
2023-04-07 18:05:00 -07:00
Adeeb Shihadeh
878e0077ac add tres to internal devices 2023-04-06 20:52:09 -07:00
Adeeb Shihadeh
6f852b44a9 SPI: log checksum errors in health (#1334)
* SPI: log checksum errors in health

* actually send it

* check in hitl teardown

* check that

* fix misra
2023-04-05 22:05:14 -07:00
Adeeb Shihadeh
2e8f27486f spi: bump up to 50MHz 2023-04-05 09:28:04 -07:00
Adeeb Shihadeh
e516a5752b watchdog to log fault on heartbeat loop (#1328)
Co-authored-by: Comma Device <device@comma.ai>
2023-04-04 18:51:35 -07:00
Adeeb Shihadeh
0400ac28af fake siren: fix false positive fault (#1327) 2023-04-03 20:48:26 -07:00
Adeeb Shihadeh
eef3d026e3 CI: run HITL tests on dos (#1304)
* run on dos

* skip voltage on dos

* run these

* revert that

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-03 20:21:10 -07:00
Robbe Derks
79708f912d USB enumeration based on frame numbers (#1324)
* use frame numbers to detect host connection

* fix weird formatting

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-03 17:13:02 +02:00