Commit Graph

87 Commits

Author SHA1 Message Date
Jason Wen ca8c74bc0d MADS: Use modern button events parsing 2024-07-29 06:21:01 -04:00
Jason Wen 9e3f57d53e Merge branch 'master' into SP-59-sync-priv-20240507 2024-05-09 15:48:29 -04:00
Justin Newberry b0eb3ba4f4 cars: platform enums -> prepend brand name (#31927)
* with brand name

* migrate

* Fix

* fixes

* more

* passes

* fix

* fix the doc

* collects

* these too

* more stuff

* body exception :/

* more

* hardcode i guess

* update ref

* toyota

* more toyota

* and here

* final!

* fix notebooks and ccs

* move this here
2024-03-19 17:29:50 -07:00
thenhnn 489528dcae PlatformConfig: automatically get platform_str from the enum name (#31868)
* get platform_str from the enum name

* fix tests

* add migration table

* remove impossible todo

* Add link to PR in MIGRATION table

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

* Remove useless brand name comments and rename RAM_1500 to RAM_1500_5TH_GEN

* rename RAM_HD to RAM_HD_5TH_GEN

* rename references to RAM_HD and RAM_1500

* change "mock" to "MOCK" and rename torque data of Nissan Leaf 2018 IC

* remove MOCK from fingerprints.py

* change hard-coded car model in test_can_fingerprint.py/test_timing

* migration

* update ref

* space

* prius

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: justin newberry <justin@comma.ai>
Co-authored-by: Justin Newberry <jnewberry0502@gmail.com>
2024-03-19 11:16:02 -07:00
Justin Newberry 655e5f7c3e rename CarInfo to CarDocs (#31879)
car info to car docs
2024-03-15 11:45:44 -07:00
Shane Smiskol bdae188c6f docs: don't support multi-type car info (#31875)
don't support multi-type car info
2024-03-15 00:11:41 -07:00
Shane Smiskol 99610c8819 Revert "common PlatformFlags base class + test for < 32 bits" (#31793)
Revert "common PlatformFlags base class + test for < 32 bits (#31779)"

This reverts commit 8ba5d660f3.
2024-03-08 00:15:21 -08:00
Justin Newberry 8ba5d660f3 common PlatformFlags base class + test for < 32 bits (#31779)
* add 32 bit check

* space

* this is not required

* jk yes we do
2024-03-07 14:01:28 -08:00
Shane Smiskol 78a46ce724 car values formatting (#31747)
values formatting
2024-03-06 15:47:44 -08:00
Justin Newberry 25ccb2426c cars: remove CAR_INFO map (#31739)
* no carinfo map

* smaller diff

* not on mock
2024-03-06 11:22:12 -08:00
Shane Smiskol 638aaa9e53 Platform configs: move tire stiffness into config (#31678)
* first one to open PR

* mazda

* oh it is

* fix gm car specs and create MazdaCarSpecs

* fix

* do honda

* ruff
2024-03-05 15:10:58 -08:00
Shane Smiskol eaf3332599 Revert "mazda"
This reverts commit b57d371626.
2024-03-01 21:37:29 -08:00
Shane Smiskol b57d371626 mazda 2024-03-01 21:37:09 -08:00
Justin Newberry b0eae8c1b7 platformconfig and carspecs are now required, carspecs no longer kwarg (#31667)
* required

* mock can be a platform!

* default is mock

* fix that

* and that one
2024-03-01 11:31:51 -08:00
Shane Smiskol 690dc55ea2 Car flags: label static flags (#31639)
* comment, consistent source

* no caps not global

* no field

* label rest
2024-02-29 15:36:40 -08:00
Justin Newberry e122f1d749 Mazda: move to platform config (#31647)
* mazda platform config

* update ref
2024-02-29 11:14:00 -08:00
Jason Wen f588a0367b Merge branch 'master' into sync-priv-20240227
# Conflicts:
#	panda
#	selfdrive/car/chrysler/values.py
#	selfdrive/car/ford/carstate.py
#	selfdrive/car/ford/interface.py
#	selfdrive/car/ford/values.py
#	selfdrive/car/interfaces.py
#	selfdrive/car/nissan/values.py
#	selfdrive/car/subaru/interface.py
#	selfdrive/car/volkswagen/interface.py
#	selfdrive/car/volkswagen/values.py
#	selfdrive/controls/radard.py
#	selfdrive/manager/process.py
#	selfdrive/modeld/modeld.py
2024-02-27 21:22:16 -05:00
Cameron Clough 995250ae49 use pyupgrade to update to new typing syntax (#31580)
* add pyupgrade hook

* run pyupgrade (pre-commit run -a)

* ruff --fix

* Revert "add pyupgrade hook"

This reverts commit 56ec18bb6b8602a0b612f3803d96cdad14b52066.

* revert changes to third_party/

* manual type fixes

* explicit Optional wrapping capnp objects
2024-02-24 16:41:23 -08:00
Jason Wen 75b38db870 Merge branch 'sync-20240201' into sync-priv-20240201 2024-02-07 22:49:01 -05:00
Shane Smiskol f0b6f48948 Mazda: use bus 0 to fingerprint (#31261)
* for testing

* switch OBD port to logging

* revert

* cmt

* cmt

* remove OBD query

* Update selfdrive/car/mazda/values.py
2024-02-01 00:28:00 -08:00
Justin Newberry 28eed156e0 Move all fingerprints to fingerprints.py (#30790)
* move fingerpints

* fix circular imports

* fix circular imports

* fix auto fingerprint

* fix those tests

* and controlsd

* add labeler rule

* no defaultdict
2023-12-18 14:04:27 -08:00
Lukejb14 76c53e4742 Add 2021 Mazda CX-5 engine fingerprint (#30616) 2023-12-11 15:41:51 -08:00
Tam Chau 96eee13836 Mazda: add CX5 2022 fingerprint values (VN 2023) (#30342)
Add mazda cx5 VN 2023 values
2023-11-14 03:36:26 -08:00
Jason Wen ccfb7ff153 Merge branch 'master' into sync-priv-20231016
# Conflicts:
#	panda
#	selfdrive/car/chrysler/values.py
#	selfdrive/car/ford/values.py
#	selfdrive/car/hyundai/hyundaican.py
#	selfdrive/car/hyundai/interface.py
#	selfdrive/car/toyota/interface.py
#	selfdrive/car/toyota/values.py
#	selfdrive/controls/controlsd.py
#	selfdrive/controls/plannerd.py
#	selfdrive/sentry.py
#	selfdrive/ui/qt/offroad/settings.cc
2023-10-16 11:52:39 -04:00
Jason Wen 6c67abe65f Revert "Sync master-priv with public sunnypilot:master" 2023-10-16 04:53:55 +00:00
DevTekVE f885863e1e Sync master-priv with public sunnypilot:master 2023-10-13 16:40:08 +00:00
Justin Newberry 6ae465e4af Use StrEnum for car classes (#30114)
* str enum

* import sort

* fix car helpers

* fix that

* fix static analysis
2023-09-30 17:15:34 -07:00
Shurui Gui 0d7272ea19 Mazda: add FW versions for CX-5 2024 (#30093)
* Port CX-5 2024

* update docs

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-09-29 00:59:23 -07:00
Jason Wen 9219b7966c Merge branch 'master' into dev-priv/master-test
# Conflicts:
#	panda
#	release/build_release.sh
#	selfdrive/car/car_helpers.py
#	selfdrive/car/chrysler/carcontroller.py
#	selfdrive/car/chrysler/carstate.py
#	selfdrive/car/chrysler/interface.py
#	selfdrive/car/ford/carstate.py
#	selfdrive/car/ford/interface.py
#	selfdrive/car/gm/carcontroller.py
#	selfdrive/car/gm/carstate.py
#	selfdrive/car/gm/interface.py
#	selfdrive/car/honda/carcontroller.py
#	selfdrive/car/honda/interface.py
#	selfdrive/car/hyundai/carcontroller.py
#	selfdrive/car/hyundai/carstate.py
#	selfdrive/car/hyundai/hyundaican.py
#	selfdrive/car/hyundai/interface.py
#	selfdrive/car/interfaces.py
#	selfdrive/car/mazda/carcontroller.py
#	selfdrive/car/mazda/carstate.py
#	selfdrive/car/mazda/interface.py
#	selfdrive/car/nissan/carcontroller.py
#	selfdrive/car/nissan/interface.py
#	selfdrive/car/subaru/carstate.py
#	selfdrive/car/subaru/interface.py
#	selfdrive/car/subaru/subarucan.py
#	selfdrive/car/toyota/carcontroller.py
#	selfdrive/car/toyota/carstate.py
#	selfdrive/car/toyota/interface.py
#	selfdrive/car/toyota/toyotacan.py
#	selfdrive/car/volkswagen/carcontroller.py
#	selfdrive/car/volkswagen/carstate.py
#	selfdrive/car/volkswagen/interface.py
#	selfdrive/controls/controlsd.py
#	selfdrive/controls/lib/latcontrol_torque.py
#	selfdrive/controls/lib/lateral_planner.py
#	selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py
#	selfdrive/controls/lib/longitudinal_planner.py
#	selfdrive/locationd/paramsd.py
#	selfdrive/manager/manager.py
#	selfdrive/manager/process.py
#	selfdrive/manager/process_config.py
#	selfdrive/sentry.py
#	selfdrive/ui/SConscript
#	selfdrive/ui/qt/home.cc
#	selfdrive/ui/qt/maps/map_settings.cc
#	selfdrive/ui/qt/maps/map_settings.h
#	selfdrive/ui/qt/offroad/settings.cc
#	selfdrive/ui/qt/onroad.cc
#	selfdrive/ui/qt/onroad.h
#	selfdrive/ui/qt/util.cc
#	selfdrive/ui/qt/util.h
#	selfdrive/ui/soundd/sound.h
#	selfdrive/ui/ui.h
#	system/version.py
2023-09-05 20:17:19 -04:00
Adeeb Shihadeh a9626f95b6 add openpilot prefix to imports (#29498)
* add openpilot prefix to imports

* more

* more

* fix docs

* fix linter

* bump submodules

* fix patched tests

* update dynamic imports

* debug

* Revert "debug"

This reverts commit db5e13b9911cc74438bee123bc3430da6c31b24b.

* fix pm test
2023-08-20 20:49:55 -07:00
Jason Wen 31b29bc094 Merge branch 'master' into dev-priv/master 2023-08-02 12:58:28 -04:00
Pavel Galashin 9992f852b2 Mazda: fingerprint 2023 Mazda CX-5 Carbon Edition (#29092)
fingerprint 2023 Mazda CX-5 Carbon Edition
2023-07-31 19:51:44 -07:00
b801r 4b0cdf71f6 Fingerprint - 2020 Mazda CX-9 (#28805)
139b81648a954ae7|2023-07-04--13-46-16

VIN: JM3TCBDY7L0412945

Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
2023-07-10 11:07:56 +01:00
weapons eeccb09504 Mazda CX-5 2022 fingerprint (#28803)
Update values.py

Updated Mazda CX-5 2022 fingerprint for my vehicle (2023 Mazda CX-5 UAE).
2023-07-07 02:10:24 -07:00
Shane Smiskol d59172bc19 Mazda: query and log FW on bus 0 (#28569)
* mazda: query FW on bus 0

* update refs
2023-06-29 00:14:09 -07:00
Maxime Desroches e85acfa365 car: use default_factory for mutable fields in dataclasses (#28669)
* call me

* copy
2023-06-27 16:48:43 -07:00
Jason Wen 6df086aa82 Merge branch 'master' into dev-priv/master
# Conflicts:
#	panda
#	selfdrive/car/honda/interface.py
#	selfdrive/car/hyundai/hyundaican.py
#	selfdrive/car/mazda/carstate.py
#	selfdrive/car/nissan/nissancan.py
#	selfdrive/car/subaru/carcontroller.py
#	selfdrive/car/subaru/subarucan.py
#	selfdrive/car/volkswagen/mqbcan.py
#	selfdrive/car/volkswagen/pqcan.py
#	selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py
#	selfdrive/controls/lib/longitudinal_planner.py
#	selfdrive/ui/SConscript
#	selfdrive/ui/qt/offroad/settings.cc
#	selfdrive/ui/qt/onroad.cc
#	selfdrive/ui/translations/main_de.ts
#	selfdrive/ui/translations/main_ja.ts
#	selfdrive/ui/translations/main_ko.ts
#	selfdrive/ui/translations/main_zh-CHS.ts
#	selfdrive/ui/translations/main_zh-CHT.ts
2023-06-22 15:14:15 -04:00
Jason Wen 9cdb838557 Controls: Custom Stock Longitudinal Control (#61)
* Custom Stock Longitudinal Control - base

* HKG

* simpler

* expose toggle

* allow events and engagements

* gate hysteresis for now

* screen tap SLC logic

* Honda

* update with submaster

* Revert "simpler"

This reverts commit 61b9a02faec721d4460c50c6e3f81b7d459d506b.

* send to cereal

* handle new pcm cruise engagement on HKG

* small cleanup

* define vehicle-specific lowest set speed

* not fitting

* new logic to help with weird rapid spam

* comment

* gaspressed don't override

* slow down button send when 2 values away

* less complex

* round them up

* Revert "less complex"

This reverts commit d850c404cccca5940f4e861c5df0317a38a4ab6b.

* gotta convert

* only slow down for slc and normal

* gaspress allow override

* no delay

* gate behind custom stock long

* add hysteresis to curve speed button sends

* remove limiting for Honda

* Revert "remove limiting for Honda"

This reverts commit b50f6199508e313fa1a30e1ab74970c507d89d78.

* 20/4 hz

* 25 times, just like old times

* god damn slow it down

* faster

* a tad bit faster

* slower at the end

* Volkswagen

* more checks

* log vw customs stock long

* change it up

* change it up for vw checks

* oops

* make sure it sends 10 times before changing to another button sets

* unnecessary

* use different count

* better logic

* bring back speed_diff

* vw: faster

* chrysler support

* mazda support

* fixup! chrysler support

* bump panda

* bump panda

* fix upstream merge

* Enable for Mazda

* initial and lowest set speed for all supported brands

* use buttonEvents from carstate for FCA and Mazda

* gate this behind non PCM only

* lower calls

* fix counter in button send

* log FCA and Mazda

* format

* just send one copy

* FCA: make SET+ set instead of resume

* Nicki Minaj Model (#28218)

* New model: 2ff7490f-8a2f-4c0d-87a8-b0fa3a4a6a71

* Updated model_replay_ref_commit

(cherry picked from commit 328b5d9d47)

* Revert "FCA: make SET+ set instead of resume"

This reverts commit 523a0537b728e8243e9cecb47169799d519aac3f.

* try this out

* try to match jvepilot's logic

* send with extra incrementing counts

* Revert "Revert "FCA: make SET+ set instead of resume""

This reverts commit f414a51e784b040d0f04881adcfc78d7faacda2a.

* have to block it

* lower send at 4 Hz

* can't be int

* 10 Hz max, 1 copy

* mazda send at 10 Hz

* chrysler at 10 hz

* send at 10 Hz

* remove this check for vw for now

* hkg can-fd go back to 4Hz, 1 copy

* hkg can-fd go back to 5Hz, 1 copy

* vw: different send freq logic

* Set cruise button every frame for FCA and HKG

* Set cruise button every frame for Mazda

* Revert "Set cruise button every frame for HKG"

* can't use brackets

* FCA: only send if counter has changed

* HKG CAN-FD: only send if counter has changed

* only up button frame if needed

* Revert "Set cruise button every frame for FCA"

* HKG CAN-FD: fix name

* FCA: handle resume button press engage cruisestate enabled

* FCA: separate RAM and non-RAM

* bump panda (test CAN Bus Disconnected bad commit)

* bump panda

* bump panda

* Revert "Nicki Minaj Model (#28218)"

This reverts commit 348f68b68c0bd2fcb6fdd6269e911d63ada968b4.

* gate behind customStockLong

---------

Co-authored-by: Mitchell Goff <mitchellgoffpc@gmail.com>
2023-06-08 23:10:48 -04:00
Shane Smiskol 024abe6455 car docs: document parts of parts (#28292)
* more stuff

* even more

* all parts func

* start to use it

* include self in parts

* use car_parts_new

* not used

* more usages

* remove get_parts

* remove more commented stuff

* remove iter

* clean up some more stuff

* more

more

* ford

* optional

optional

* nissan

* use new classes

* fix tests

* fix

* order

* no more required

* connector

* CARS.md

---------

Co-authored-by: Maxime Desroches <desroches.maxime@gmail.com>
2023-05-31 21:30:50 -07:00
Maxime Desroches 9f5f8b603c car docs: list all needed hardware (#28212)
* generic car parts

* better carparts

* add part type

* more tests

* multiple enums

* unit tests

* just check isinstance

* better name

* remove _connector suffix

* remove those hyundai lines

* remove default arg

* Revert "remove default arg"

This reverts commit 139650a3b6b94358c3b9b12bb5fbe0a326d7abad.

* cleaner code structure

* use fingerprint

* review

* abstrac data class + common

* no more dataclass

* conflict

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-05-22 10:17:33 -07:00
Maxime Desroches 70677fe5fc add harness kit content to the doc (#28139)
* add harness kit content to the doc

* parts as enum

* nissan

* merge column

* rename column

* scaling

* scaling again

* 500px

* align text

* more px

* add style

* more width

* more

* more

* smaller text

* make all text smaller

* prev width

* default list

* remove hidden a ref

* try to remove again

* revert

* replace harness with harness_kit

* try fix

* cleaner

* center everything

* make pylint happy

* allow more than 1 of each parts

* use copy module

* review

* testing spacing

* revert

* bigger text

* formating

* split harness col lines

* remove print

* resolve

* rename to view

* keep formating in template

* simplify

* add unit test

* more generic way

* better

* harness connector only

* comment

* review

* put back harness parts

* missing dash

* too much space

* don't reload when clicking

* shorter comment

* only last line

* generate

---------

Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-05-15 15:33:54 -07:00
Jafar Al-Gharaibeh 97aeb83f95 Mazda: CX-9 2022, Mazda6 2018 FW (#27918)
* Mazda: CX-9 2022 FW

dongle-id: 7200177292912f30

Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com>

* Add mazda 6 2018 FW FP

dongle id: 0383a108994bd18b

---------

Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com>
Co-authored-by: Samuel <samuel95_54@hotmail.com>
2023-04-17 23:11:38 -07:00
Saber422 18f49b4541 MAZDA: add missing 2018 Mazda6 wagon FW (#27863)
route name:79e2c7ffb9ae445d|2023-04-10--21-58-55--0
2023-04-10 19:10:36 -07:00
Shane Smiskol aab33b1c5f Lateral jerk unit test (#25759)
* stash

* more test

* less test

* clean test

* no angle

* add tolerance

* fix gm

fix gm

* test both

* lower some rates on hkg

* stash

* simpler

* bump panda

* Revert "bump panda"

This reverts commit f2137c221145cca723fe6ee3378ba947b7061965.

* only torque

* make kona pass

* duplicate __init__

* move

* half clean up

* half clean up

* more clean up

* more clean up

* fix static analysis

* calculate over 0.5 seconds

* limit to max steer

* type annotation

* calc once
2022-12-15 21:52:07 -08:00
alancyau 9c62513ffa Mazda: Add 2023 CX9 fw (#26704)
* Mazda: Add 2023 CX9 fw

DongleID: 629c4aced073d15a
Discord User: bsk#7841

* Attempt to steer below 28mph for CX9

* undo comment

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2022-12-07 16:50:14 -08:00
alancyau 47977b2c0e Mazda: Add support for 2023 CX9 in CARS.md (#26717)
* Mazda: Add support for 2023 CX9

See https://github.com/commaai/openpilot/pull/26704 for the 2023 CX9 firmware.

* update values

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-12-06 16:37:18 -08:00
Jafar Al-Gharaibeh 1be4150089 Mazda: Add CX-5 2023 to supported cars (#26182)
* Mazda: Add CX-5 2023 to supported cars

Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com>

* add missing cam fw

Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-10-25 15:32:49 -07:00
Jafar Al-Gharaibeh 63035e535b Mazda: add missing CX5 2021 FW (#25477)
dongle-id: 82c6d952da5e2122

Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com>

Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
2022-10-20 19:50:42 -07:00
Shane Smiskol 0ef6bb48df FPv2: move car-specific configuration into interfaces (#25711)
* Add VMCU address for EV6

* Rename vmcu

* add to tests

add to tests

* rename to more generic name

* more explicit

* remove print

* Like this much better, removes subtle fingerprinting problems

* clean up

* add test and clean up

* remove hyundai stuffs

* global

* Fpv2Config class

* fix missing fw versions from import order

* unused

* revert for now

* test for fpv2 configs with subtests

* subtests don't work that way

* do toyota as an example

* revert

revert

* do chrysler

* do rest

* stash

* much smaller of a diff than the alternative

* remove unused test

* fix tests

* remove brand from Request

* Make StandardQueries class

* add missing_ecus

clean up

* rename file

* unused

* test implemented

* add comment and rename

add comment and rename

add comment and rename

* should be impossible now

* this is a fixme

* rename to fw_query

* rename this too

* and this

* move vin queries to class

* order

* can use p16!

* formatting

* whoops, this wasn't gated on not len(found_versions)

* make this clear

* Standardize manufacturer software version query
2022-09-09 16:24:29 -07:00
Cameron Clough e9c87daef6 rename esp ECU to abs (#25640)
* rename esp ecu to abs

* bump cereal
2022-09-07 14:25:57 -07:00