-
Notifications
You must be signed in to change notification settings - Fork 791
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
iso-tp: more checks #1487
iso-tp: more checks #1487
Conversation
I think this is fine, sending the initial messages out of band is definitely not the normal situation and I don't have any better ideas on how to handle it.
The asserts are good, something has gone wrong if either get hit. |
This reverts commit ba4c4f1.
* pre-commit: autoupdate hooks (commaai#1536) * Update pre-commit hook versions * fix --------- Co-authored-by: adeebshihadeh <[email protected]> * debug endpoint for custom clock source period (commaai#1538) * debug endpoint for custom clock source period * cleanup --------- Co-authored-by: Comma Device <[email protected]> * Force relay drive (commaai#1539) force drive Co-authored-by: Comma Device <[email protected]> * Stable ADC on H7 (commaai#1540) * 256x oversampling * reduce to 128x * fix misra --------- Co-authored-by: Comma Device <[email protected]> * Harness tick at 8Hz (commaai#1541) harness tick at 8Hz Co-authored-by: Comma Device <[email protected]> * Subaru: cleanup panda logic (commaai#1543) cleanup subaru * Honda: remove duplicated relay transition time check (commaai#1544) already checked * cleanup build, prep for jungle (commaai#1549) * cleanup build, prep for jungle * cleanup * update pedal obj path * fix paths when building with different SConstruct * Move CanHandle to python/ (commaai#1550) * panda jungle (commaai#1547) * mv jungle * match pedal style * fix linter * fix fw path * fix paths * safety! * cleanup old pedal stuff (commaai#1552) * cleanup bus count constant * jungle: SBU provisioning tests (commaai#1553) * jungle: SBU provisioning tests * update can_send * cleanup * fix misra * space * Subaru: Add measured steering angle and vehicle speed (commaai#1528) * correct vehicle speed and add measured angle * misra * misra * common test for angle * PR cleanup * use subaru prefix * clean it up a bit * minimize whitespace diff * need float for deg_to_can * Safety: Add desired angle to safety helpers (commaai#1554) add desired angle * CI: reflash jungle (commaai#1546) * more complete jungle reflash (commaai#1557) * more complete jungle reflash * no spi! * mv flash * mv that * libpanda: silence build warning * jungle: disable transceivers while doing CAN multiplexing (commaai#1555) * init * keep unneeded trans off --------- Co-authored-by: Adeeb Shihadeh <[email protected]> * python: fast reconnect (commaai#1558) * python: replace warning with logging * In-circuit debugging (commaai#1560) * openocd script and readme * do not disable SWD on boot * finish esp/gps removal (commaai#1559) * pedal: fix warning on invalid serial (commaai#1563) * pedal: fix warning on invalid serial * fix * fix: * shouldn't need that * fix --------- Co-authored-by: Bruce Wayne <[email protected]> * switch to ruff linter (commaai#1564) * switch to ruff linter * cleanup * ruff: enable bugbear checks (commaai#1565) * misc hitl test cleanup (commaai#1562) * misc hitl test cleanup * adjust that * update * tres fix --------- Co-authored-by: Bruce Wayne <[email protected]> Co-authored-by: Comma Device <[email protected]> * run HITL tests in parallel (commaai#1566) * seems to work * cleanup * run in ci * fail on first * fix jungle scope --------- Co-authored-by: Bruce Wayne <[email protected]> * don't try to reflash bootstub when reconnecting * Subaru: convert measured angle to centigrees (commaai#1567) convert to centigrees * set OBD to False after test (commaai#1568) * reset OBD after test * add comment * panda: disable transceivers while doing CAN multiplexing (commaai#1556) init * remove safety replay test (commaai#1569) * jungle: add back set_can_sinent() (commaai#1571) init * CI: bump up safety test timeout * panda: add CAN-FD throughput test (commaai#1572) init * GM: clean up longitudinal safety test (commaai#1573) * clean up gm long safety test * move to long base * common brake * GM: move more longitudinal related function into class (commaai#1574) move these into the long test * Safety: generic limit safety check (commaai#1575) * generic limit safety check * fix messagefunction * Safety Tests: Create common gas brake safety test (commaai#1537) * create common gas brake safety test * remove unrelated subaru reference * also test below min_value * better name and hardcoded * use same as acceleration limits * revert gm * remove callable * added common brake test and moved generic test to base safety class * remove duplicate test * wip * wip * rename longitudinalaccelsafety * revert limits correct test * fix controls allowed test * move gm over to long gas brake test * assert that limits are reasonable * fix typing * fix linter again * fix linter again * fix linter again * like to make it clear * typo * fix from merge * clearer names * dont need thesemore --------- Co-authored-by: Shane Smiskol <[email protected]> * Subaru: cancel safety (commaai#1576) * subaru cancel safety * misra * Safety: alternate longitudinal limits (commaai#1577) alt limits * Ruff: propgate config from OP (commaai#1579) * Subaru: prepare tests for long and angle control (commaai#1580) * prepare tests for long and angle control * fix names * jungle: add pin header control (commaai#1581) * init * style * clean + gpio output * safety tests: test one of each MCU type * pre-commit: autoupdate hooks (commaai#1582) Update pre-commit hook versions Co-authored-by: adeebshihadeh <[email protected]> * Safety: Rename alt transmission rpm (commaai#1583) * renamre transmision rpm * consistent whitespace * rename declarations too * Subaru: Global gen1 longitudinal safety (commaai#1500) * Add subaru long TX and RX messages * misra c2012 fix * fix tests * Reorder signals * increase max steering torque * merge fix * merge fix, remove cnt from test * Move subaru logitudinal behind flag, add safety test * update subaru_longitudinal checks * cleanup * Add subaru longitudinal checks * misra fix * Add subaru rpm and throttle rate limit checks * temporary disable cruise throttle and cruise rpm checks * update subaru long test * update longitudinal safety and add tests * fix tests * fix misra * subaru long signals limits checks * Add controls_allowed to long tests * remove unused variables * Add AEB passthru and tests * Add bus * Update AEB logic * Add GEN2 AEB support * syntax fix * Update AEB tests * Add comment for subaru_aeb * Do not check cruise_throttle and cruise_rpm limits when gas pressed * use long limits struct * Subaru: longitudinal checks only when controls_allowed, use ES_LKAS_State LKAS_Alert for AEB * fix misra, set controls_allowed for es_brake test * fix misra * Fix es_brake violation check * Add 0x323 to longitudinal test * Remove stock fcw from aeb signals * Use GET_BYTES * Revert "export FW_PATH" This reverts commit 2a5058d. * Revert "cleanup fw filename conventions (commaai#1434)" This reverts commit 4dd2735. * Revert "Revert "export FW_PATH"" This reverts commit 86e8d32. * Revert "Revert "cleanup fw filename conventions (commaai#1434)"" This reverts commit 5aae671. * cleaned up safety * cleanup subaru long safety * subaru_aeb -> stock_aeb for other platforms * fix unittests * pretty * need to upload this route * remove AEB stuff for now * remove unrequired rpm checks * add comment * added comment about acceleration and use throttle limit for rpm too * inactive_throttle_fix * Update board/safety/safety_subaru.h Co-authored-by: Shane Smiskol <[email protected]> * added comments about long limits * increase max brake * revert that * cleanup * rename throttle to gas * add safety replay * remove todo * rename throttle to gas * move subaru stuff out of common test * PR cleanup * added min gas * reduce initial complexity by not intercepting cruisecontrol or brake_status * create common gas brake safety test * remove unrelated subaru reference * also test below min_value * fix fwd hook test * better name and hardcoded * use same as acceleration limits * revert gm * remove callable * also limit rpm * remove safety replay for now * revert unrelated changes * pr cleanup * remove unused gasbrake safety test * fix ruff linter * PR cleanup * pr cleanup? * added common brake test and moved generic test to base safety class * remove duplicate test * wip * wip * rename longitudinalaccelsafety * revert limits correct test * fix controls allowed test * move gm over to long gas brake test * assert that limits are reasonable * fix typing * fix linter again * fix linter again * fix linter again * like to make it clear * typo * fix from merge * clearer names * dont need thesemore * subaru: use common test * fix merge issue * inactive gas from long limits * fix tests * linter * fix gen2 * fix linter * also test torque when doing long control * renamre transmision rpm * consistent whitespace * rename declarations too * rename transmission rpm * same line * actually is transmission rpm --------- Co-authored-by: Martin Lillepuu <[email protected]> Co-authored-by: Adeeb Shihadeh <[email protected]> Co-authored-by: Shane Smiskol <[email protected]> * Hyundai CAN FD: fix PCM cruise check (commaai#1584) * add pcm * fix * NA * explicitly check cruise status * comment and misra * Subaru: cleanup to prepare for angle controller (commaai#1585) cleanup prepare for angle * add FW size checker script * fix linter * Hyundai: match openpilot standstill check (commaai#1586) * checks that we can replicate in openpilot * clean up * fix test * can simplify this * can also simplify this * Subaru: gen2 long safety (commaai#1587) * setup proper safety for gen2 long * whitespace * misra * alt bus * high beam assist * better names * whitespace * whitespace * whitespace * GM: switch to common gas/brake test (commaai#1578) * gm switch to common gas/brake test * fix typo * add comment about regen * body: set vehicle_moving (commaai#1591) * add vehicle_moving * Update board/safety/safety_body.h * Revert "Subaru: gen2 long safety (commaai#1587)" This reverts commit 2ae2567. * Safety: unify `controls_allowed` with boolean (commaai#1589) * prefix openpilot imports (commaai#1593) * unify CAN/FDCAN odjects naming (commaai#1596) * init * happy MISRA * Subaru: infrastructure to support the new angle based controllers (commaai#1590) * pre-commit: autoupdate hooks (commaai#1600) Update pre-commit hook versions Co-authored-by: adeebshihadeh <[email protected]> * Revert "Subaru: infrastructure to support the new angle based control… (commaai#1601) Revert "Subaru: infrastructure to support the new angle based controllers (commaai#1590)" This reverts commit ea16a54. * H7: clean up peripherals.h (commaai#1597) init * Subaru: add new angle LKAS message definitions (commaai#1602) * just add the lkas message to start * added to tests too * default parameter * peripherals.h clean and duplicates removal (commaai#1599) * init * ULPI disable * not related to clocks * F4: fix UART clocks (commaai#1588) init * MacOS: Homebrew GCC is now version 13 (commaai#1603) * add --minimal build flag (commaai#1604) * H7: few more Kb of RAM found (commaai#1605) * init * remove discard * python lib: close USB context properly (commaai#1606) * python lib: close USB context properly * fix jungle * rm that --------- Co-authored-by: Comma Device <[email protected]> * jungle: fix can_health update on request * Honda: match openpilot button enable check (commaai#1607) * NONE -> not BUTTON * update test and fix safety * cleaner * jungle: force CAN core reset on bus off detection * iso-tp: more sanity checks (commaai#1487) * assert rx not done for single frame to be valid * not sure if this is correct yet * return if updated reverts some of commaai#1314 * Revert "return if updated" This reverts commit ba4c4f1. * iso-tp: return if updated (commaai#1610) return if updated reverts some of commaai#1314 * Toyota: ACC message relay check (commaai#1612) * toyota: add safety for tester present * block ACC_HUD * check stock ECU * clean up * not this * test new addr * comment * rm * cmt * Revert "iso-tp: more checks (commaai#1487)" (commaai#1616) * Revert "iso-tp: return if updated (commaai#1610)" This reverts commit 0eb04fa. * Revert "iso-tp: more sanity checks (commaai#1487)" This reverts commit 01db9e4. * Revert "Toyota: ACC message relay check (commaai#1612)" (commaai#1617) This reverts commit 5a9d8cf. * Update README.md change Mac OS gcc version * H7: decrease FDCAN TX FIFOs to 1 (commaai#1614) init * H7: reorganize RAM (commaai#1619) init * H7: comments for RAM organization reasoning * Hyundai CAN FD: fix boolean types in fwd hook (commaai#1620) * Safety: Utilize boolean values for message block checks in forward hooks * Revert "Safety: Utilize boolean values for message block checks in forward hooks" This reverts commit ee9809d. * others * Revert "others" This reverts commit f64cc1c. * just do hyundai * function to get steering address * unclear if this is cleaner Revert "function to get steering address" This reverts commit 2a2b972. --------- Co-authored-by: Shane Smiskol <[email protected]> * Hyundai CAN-FD: Alternate `LKAS` steering message (commaai#1504) * new steering message! * fix * check tx * fix var * allow all tx to test LFA suppression * Attempt to block laneline information to suppress LFA * Try 0x364 * Block all bus 2/6 messages * Final test to block LFA * Fix tx * in another PR * cleanup * lint * Add new tx to unit test * linter * Apply suggestions * Revert to this * Unnecessary * clean up * rename to hda2 * prototype --------- Co-authored-by: Shane Smiskol <[email protected]> * pre-commit: autoupdate hooks (commaai#1618) * Update pre-commit hook versions * fix ranges --------- Co-authored-by: adeebshihadeh <[email protected]> Co-authored-by: Shane Smiskol <[email protected]> * Subaru: add steer req bit test (commaai#1613) add active bit test * Revert "pre-commit: autoupdate hooks (commaai#1618)" This reverts commit 526588b. * python: show lib and fw versions in error (commaai#1622) * python: show lib and fw versions in error * fix * cleanup * disable forest while it's rebuilt * F4: fix wrong PCLK value (commaai#1608) * fix mistake * clean * F4: fix GMLAN clocks (commaai#1624) * init * misra * Subaru: preglobal check steer req bit (commaai#1626) * GM: check steer req bit (commaai#1629) for gm * Chrysler: check steer bit (commaai#1628) * chrysler * misra * Safety: Convert message addresses from decimal to hexadecimal (commaai#1623) * Safety: Convert message addresses from decimal to hexadecimal * unit tests * fix * In another PR * Safety tests: Convert message addresses from decimal to hexadecimal (commaai#1633) * Subaru: gen2 long safety (commaai#1594) gen2 long safety * VW MQB: Check steer req bit (commaai#1631) vq mqb * fix upstream conflict * sync with upstream * Upstream merge fixes --------- Co-authored-by: Adeeb Shihadeh <[email protected]> Co-authored-by: adeebshihadeh <[email protected]> Co-authored-by: Comma Device <[email protected]> Co-authored-by: Robbe Derks <[email protected]> Co-authored-by: Justin Newberry <[email protected]> Co-authored-by: Shane Smiskol <[email protected]> Co-authored-by: Igor Biletskyy <[email protected]> Co-authored-by: Bruce Wayne <[email protected]> Co-authored-by: Martin Lillepuu <[email protected]> Co-authored-by: Igor Biletksyy <[email protected]> Co-authored-by: Willem Melching <[email protected]>
asserts we can't get multiple single or first frames after calling
send
on IsoTpMessage. with this, we can extend timeouts in openpilot after every response, not just consecutive frames.@gregjhogan do you think it is a good idea to make the user of the class to need to call
send(b'', setup_only=True)
(or similar reset function) every time if they just want to receive?right now you can continually call
iso_tp_message.recv()
and continually get first or single frames, not sure if that's the intended behavior