Commit Graph

425 Commits

Author SHA1 Message Date
Adeeb Shihadeh
2de7140117 SPI support in bootstub (#1227)
* always build spi

* no dos for now

* spi gpio init

* detect bootstub

* cleanup

* revert that

* move fx stuff

* fix linter

* set erase timeout

* fix types

* cleanup

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-03-07 14:55:15 -08:00
Adeeb Shihadeh
deaad254d9 python: non-zero default timeout (#1279)
* non-zero default timeout

* respect timeout in spi
2023-03-07 14:44:10 -08:00
Adeeb Shihadeh
df7952ec13 python: add helper to check if up to date (#1269)
* python: add helper to check if up to date

* current

* handle is always basehandle

* update that

* Update __init__.py

---------

Co-authored-by: Bruce Wayne <batman@workstation-production.internal>
2023-03-07 13:47:55 -08:00
Adeeb Shihadeh
efb36197bb PandaDFU: SPI support (#1270)
* PandaDFU: SPI support

* get mcu type

* program bootstub

* little cleanup

* more cleanup

* connect by dfu serial

* time to remove that

* none

* fix linter

* little more

* catch

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-03-06 21:52:08 -08:00
Adeeb Shihadeh
18230831f3 PandaDFU: abstract out USB comms (#1274)
* wip

* revert that

* split list + connect

* some more

* mypy fix

* add clear status back

* rename

* cleanup

* cleaner mypy fix

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-03-06 09:24:00 -08:00
Adeeb Shihadeh
946f952aa7 DFU HITL tests (#1276)
* DFU HITL tests

* fix + types

* fix

* clear first
2023-03-05 20:19:27 -08:00
Robbe Derks
d6af117c62 Microsecond timer fix (#1236)
* add microsecond timer readout

* add CI test

* fix
2023-02-14 12:16:15 +01:00
Adeeb Shihadeh
14051f9ce3 Chrysler: revert rate limit increase (#1240)
* Revert "Chrysler: add flag for alternate steer limits (#1238)"

This reverts commit d15250cb14.

* Revert "Chrysler: increase torque rate limits (#985)"

This reverts commit ae051c94a3.
2023-02-13 14:13:40 -08:00
Shane Smiskol
17450b277d Same mypy checks as openpilot (#1233)
* no specific revision for mypy

* bump to ~OP version

* same warnings as openpilot

* ignore

* fix

* rm that

* switch to ignore so mypy lets us know when it's fixed

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-02-11 12:25:13 -08:00
Adeeb Shihadeh
d15250cb14 Chrysler: add flag for alternate steer limits (#1238) 2023-02-10 22:20:50 -08:00
Shane Smiskol
82151aaffe usb handle: ignore types (#1234)
ignore types
2023-02-07 20:02:06 -08:00
Adeeb Shihadeh
6ec0c80754 python: common base handle for SPI + USB (#1231)
* base handle

* usb handle

* rm

* more types
2023-01-28 16:01:54 -08:00
Adeeb Shihadeh
e7f36a2992 python: assume F4 MCU for bootstubs without bcdDevice set (#1229)
* python: assume F4 MCU for bootstubs without bcdDevice set

* cleanup
2023-01-28 14:41:52 -08:00
Adeeb Shihadeh
6ae5212d6a python lib: add SPI bootloader support (#1224)
* talk to spi bootloader

* flashing bootstub

* reset

* get mcu type

* little more

* pull out low level panda comms

* lint

* program app

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-01-28 00:32:07 -08:00
Adeeb Shihadeh
76d0459182 cleanup MCU definitions (#1226)
* cleanup MCU definitions

* rename

* enum

* enum

* fix that
2023-01-26 20:54:11 -08:00
Adeeb Shihadeh
2036533670 python: show SPI pandas in list (#1216)
* refactor connect

* spi list

* add back bcd

* couple fixes

* fix

Co-authored-by: Comma Device <device@comma.ai>
2023-01-22 21:49:14 -08:00
Adeeb Shihadeh
0e5a2a47da python lib: print() -> logging (#1215)
* python lib: print() -> logging

* fstrings are fine
2023-01-15 23:51:25 -08:00
Adeeb Shihadeh
3048760737 SPI: connect by serial/UID (#1213)
* SPI: connect by serial/UID

* cleanup

* not everyone can have spi

* fix that

* move that

* mypy fix

Co-authored-by: Comma Device <device@comma.ai>
2023-01-15 23:30:24 -08:00
Adeeb Shihadeh
b8693da342 add comms handler to get MCU UID (#1212)
* cleanup first

* get uid

* add to bootstub and test

* fix pedal

* match that

Co-authored-by: Comma Device <device@comma.ai>
2023-01-15 20:13:26 -08:00
Willem Melching
fa678e28fc MacOS: no spidev package (#1211) 2023-01-15 12:51:22 -08:00
Adeeb Shihadeh
e83b2189c1 lock spi device during transfers (#1207) 2023-01-14 23:32:17 -08:00
Shane Smiskol
bdf39a451e Panda: context manager support (#1209)
* add __enter__ & __exit__ to Panda

* some examples

* another example

* even more

* use it here too
2023-01-13 16:17:20 -08:00
Robbe Derks
11d90f9e78 No more magic for the can chunks (#1191)
* no more magic

* bump version

* no need for this

* comment cleanup

* add comms_can_reset tests

* we can't ensure this for compatibility reasons

* add CANPacket_t checksum
2023-01-13 10:59:58 -08:00
Robbe Derks
744b21ef69 Bring back green led mode + fix small python lib bug (#1206)
bring back green led mode

Co-authored-by: Panda Provisioning <panda@comma.ai>
2023-01-10 15:09:51 -08:00
Adeeb Shihadeh
0b58cb9e3c lower spi ack timeout 2022-12-20 23:05:04 -08:00
Adeeb Shihadeh
5486eb3845 python lib: add SPI ACK timeout (#1199)
* python lib: add SPI ACK timeout

* fix that

Co-authored-by: Comma Device <device@comma.ai>
2022-12-20 22:07:24 -08:00
Robbe Derks
1d732d4747 F4: Cleanup clock src, second try (#1193)
* F4: cleanup clock source

* little more

* void

* restore the timer setup

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
2022-12-14 15:30:04 +01:00
Adeeb Shihadeh
4edd1a6021 Hyundai: alt steering limits (#1186)
* Hyundai: alt steering limits

* parans
2022-12-02 23:34:06 -08:00
Robbe Derks
288e14cde9 Simple CAN chunking (#1011)
* simple chunking

* make pylint happy

* misra happy?

* good practice anyways since we cast to a uint32_t later

* fix bug dropping packets

* minor fixes + prepare for shared lib testing

* working library now

* first queue test

* can send test

* fix running in github actions?

* add big rx test and fix it

* don't complain about empty buffers

* disable for now

* comment

* test runs

* some cleanup

* merge those

* test works

* rm that

* comment

* proper logging

* makes things too slow

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-11-30 23:38:00 -08:00
Adeeb Shihadeh
88b30e1a84 CAN comms test (#1181)
* CAN comms test

* remove those

* cleanup

* little more
2022-11-30 22:12:28 -08:00
Adeeb Shihadeh
c075050d5d Revert "F4: cleanup clock source (#1160)"
This reverts commit f0f67ccf85.
2022-11-21 20:31:01 -08:00
Adeeb Shihadeh
2e90b6f308 cleanup python lib imports 2022-11-21 16:59:21 -08:00
Adeeb Shihadeh
3df9099660 Misc cleanup (#1161)
* unused python stuff

* green led

* docs cleanup

* little more
2022-11-17 11:46:43 -08:00
Robbe Derks
5aa5f855e4 setup UART for SOM debugging (#1151)
* cleanup external debug serial

* wip: bring up uart7

* more wip

* this does something

* this works

* increase fifo size

* fix misra

* cleanup

* fix misra again

* add SOM debug enum

* reduce SOM buffer on F4

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2022-11-17 17:59:11 +01:00
Adeeb Shihadeh
f0f67ccf85 F4: cleanup clock source (#1160)
* F4: cleanup clock source

* little more

* void
2022-11-17 07:49:26 -08:00
Adeeb Shihadeh
966f7e0539 SPI: fixes + fake bulk transfers (#1150)
* check spi checkusm

* ugh, fix control handler

* fake bulk xfer

* cleanup

* one more

* unused

* fix linter

* some typing

Co-authored-by: Comma Device <device@comma.ai>
2022-11-10 21:34:43 -08:00
Shane Smiskol
ca681ff829 Hyundai: CAMERA_SCC works on both safety modes (#1139)
* Make camera SCC work on both safety modes

* update in safety

* move to common
2022-11-07 22:13:17 -08:00
Adeeb Shihadeh
0b86dfa5fb python lib: only import spidev as necessary 2022-11-04 11:35:40 -07:00
Adeeb Shihadeh
a42b104c35 SPI handle in python lib (#1131)
* SPI handle in python lib

* add spidev

* unify those

* clean up connect

* clean that up

Co-authored-by: Robbe Derks <robbe.derks@gmail.com>
2022-11-03 22:18:12 -07:00
Adeeb Shihadeh
49e2034098 tres (#1130)
* tres

* pull out chiplet

* add to python lib
2022-11-03 16:34:18 -07:00
Jason Shuler
cf4aa6bb30 GM: longitudinal support for camera-integrated cars (#1014)
* Allow brake TX on PT bus

* Initial Panda GM cam harness support
 * Complete rewrite / simplification
 * Add param for cam harness (default is OBD2)
   - Forward btw 0 and 2
   - Filter LKAS and optionally ACC from cam
 * Add param for stock ACC
   - Allows ACC on PT bus when set, not otherwise
   - Allows ACC from cam when set, not otherwise
 * Add temporary WIP EPS timing workaround in ifdef

* Remove keepalive; regen == braking

* Fix MISRA violations

* EPS timing opt-in by param

* Minor clean up

* remove timing code for readability

fix and formatting

* we only need to send one message if cam harness and stock long

* Simplify params

* Removed dup brake msg

* revised params, split 3-ways

* add test

* clean up a bit, no need to send ACC yet

like this

* split out button enable and pcm enable into seperate tests

* some formatting

some formatting

* GM CAM uses PCM cruise for controls_allowed

* fix gas safety tests

* misra

* fix static analysis

comment

* fix brake pressed

* Add OP VOACC override stock cam

* Add VOACC safetyparam to init.py

* openpilot long safety

* do this in another PR

* add back

* add safety tests

* rename

* struct for safety

* not used

* temporary fault fix

* adjust max gas

* allow PSCMStatus in long mode

* stash

* fix max gas

* fix and clean up tests

* clean up longitudinal tests into a common class

* fix pylint

* subclass

* clean that up

* rm

* blocking

* comment

* comment

* lower case

* brake bus

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2022-11-01 00:58:18 -07:00
Adeeb Shihadeh
622ce923e9 Hyundai: share flags with CAN-FD platform (#1099)
* Hyundai: share flags with CAN-FD platform

* update flags there
2022-10-12 20:29:15 -07:00
Greg Hogan
2f3e2825e5 CAN-FD non-ISO support (#1082)
CAN FD non-ISO support
2022-10-12 15:28:20 -07:00
Adeeb Shihadeh
ffb3109e28 Hyundai: HDA2 longitudinal control support (#1096)
* ev6 long

* update steering
2022-10-11 20:50:23 -07:00
Shane Smiskol
3334dc21f5 IsoTpMessage: parameterize separation time (#1088)
* parameterize separation time

* take in seconds and convert

* fix

* define once
2022-10-05 16:35:28 -07:00
Shane Smiskol
cffc41e878 Specify IsoTpMessage keywords 2022-10-05 16:22:53 -07:00
Shane Smiskol
7d196264a4 IsoTpMessage: param for single frame flow control (#1079)
* iso-tp: request a single frame at a time

* behind param

* this might be more clear

* like this better

* fit the theme

* revert this change
2022-10-05 16:12:24 -07:00
Adeeb Shihadeh
e987e6c639 add pandaState.safetyRxChecksInvalid field (#1083)
* add fault for invalid safety RX checks

* fix test build

* debug

* fix debug

* fix test

* just a bool in health
2022-10-03 16:05:16 -07:00
Shane Smiskol
1910db8d4c IsoTpMessage.send: setup_only argument (#1081)
* some fixes

* some fixes

* revert to tx not done

* this should work

* correct debug prints

* not true

* revert this

* setup_only
2022-09-30 14:29:41 -07:00
Shane Smiskol
51f023bc66 IsoTpMessage: return if message updated (#1078)
* extend timeout for each message/frame (not multi-frame full response)

* linter
2022-09-27 18:08:09 -07:00