Commit Graph

1080 Commits

Author SHA1 Message Date
Shane Smiskol
66bd9e8f25 Change safety model imports (#2158)
* fix test_pandad

* fix all the imports
2025-02-21 17:36:23 -08:00
Shane Smiskol
9804e2607e Move car safety modes to opendbc (#2143)
* move safety tests

* move libsafety

* move safety

* remove safety test job

* fix compilation

* update ref

* rm safety mutation test

* fix misra test

* no safety here

* fix build for both local and docker

* already tested

* fix misra mutation

* move Safety Model readme section to opendbc

* and panda

* fix

* in

* not here

* not here
2025-02-19 17:19:18 -08:00
Lukas
ebdc376ade Safety for Tesla Model 3 / Model Y (#2036)
* wip model3

* master

* tesla model 3 / y

* prevent tesla to reverse

* remove can 1 from safety

* use DI_vehicleSpeed

* - add APS_eacMonitor to TX
- use DI_state as a standstill signal

* block eacMonitor

* fix tesla safety tests

* fix tesla safety tests

* add generic_rx_check for eacMonitor

* fix tests

* consistent ordering of common user brake test setup

* Tesla: Panda safety update (#2075)

* - match "vehicle_moving" with opendbc
- allow to cancel

* remove comment

* update _vehicle_moving_msg

* remove redundant condition

* whoops

* update ref

* spacing!

* long behind ALLOW_DEBUG

* consistent styling

* ?

* misra and clean up

* divide instead

* double (())

* more stylistic

* this is more clear

* always check aeb

* this test catches it

* it should test angle steering in both modes?

* we weren't testing long at all, and ALSO PYTEST SILENTLY SKIPS CLASSES WITH MISSING ABSTRACT METHODS WTF

* finalize safety tests

* update opendbc to master

* ltl

* revert this

* rm conftest

* loop this

---------

Co-authored-by: Greg Hogan <gregjhogan@gmail.com>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
2025-02-18 12:42:38 -08:00
Shane Smiskol
2a4d3a9923 Remove hw type from safety tests (#2151) 2025-02-12 21:43:07 -08:00
Shane Smiskol
b2b28f9326 split libpanda library (#2149)
* duplicate libpanda

* rename

rename

* update libpanda to remove safety helpers

* libpanda -> libsafety

* remove some stuff in libsafety

* rm some stuff from safety.c

* libc

* fix

* dont include safety helpers
2025-02-12 21:24:26 -08:00
Shane Smiskol
d3508ff042 Move safety constants to opendbc (#2145)
* move to opendbc

* all passing

* do the rest

* fix

* and another

* order

* and update ref to master
2025-02-11 20:14:44 -08:00
Shane Smiskol
72a99e9e9d Rename to SafetyFlags (#2144)
* safety flags

* update ref

* fix ltl
2025-02-11 19:56:29 -08:00
Eric Brown
e7940cc3e9 Remove car specific flags (#2116)
* Subaru: combine panda flags

* Remove car-specific panda flags

* Rename usages in tests

* update opendbc ref

* ?

?

* fix ltl

* order

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2025-02-10 19:10:29 -08:00
Shane Smiskol
12905886ba Ford: long safety is default for CAN (#2128)
* ford long safety

* same with ford_longitudinal

* Update tests/safety/test_ford.py
2025-01-22 20:18:26 -08:00
Jason Wen
9066088edf Dockerfile: opendbc: small fixes and use the latest ref (#2124)
* Dockerfile: opendbc: use the latest ref

* use new generated dbc

* fix mypy
2025-01-19 18:00:25 -08:00
Adeeb Shihadeh
a8f21d9273 update cppcheck to 2.16 (#2120) 2025-01-12 15:58:23 -08:00
DevTekVE
bedee405d6 test: Allow running test_misra.sh easy on macos (#2096)
Allow running test_misra.sh easy on macos
2024-12-09 17:34:04 -08:00
Willem Melching
4a11d52e07 Control over FD flag of CAN messages (#2085)
* Control over FD flag of CAN messages

* misra
2024-11-21 11:04:09 -08:00
Radek
aab03bc4b6 Make can_print.py work on a all busses (#2070)
* Enable CAN3 printer (#1991) again

(cherry picked from commit 2b94e4fef7)

* print messages with same address but on different bus
2024-11-06 17:09:42 +01:00
Shane Smiskol
3066f93d8a Ford: higher curvature rate limits at low speed (#2065)
* use closer to EPS limits

* raise to upper bound of spread from injection plot

* we've seen ~0.009 at 7 m/s, so allow that

* fix test

* rounding errors cause the 2 to round to the same value

* adjust for latest opendbc change

* we should actually match what safety is doing! fix lack of test coverage near first brake point

fix

* and fix test
2024-10-25 23:27:33 -07:00
Shane Smiskol
2bd2f2a702 Ford: check longitudinal actuation bits (#2067)
ford long: check brake actuation bits
2024-10-25 14:11:53 -07:00
Jason Young
abdc41856b Toyota: 2021+ RAV4 Prime (#2042)
* from @pd0wm commaai/panda#1841

* diff reduction: won't need the flag rename

* run tests with new DBC and new gas/brake messages

* toyota_secoc_car to global

* consolidate alt_brake_101

* consolidate alt_pcm_cruise_176

* consolidate alt_gas_pedal_116

* don't allow transmit/forward for 0x131 unless SecOC

* cleanup and todo

* diff reduction

* reorder by usage frequency

* test for no LTA actuation

* bump opendbc commit ref in Dockerfile

* gate SecOC variant on ALLOW_DEBUG

* tweak gating for MISRA

* mutation test hates lta_angle surviving various changes

* common rx checks styling

* don't allow short version of 0x2E5 for SecOC mode

* whitespace diff reduction

* secoc_car -> secoc

* fix comment typo

* retry CI

* missed a couple secoc_car -> secoc

* one big secoc/not-secoc block

* genuinely useful MISRA warning

* test both STEERING_LTA and STEERING_LTA_2

* comment labeling for STEERING_LTA_2 signals

* Update board/safety/safety_toyota.h

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

* STEERING_LTA and STEERING_LTA_2 consistency

* update gas/brake/cruise signal annotations

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2024-10-04 11:22:18 -07:00
Maxime Desroches
2fa1cf5eff mutation tests: remove buggy mutation op 2024-10-02 21:27:40 -07:00
Maxime Desroches
47f8416942 mutation test: add more ops (#2059)
* log

* more
2024-10-02 21:19:17 -07:00
Radek
fab8d0bb4a CAN print improvement (#2052)
* Jungle spam can.

* Print all busses by default.  Prettier print.

* can_health printer

* colors on can error
2024-10-02 12:53:32 -07:00
Maxime Desroches
f5e1900537 mutation tests: remove cxx_assign_const op (#2053)
* no 42

* last one
2024-10-01 19:05:39 -07:00
Maxime Desroches
08c95bf47b mutation tests: activate all mutation ops (#2047)
* all

* clean

* cleaner

* WORKING

* test

* cleanup
2024-09-26 19:37:59 -07:00
Maxime Desroches
b6644f7a35 revert libpanda with clang (#2044)
* revert

* adapt this
2024-09-26 12:35:45 -07:00
Maxime Desroches
78b49ab155 safety mutation tests (#2040)
* mutation

* clone

* origin

* get diff

* better example

* better

* fix docker

* work on push

* make test fail

* real change

* test all modes

* ignore

* better

* reco

* fix

* no libpanda on device

* curl

* nl

* nl again

* delete

* clean

* clean

* this

* add this back

* cleanup
2024-09-25 21:56:09 -07:00
Maxime Desroches
fb67bda00e compile libpanda with clang (#2041)
* clang

* report

* safety.h

* fix lines

* cleaner

* better

* remove this

* revert this

* fix

* tici build

* revert

* revert

* fix
2024-09-25 20:14:12 -07:00
Maxime Desroches
afafb0ba46 test misra 8.7 and 8.4 (#2035)
check
2024-09-20 19:38:45 -07:00
Maxime Desroches
32eecd7211 misra8.4: board/*.h (#2026)
* main

* can_comms

* main_declarations->main_definitions

* rename this also

* can_definitions

* faults

* power_saving

* provision

* gitversion

* not included

* no include for now
2024-09-19 21:15:08 -07:00
Maxime Desroches
ed831773ea misra21.15 (#2030)
* cast

* remove suppression

* make it more explicit
2024-09-19 10:35:11 -07:00
Maxime Desroches
ceb088ac4e misra12.2 (#2028)
* 12.2

* remove supression

* new stm
2024-09-18 11:33:12 -07:00
dzid26
6f0d1efbd9 stricter misra config check - prevent quiet bail out 2024-09-05 21:49:30 -07:00
Adeeb Shihadeh
160ea08e8f misra: bump to cppcheck 2.15.0 (#2008)
* misra: bump to latest cppcheck

* update checkers
2024-08-31 13:09:58 -07:00
Andrei Radulescu
0a0912234e update bash scripts to #!/usr/bin/env bash (#1987)
* update bash shebang for better compatibility including macOS

* can't have anything after #bash
2024-08-26 17:25:15 -07:00
dzid26
2b94e4fef7 Enable CAN3 printer (#1991)
* panda has 3 can peripherals

* enable printing CAN3
2024-08-26 17:15:29 -07:00
Adeeb Shihadeh
c4e75ee89c remove cereal dependence (#2000)
* remove cereal

* rm more shit

* add back make

* python3

* python3

* fix that

* put that back

* rename

* fix that

* can't move it
2024-08-18 11:40:54 -07:00
Shane Smiskol
8c3bb0151e deprecate busTime (#1989)
* deprecate busTime

* fix test_comms.py

* update opendbc

* way more than i thought

* and here

* oops
2024-07-30 21:20:48 -07:00
Hoang Bui
f6375848ca add set_gas_pressed_prev() helper (#1986)
add set_gas_pressed_prev helper
2024-07-17 20:49:10 -07:00
dzid26
4df996cfd7 Cppcheck checklist bugfix (#1969)
* Fix cppcheck checklist diff

* cppcheck already has exitcode=2
2024-06-04 10:24:51 -07:00
dzid26
b6b8144523 misra mutations test - git diff error fix (#1964)
fix misra mutations - don't run git diff in temp folder
2024-06-03 22:31:53 -07:00
dzid26
d401ba169c Enable misra-c2012-1.2 (#1962)
* misra-c2012-1.2 - allow __typeof__ compiler extension

* explicit c11
2024-05-30 22:13:47 -07:00
dzid26
9fdbb178c4 Generate cppcheck checkers list (#1960)
* cppcheck checkers list / coverage

* Update tests/misra/test_misra.sh

* Update tests/misra/test_misra.sh

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2024-05-29 19:42:40 -07:00
dzid26
6ff6733ba3 Cppcheck 2.14 (#1951)
* enable cppcheck 2.14

* cppcheck: Uninitialized variable

* cppcheck: variableScope

* cppcheck: misra-c2012-21.16
both arguments to memcmp() should be of compatible (matching) essential types

* cppcheck: misra-c2012-11.6
Avoid casting between pointer to void and an arithmetic type.
Refactor bootloader address casting for easier understanding.

* cppecheck 2.14.1
- force cppecheck tag fetch
2024-05-27 21:21:13 -07:00
Adeeb Shihadeh
2b70e283c1 tres: lower SOM reset timeout (#1945)
* tres: lower SOM reset timeout

* update test
2024-05-03 14:03:54 -07:00
Jack Merrill
d4a01f7555 Increase Subaru RPM limit (#1937)
* feat: increase Subaru RPM limit

* test: Update tests for Subaru RPM increase
2024-04-25 13:56:25 -07:00
Justin Newberry
698d17e021 fix inconsistent misra mutation tests (#1935)
* revert

* fix
2024-04-22 10:28:53 -07:00
Justin Newberry
4d60ae9c62 CI: fix misra mutation tests (#1934)
* fix that

* skip build, install first

* Revert "skip build, install first"

This reverts commit 01efdb77ce.

* prune
2024-04-18 17:59:33 -07:00
Adeeb Shihadeh
01c54d1199 enable misra-c2012-11.8 (#1916)
* fix up harness_config definition

* enable misra-c2012-11.8
2024-03-24 12:38:25 -07:00
Adeeb Shihadeh
418fca3583 enable misra-config checks (#1879)
* mostly done

* fix rest of misra-config

* do other two in next pr
2024-03-24 12:10:37 -07:00
Adeeb Shihadeh
b08bc43a21 update cppcheck to 2.13.4 (#1915) 2024-03-23 18:23:44 -07:00
Adeeb Shihadeh
dd82382d5f instant boot (#1910)
no more boot time :P
2024-03-22 14:01:44 -07:00
Adeeb Shihadeh
091773f448 Adjust CAN bus orientation live with harness orientation (#1913)
* set orientation in one place

* no flip

* cleanup

* more explict on startup

---------

Co-authored-by: Comma Device <device@comma.ai>
2024-03-22 14:00:13 -07:00