Commit Graph

404 Commits

Author SHA1 Message Date
Adeeb 884afa0ef7
Safety Test Refactor: Chrysler and Volkswagen PQ (#508)
* volkswagen pq

* chrysler

* cleanup
2020-04-17 13:34:23 -07:00
Adeeb d77b72d169
Safety Test Refactor: Nissan (#510)
* start nissan

* packer
2020-04-17 13:33:36 -07:00
robbederks 0336f625dc
Pedal gas pressed safety limits (#507)
* Fixed toyota pedal gas disengage and increased pedal limits to OP limits +5%

* Fix safety unit tests?

* Fix imports

* Fix imports #2
2020-04-16 14:52:59 -07:00
Willem Melching 715b1a1695
Hyundai-Kia-Genesis (HKG) (#503)
* update hkg steer torque message

* misra

* Get bus

* Allow sending LFA HDA message

* Add blacklisted addr

* Update safety replay

* Cleanup bus checks

* Update to new torque message
2020-04-15 19:33:41 -07:00
Adeeb 6f105e827b
Safety Test Refactor: Subaru (#502)
* subaru global kind of works

* all global uses can packer

* fix legacy

* legacy uses can packer

* bump opendbc

* i guess docker caches that
2020-04-15 17:00:21 -07:00
Adeeb 57cc954f24
Safety Test Refactor: GM (#504)
* start GM refactor

* use packer
2020-04-15 16:59:01 -07:00
Adeeb dd01c3b9ca
Safety Test Refactor: Hyundai (#505)
* use PandaSafetyTest for hyundai

* use packer
2020-04-15 16:58:13 -07:00
Adeeb 6c442b4c33
Safety Test Refactor: Volkswagen MQB (#493)
* pull test_volkswagen_mqb.py from safety-test-refactor

* prev_brake is now a standard test

* abstract cruise enable/disable tests

* unused

* move

* hack to get around unittest reporting skipped tests
2020-04-13 17:13:08 -07:00
Adeeb 8cc3a35700
remove cadillac (#496) 2020-04-13 14:43:46 -07:00
Adeeb 62e4d3c369
Chrysler: fix missing button signal on TX (#490)
* Chrysler: fix missing button signal on TX

* fix test
2020-04-10 13:48:41 -07:00
Adeeb abce8f32b1
Safety Test Refactor: Toyota + support code (#491)
* bring over toyota + support code from safety-test-refactor

* old tests still use StdTest

* don't duplicate

* test fwd

* make linter happy

* fix indent

* fix ident

* fix order

* whitespace

* move some common tests

* cleanup

* unused

* comment
2020-04-10 13:45:55 -07:00
robbederks 500370aecd
Make sure relay faults make it to the health packet (#492)
* Added relay malfunction handling

* Bump version

* Fixed safety test

* set/reset

* fixed test again
2020-04-09 15:53:46 -07:00
Adeeb bc90b60f97
toyota: use universal gas pressed bit (#488)
* toyota: use universal gas pressed bit

* fix tests
2020-04-09 12:09:34 -07:00
Willem Melching a05361ebc2
cleanup safety_replay dockerfile (#486) 2020-04-06 22:33:56 -07:00
Willem Melching fe73dcc913
Openpilot-tools is deprecated (#484)
* openpilot-tools is deprecated

* Add pycurl

* Add dependency for pycurl

* Add tenacity

* add atomicwrites
2020-04-06 22:19:25 -07:00
Greg Hogan da8e00f115
TX message guaranteed delivery (#421)
* wait for tx slots before clearing nak

* fix bootstub

* Fixed misra

* Cleanup

* Added bulk write test to test USB NAK on bulk CAN messages

* Added automated bulk tx test

* Fixed linter

* Fixed latency test influence

* Added timeout to python API

* Disabled can write timeout in bulk write test

Co-authored-by: Robbe <robbe.derks@gmail.com>
2020-04-06 16:49:42 -07:00
George Hotz d88013450d remove from there as well 2020-04-06 14:49:40 -07:00
eFini 4e98bbe8c9
Apply unsafe allow gas mode to all cars. (#480)
Apply unsafe iso accel/decel limit to toyota.
2020-04-06 08:56:36 -07:00
Jason Young b9a9ea395f
Unsafe gas disengage mods, fix test compile warning (#481) 2020-04-01 14:03:13 -07:00
Jason Young 08ef92d585
Safety model for Volkswagen PQ35/PQ46/NMS (#474)
* Align with VW Community port 0.7.4-devel

* Import of PQ35/PQ46/NMS safety work

* Add safety replay drive for PQ35/PQ46/NMS

* Unwind community port hax for upstream, bump Panda ver

* Update comment

* Reduce whitespace diff

* Reduce whitespace diff

* Don't test the drive until it's uploaded

* Propitiate MISRA

* Ixnay on the VERSION LF

* Remove VERSION LF, update safety_replay with PQ drive

* Freshen cereal ref to include fields used in VW PQ test drive

* Remove superfluous return

* Bypass Docker caching issue
2020-04-01 12:38:27 -07:00
Jason Young 51e0a55d6d
Support code for unsafe mode unit tests (#478)
* Support code for unsafe mode tests

* Fix pre-existing MISRA warning while I'm here
2020-04-01 10:17:51 -07:00
Willem Melching de89fcdc4f
Nissan leaf (#473)
* use rear wheels for speed

* Add leaf gas message

* Add brake press check to safety

* Fix typo in comparison

* threshold on gas and brake pressed and add cruise enabled check

* Fix brake pressed result

* Use same message for cruise enabled detection

* Fix typo

* Fix tests

* Add RX checks

* Allow sending cancel from panda

* Add cancel command to TX messages in tests

* Remove angle limit

* Change speed factor

* Change speed factor in tests

* Remove max angle from tests

* Fix tests

* try cancel using seatbelt

* Try different cancel message

* Fix TX_MSGS in test

* Fix fwd test
2020-03-27 21:45:16 -07:00
rbiasini 0696730c14
Toyota: add missing offset from speed signal (#469)
* Toyota: add missing offset from speed signal

* Let's also define ABS value in macro
2020-03-11 17:30:30 -07:00
Andre Volmensky 5b1a8dc873
Filtering LKAS HUD messages (#468)
* Filtering LKAS HUD messages

* Added nissan test_fwd_hook()

* Added Nissan TX_MSGS safety test

Co-authored-by: rbiasini <riccardo.biasini@gmail.com>
2020-03-11 00:00:33 -07:00
Riccardo Biasini 99050f4129 test_spam_can_buses was missing from Nissan 2020-03-10 17:42:07 -07:00
rbiasini 0f21b19bb3
Cleanup pedal nomenclature (#467)
* consolidate gas and brake nomenclature

* fixes in code and tests
2020-03-08 23:48:00 -07:00
rbiasini ceff91d3c5
Standardize brake safety tests (#465)
* WIP: improve safety test format

* Fix tests
2020-03-07 23:22:47 -08:00
rbiasini 04809e1329
Hyundai brake check (#464)
* WIP: adding brake check

* Added Hyundai brake tests
2020-03-07 21:26:03 -08:00
rbiasini 74c8ee0a7a
Subaru brake check (#463)
* WIP: subaru brake check

* FInalized logic and added tests to Subaru brake check
2020-03-06 22:29:46 -08:00
Jason Young c7d0d5fc7b
Volkswagen safety updates: Phase 3 (#462)
* Torque limit bump, change signal for ACC state tracking
2020-03-05 21:27:19 -08:00
rbiasini 4368748851
WIP: Toyota brake check. (#459)
* Toyota brake check with safety tests
2020-03-05 00:16:03 -08:00
Riccardo Biasini e063b2688d Second test fix tentative 2020-03-04 19:53:36 -08:00
Riccardo Biasini 88e25938f5 This should fix the test replay 2020-03-04 19:45:44 -08:00
Riccardo Biasini ebb88665c8 Added NISSAN replay test 2020-03-04 19:15:48 -08:00
rbiasini b2dbb504dc
remove toyota ipas safety code and tests (#460) 2020-03-04 10:54:13 -08:00
rbiasini 11ef24bc16
Improve tests (#456)
* much more thorough Honda-Bosch tests and better test inheritance. Also fix counter test bug

* Fixed other counters too

* remove unnecessary function
2020-02-29 09:00:29 -08:00
rbiasini fb02390d4c
Subaru checksum counter (#455)
* Added Subaru Global checksum and counter checks
2020-02-27 17:33:51 -08:00
rbiasini 9a44499879
Fix Subaru Legacy Torque driver bug (#454)
* Fix Subaru Legacy Torque driver bug
2020-02-27 17:20:58 -08:00
rbiasini dfa6b079de
separating subary legacy safety mode from global (#452)
* separating subary legacy safety mode from global

* added explicit tests for subaru legacy, which were absent before
2020-02-27 15:28:24 -08:00
rbiasini dad5858b8c
Chrysler: add brakepress cancellation (#451) 2020-02-26 18:19:18 -08:00
Andre Volmensky db94a5b813
Added Nissan safety (#244)
* Added Nissan safety
2020-02-26 11:11:56 -08:00
rbiasini d7f1195d1e
Chrysler Checksum/counter (#450)
* abstract crc function

* counter-checksum for chrysler

* also adding checksum to tests
2020-02-24 16:36:46 -08:00
rbiasini 1b49d3e830
Hyundai: add gas disengage and tests (#447) 2020-02-22 10:13:32 -08:00
Jason Young 598074c192
Volkswagen safety updates: Phase 2 (#445)
* CRC and counter checks, standstill/brake checks

* Clean up a tsk_06 that snuck through

* Be consistent about how we call _msg_esp_05

* Reduce scope: haunted by the ghost of MISRA future

* Improved check/test for in-motion braking

* MISRA styling fix
2020-02-20 13:57:07 -08:00
rbiasini b2ffaae60e
Chrysler: disengage on gas press (#442)
* add gas cancellation for chrysler
* added regr test too
* also add bus checks to chrysler. SHould have been there already
2020-02-19 23:46:38 -08:00
rbiasini 2ebbe3616b
Subaru: disengage on gas press (#446)
* Subaru: check for gas pressed

* added tests

* rx freq check on throttle

* also support for the not yet supported pre-global platform
2020-02-19 19:55:05 -08:00
Jason Young ccf75c456f
Volkswagen safety updates: Phase 1 (#444)
* Checkpoint Panda refactoring updates

* Rename MQB safety tests in preparation for PQ

* Refactor MQB tests, add missing torque test

* Bring in MQB init without CRC LUT setup

* Fix to ACC_06 test case

* Fix to ACC_06 test case

* Tweak comment for clarity

* Drop superfluous return
2020-02-19 12:37:38 -08:00
Arne Schwarck eb5020b7a9
Add the ability to communicate with BSM (#433)
* Add the ability to communicate with BSM

To poll the blind spot sensor 0x750 is required

* Add blindspot monitor communication
2020-02-11 10:15:39 -08:00
robbederks 3b35621671
Grey gps fix (#423)
* Fixed GPS enabling on EON builds

* Bumped version

* Added automated GPS test

* Added import

* Fixed linting
2020-01-13 15:06:35 -08:00
Riccardo fed3aca0da Honda: forward radar_hud msg 2019-12-22 18:42:46 -08:00
rbiasini d301a59d64
WIP: Checksum checks (#403)
* add lag message check for all supported cars
* add checksum and counter checks for toyota and honda
* add rx hook regression tests
2019-12-21 10:25:54 +01:00
Riccardo c08b480cea separate between bosch giraffe and harness hooks. Make tests more thorough 2019-12-20 23:18:20 -08:00
Riccardo 110ca03160 remove long_controls_allowed unused param and reduce technical debt 2019-12-20 16:17:37 -08:00
Riccardo d19fd3e6bd better differentation of honda safety modes 2019-12-20 15:51:32 -08:00
Robbe Derks 50b9066db8 Fixed linting errors 2019-12-13 22:28:06 +01:00
Robbe Derks a648ccae4b Add os import 2019-12-13 21:44:39 +01:00
Robbe Derks 042562ddae Extracted wifi connect from test helpers 2019-12-13 21:38:51 +01:00
Willem Melching 7c13bec09f
Command to get signature (#399)
* Commands to get signature from panda

* does this make misra happy?

* Can I do this in misra?

* this works and makes misra happy

* Add jenkins test for get signature

* Remove comments

* Add comment about code size

* Fix firmware file path
2019-12-09 10:54:48 -08:00
Riccardo df4159c846 Revert "Revert "Register readback on most modules. Still need to convert the other ones (#396)""
This reverts commit 56ec215024.
2019-12-05 14:19:29 -08:00
Riccardo 56ec215024 Revert "Register readback on most modules. Still need to convert the other ones (#396)"
This reverts commit 893e486194.
2019-12-05 13:55:20 -08:00
robbederks 893e486194
Register readback on most modules. Still need to convert the other ones (#396)
* Added an initial working implementation of the register readback and applied it to the LLCAN registers. Also fixed an init bug in CAN.

* Locally disable pylint import error

* Reverted change to CAN-obj->FA1R setting

* Fixed misra compliance

* Changed hash function name

* Fixed CAN filter setting

* Added voltage health test

* Converted ADC to register functions

* Converted clock to use register setters

* Added check to see if fault status is zero after running test

* Converted DAC to use register setters

* Converted fan to use register setters

* Converted gmlan bitbanging to use register setters

* Changed over interrupt driver to use register setters. Also moved some includes and definition places for critical sections

* Fixed build

* Converted LLGPIO to use register setters

* Converted pwm to use register setters

* Fixed cold boot

* Fixed health fault check in automated tests

* Added comment for the future (issue #367)

* Converted RTC driver to use register setters

* Converted SPI to use register setters

* Converted timer driver to use register setters

* Fixed register fault on white pandas and disabled showing of fault for release

* Bump version
2019-12-04 20:42:57 -08:00
Riccardo 6bbae7be2f VW safety: allow cancel spam on both buses to be compatible with camera and gateway integration 2019-12-03 19:48:33 -08:00
robbederks 656f99b080
Interrupt refactor (NVIC_SM_1: #334) and Fault handling (#377) (PR #373) 2019-11-27 18:11:21 -08:00
Riccardo dec565c728 Update Misra test coverage, which now includes rule 2.7 2019-11-27 00:23:32 -08:00
Riccardo 878dd00ac8 solve race condition is relay_malfunction right after changing the relay status by adding a counter 2019-11-26 21:37:01 -08:00
robbederks e1c34a1a29
Panda Jungle testing (#394)
Rebase all open branches on this commit to make sure they are tested correctly!
2019-11-26 16:18:34 -08:00
Robbe 2a093a39f2 Added heartbeat to echo test 2019-11-25 13:09:58 -08:00
robbederks f458d67a7c Add uptime counter to the health packet (#391)
* Added uptime counter to the health packet

* fix tests by setting power save on on EON build
2019-11-21 16:47:49 -08:00
rbiasini 597436d32a
NOOUTPUT safety mode is now SILENT. NOOUTPUT still exists but keeps C… (#388)
* NOOUTPUT safety mode is now SILENT. NOOUTPUT still exists but keeps CAN live

* README mention of 'no output'

* mispelled
2019-11-20 11:56:26 -08:00
Riccardo 8a044b3444 forgot Hyundai: now also using make_msg 2019-11-19 11:33:23 -08:00
Riccardo 4f9c879696 remove abunch of lines from safety regression tests by using common make_msg function 2019-11-19 11:29:04 -08:00
Riccardo d5c772b0b1 Fixe Toyota message white-list 2019-11-18 12:52:31 -08:00
Riccardo b8fe78c3e7 VW is also tested for safety replay 2019-11-17 23:35:16 -08:00
Riccardo 212d336b3d Safety Chrysler: Added cancel spam button check 2019-11-17 22:32:13 -08:00
rbiasini 6249a183d6
tx_hook shall have a white-list of messages (#381)
* Started whitelisting messages

* Also toyota and cadilalc fix

* bug fixes and better checks. Need to figure out a solution for honda

* Whitelist also for subaru

* Added Chrysler as well to whitelist

* And Hyundai too

* now all supported cars should have a whitelist of messages

* Fix linter

* This should fix process replay

* Honda too is now whitelisted

* struct typedef

* Had forgot GM

* had a wrong addr for GM whitelist

* This should fix all the tests

* bump panda
2019-11-17 00:24:19 -08:00
Riccardo e0de1a4fc8 define ALLOW_DEBUG in safety tests 2019-11-15 13:19:02 -08:00
Riccardo e74ed93640 safety tests a bit more simplified 2019-11-15 01:12:54 -08:00
Riccardo 2027765bd0 relay malfunction test centralized 2019-11-15 01:03:34 -08:00
Riccardo 8af1a01ac6 clean up safety tests 2019-11-15 00:52:34 -08:00
rbiasini cfcce8f06b
WIP: Relay malfunction (#384)
* relay malfunction handling. WIP

* more cars to relay_malfunctions

* fixed safety tests

* minor change

* Fix linter

* all cars now have a relay_malfunction safety check

* added relay_malfunction safety test for fwd hooks

* added proper regression tests for relay malfunction to all cars

* temp patch to not fail regression in honda bosch

* also addr 0x194 is some nidec honda is steer control

* proper relay check for honda bosch too
2019-11-15 00:32:45 -08:00
Riccardo d063a18885 Hyundai safety: re-enable button spam safety check 2019-11-13 23:57:29 -08:00
Robbe 26cb4dc48a Fixed pylint error 2019-11-09 14:24:56 -08:00
Robbe e33b4beaa3 Added echo script 2019-11-07 17:45:16 -08:00
Riccardo e8d7ed1d90 Rename function name to not confuse safety_set_mode and set_safety_mode 2019-11-06 14:30:22 -08:00
Comma Device 512ab3f2f0 except Exception 2019-11-06 21:47:18 +00:00
Comma Device 37ce507ae9 py3 all 2019-11-06 21:45:48 +00:00
Riccardo bfd8ff1b18 Update cppcheck commit with more coverage 2019-10-31 13:08:10 -07:00
rbiasini 48d0d0c782
VW button spam: fix safety and add tests (#306)
* VW button spam: fix safety and add tests

* button spam is actually sent on bus 2

* Fix safety test. Still need to add gas safety test

* added gas safety test to VW and using consistent nomenclature

* style fixes
2019-10-29 15:11:42 -07:00
rbiasini a12a148d5f Uno (#274)
* Added uno

* Added usb switch support

* Added PWM and IR power functions

* Implemented bootkick

* Added uno as a new hw type

* Bumped version

* Added fan control and tach readout

* WIP: RTC support

* Working RTC

* Fixed python

* Misra compliance

* Added USB control messages for fan/IR power

* Added USB commands + tests for fan & IR control. Fixed bootstub and pedal compilation

* Added IR and fan to power saving mode

* Changed defaults

* Fix safety considering uno

* passing safety now

* Minor UNO tweaks

* Fixed version

* More minor temporary tweaks

* Removed usb load switch from uno

* Added power control for shutting down the fan completely

* Disable IR LEDs by default

* Fixed linter issue

* Linter fix #2
2019-10-25 16:22:42 -07:00
Riccardo 40075321dc VW: stricter limits to comply with comma safety policy 2019-10-24 19:52:16 -07:00
Riccardo 396d6aad58 safety_replay only installs few extra requirements 2019-10-15 14:30:02 -07:00
Riccardo 25af7d3019 Misra also need python 3 env 2019-10-15 14:25:34 -07:00
Riccardo 7434c5ce28 centralize requirements for tests 2019-10-15 14:21:33 -07:00
Riccardo a0c37c70ab coverage not needed in linter reqs 2019-10-15 14:08:29 -07:00
rbiasini fce38a91d7
Linter python (#299)
* Added pyflakes and Pylint for python

* Actually run linter in CI

* some simple pyflakes changes

* Add flake8 to panda reqs for linter test

* flake8 errors are fixed

* run flake8 in regression tests

* meant to run flake8

* hack to ignore unused import

* bug

* fix bugs in tucan_loopback

* Another fix by using set_safety_mode

* added pylintrc file

* more fixes and enabled pylint as well

* Fix pylint in circleci

* added linter to readme
2019-10-15 14:03:31 -07:00
Riccardo 62e2f5caac update cppcheck commit 2019-10-15 13:57:36 -07:00
rbiasini 6b1f28f574
fix more encoding and some bytes cleanup (#300) 2019-10-15 12:05:33 -07:00
Jason Young 4972376de3 Update VW regression test to follow Comma safety index refactoring (#296)
* Follow along with recent Comma safety index refactoring.
2019-10-10 14:57:16 -07:00
rbiasini f9053f5df4
more Python 3 fixes, attempting to fix jenkins wifi regresison test (#295)
* more Python 3 fixes, attempting to fix jenkins wifi regresison test. Not successful, but closer.
2019-10-10 12:34:52 -07:00
Jason Young 2f9e076289 Panda safety code for Volkswagen, Audi, SEAT, and Škoda (#293)
* Panda safety code for Volkswagen, Audi, SEAT, and Škoda.

* First pass at MISRA compliance.

* Second pass at MISRA compliance.

* Fix scope of violation boolean.

* MISRA doesn't care for implicit cast of unsigned int to boolean.

* Remove superfluous newline.

* Remove unused VW ignition hook code, preserve commentary.

* Add 50% padding to max delta check.

* Add 50% padding to max delta check.

* Add clarity around the origin of our safety constants.

* Update test RT delta to match safety.
2019-10-09 13:54:22 -07:00