Commit Graph

264 Commits

Author SHA1 Message Date
Adeeb Shihadeh
7f1944cf43 debug endpoint for custom clock source period (#1538)
* debug endpoint for custom clock source period

* cleanup

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-08-01 16:17:42 -07:00
Adeeb Shihadeh
1b706040cd pre-commit: autoupdate hooks (#1536)
* Update pre-commit hook versions

* fix

---------

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
2023-08-01 11:14:27 -07:00
Adeeb Shihadeh
268f6bc2fb python: lock hw device inside loop (#1522) 2023-07-18 00:03:17 -07:00
Adeeb Shihadeh
5d873444b2 SPI: connect by VERSION command (#1495)
* SPI: connect by VERSION command

* shorter timeout

* add exception

* simple test

* fallback

* bootstub check

* update comments

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-07-16 19:33:18 -07:00
Cameron Clough
0c33554624 Ford CAN FD safety (#1455) 2023-07-16 15:09:37 +01:00
Robbe Derks
694aae9c26 Faster log retrieval (#1484)
improve get_logs
2023-06-30 17:26:39 +02:00
Igor Biletskyy
a35e9a1edb CAN health: add IRQ call and core reset counters (#1453)
* initial

* old method

* comment
2023-06-28 14:40:00 -07:00
Igor Biletskyy
0f4e8f79f5 add IRQ rate helper function (#1471)
init
2023-06-20 11:47:43 -07:00
Robbe Derks
0cc91a7f7b Logging (#1445)
* try 1

* some fixes

* fix some misra

* first poc working

* more things

* more misra fixes

* fix misra

* add rate limiting

* fix misra

* add some unit tests through libpanda

* add more tests and fix some stuff

* fix misra again

* add startup log hitl test

* list

* don't fail on wrong timestamps

* improvements

* fix tests

* expected logs test?

* not sure why this passed

* oh, it doesn't reset

* only show last few

* guess at expected logs

* needs this

* ugh

* reduce compiler warnings

* adjust expected logs

* this is correct

* is it really 1?

* min max

* reduce spam in SPI test

* some cleanup
2023-06-13 17:00:56 +02:00
Adeeb Shihadeh
4850b13797 python: move wait into connect() (#1456)
* python: move wait into connect()

* cleanup

* set that

* add that back

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-06-11 19:06:46 -07:00
Robbe Derks
b563405904 Fix multiple resets due to not getting an ACK on reset (#1450)
* add send_once

* cleaner

* add debug log

* also in the USB one

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-06-09 16:25:49 +02:00
Adeeb Shihadeh
1a9a94c519 python: add helper to wait until panda comes up (#1447)
Co-authored-by: Comma Device <device@comma.ai>
2023-06-07 19:43:43 -07:00
Adeeb Shihadeh
a29ee424bc python: remove duplicate enter_bootloader (#1442) 2023-06-04 14:54:40 -07:00
Adeeb Shihadeh
2da9b8d173 python: wait on any DFU panda (#1435) 2023-05-23 20:50:09 -07:00
Adeeb Shihadeh
4dd2735e38 cleanup fw filename conventions (#1434)
* cleanup fn

* import os

* fix path
2023-05-21 21:19:19 -07:00
Adeeb Shihadeh
52f96bac68 spi: nack on can tx endpoint if buffer is full (#1426)
* spi: nack on can tx endpoint if buffer is full

* handle in python lib

* fix timeout

* fix timeout

* fix linter

* cleanup

* fix

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-05-19 22:43:34 -07:00
Shane Smiskol
14bd994f83 Ford: add longitudinal safety (#1359)
* add ACCDATA msg

* ford long safety

* long flag

* split stock and op long tests

* use accel limits for brake

* add comment

* fix acceleration limits

fix acceleration limits

* fix gas limits

* temp bug

* fix min gas, allow -0.5 (engine braking?)

* fix test

* fix tests

* yay it caught this

* pylint

* base name

* typing

* Revert "typing"

This reverts commit 7fb5e304cb8eb6c9afff9fbe4266bc0a67f49c68.

* temp fix

* rm line

* this is handled by PandaSafetyTest

* revert

* move

---------

Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
2023-05-18 00:21:29 -07:00
Justin Newberry
0a738b7ee8 Subaru: rename legacy to preglobal (#1415)
* rename

* missing some variables

* fix find/replace error
2023-05-15 17:22:40 -07:00
Robbe Derks
2c937656cf Continuous harness detection (#1402)
* read in mV and make threshold board-dependent

* refactor and add SBU voltages to health

* refactor relay driving

* more refactoring and readout lock

* avoid race condition

* fix misra

* continuous detection

* 1Hz is fine

* another race condition

* use harness detection to trigger bootkick

* update orientation detection test

* more in-depth harness tests

* fix ignition

* fix

* raise threshold
2023-05-08 13:30:23 +02:00
Adeeb Shihadeh
ba5c2948e4 python: default to 60s timeout for recover() (#1394) 2023-05-03 14:15:34 -07:00
Adeeb Shihadeh
3c75a8bc00 add fan stall count to health (#1355)
* add fan stall count to health

* fix misra

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-20 13:30:56 -07:00
Robbe Derks
237ffedcb3 Dos fan fix (#1335)
* hitl fan test

* enable cooldown on dos as well

* small cleanup

* get expected RPM from panda class

* fix

* overshoot test

* fix max RPM getting

* fix percentage

* revert cooldown fix

* add cooldown for dos fan as well

* remove feedforward from the fan controller to eliminate overshoot

* update clip

* cleanup

* add that back

---------

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2023-04-18 14:15:06 -07:00
Adeeb Shihadeh
9cd01ac263 PandaDFU: retry SPI comms (#1348)
* retry

* set exc

---------

Co-authored-by: Comma Device <device@comma.ai>
2023-04-16 14:43:58 -07:00
Adeeb Shihadeh
878e0077ac add tres to internal devices 2023-04-06 20:52:09 -07:00
Adeeb Shihadeh
6f852b44a9 SPI: log checksum errors in health (#1334)
* SPI: log checksum errors in health

* actually send it

* check in hitl teardown

* check that

* fix misra
2023-04-05 22:05:14 -07:00
Adeeb Shihadeh
b6c378ad02 CI: set PYTHONWARNINGS=error (#1323)
* CI: set PYTHONWARNINGS=error

* update resetter

* fix build warnings

* bump jungle

* fix one more

* fix linter

---------

Co-authored-by: Bruce Wayne <batman@comma.ai>
2023-04-02 09:33:35 -07:00
Adeeb Shihadeh
3e89b7127a python: fix libusb deprecation warning (#1302)
* update list

* this one too

* update dfu
2023-04-01 23:09:12 -07:00
Adeeb Shihadeh
7aaca348c2 HITL tests: nose -> pytest (#1301)
* HITL tests: nose -> pytest

* run all

* add back partial tests

* big speed up

* fix skipping

* enable all

* that's expected

* clean up after ourselves

* jungle is fixture

* fix

---------

Co-authored-by: Bruce Wayne <batman@comma.ai>
2023-03-22 21:38:37 -07:00
Shane Smiskol
c83d6894ef Toyota: base LTA safety (#1295)
* part 1 of clean up

* make it work and pass

* remove lta stuff

* remove commented lta tests

* more

* move test back to where it was

* rm line

* rename that

* fix that

* start to add LTA

* angle test

* fix tests and add base stock longitudinal class

* formatting

* clean that up

* convention

* add ALLOW_DEBUG
2023-03-16 22:32:56 -07:00
Adeeb Shihadeh
79210e8c2b faster timeout for initial connect 2023-03-07 15:18:11 -08:00
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
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
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
Adeeb Shihadeh
d15250cb14 Chrysler: add flag for alternate steer limits (#1238) 2023-02-10 22:20:50 -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
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
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
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