mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-07-21 01:02:48 +08:00
771a8b7a55
49ffbe99f disable non-universal checks in hyundai safety 3a85f4c25 use whole route when running safety replay from CLI 098f47a5b Fix leaf brake rx check (#547) b8267341a Add pre commit checks + CI (#545) 339976c3c document tx message addresses better (#543) a618e64d1 fix typing errors 9bece64e8 use mazda init 08db086d5 mazda cleanup 89658d0bd Mazda: safety tests add missing safety checks (#525) bdec1398e Fix length of 0x20b in NISSAN_TX_MSGS, wasn't cancelling ACC (#544) b48c74c2e Adding UNO to automated tests (#538) a5802cdd1 Hyundai: remove unused message from RX checks 9ebde2535 Reset state on safety mode init (#542) d4f3f15c3 Refactor addr check (#541) 5210e51b8 remove unused files 065706459 Hyundai checksum (#540) 07e668eca Fast CI (#539) 5307bf727 Fix multi message iso tp requests 0610ed1e2 Hyundai wheel speed counter is actually 4 bits spread over two signals 0d581aa5f dockerfile optimization eaefa2f6c fix docker file path 243a65f30 pull base image 0dd9470af only push to dockerhub from master 55b79b472 GitHub Actions (#535) b2c720bf4 Dos (#533) 01bf74024 remove 0x1BE checksum test 0bd06c9e0 remove 0x1BE check (breaks some vehicles) c31b899a5 honda bosch longitudinal safety 66250c41d Disable docker layer caching (#534) 6b19fa496 include nissan safety in release build db31886ad gate mazda safety behind debug flag e4558c073 Safety: message length check on RX and TX (#529) git-subtree-dir: panda git-subtree-split: 49ffbe99f65e64d23d27d9d3e37f68bc2368dccd
40 lines
1.1 KiB
Python
Executable File
40 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
import threading
|
|
import time
|
|
from typing import Any, List
|
|
|
|
from panda import Panda
|
|
|
|
# The TX buffers on pandas is 0x100 in length.
|
|
NUM_MESSAGES_PER_BUS = 10000
|
|
|
|
def flood_tx(panda):
|
|
print('Sending!')
|
|
msg = b"\xaa"*4
|
|
packet = [[0xaa, None, msg, 0], [0xaa, None, msg, 1], [0xaa, None, msg, 2]] * NUM_MESSAGES_PER_BUS
|
|
panda.can_send_many(packet)
|
|
print(f"Done sending {3*NUM_MESSAGES_PER_BUS} messages!")
|
|
|
|
if __name__ == "__main__":
|
|
serials = Panda.list()
|
|
if len(serials) != 2:
|
|
raise Exception("Connect two pandas to perform this test!")
|
|
|
|
sender = Panda(serials[0])
|
|
receiver = Panda(serials[1])
|
|
|
|
sender.set_safety_mode(Panda.SAFETY_ALLOUTPUT)
|
|
receiver.set_safety_mode(Panda.SAFETY_ALLOUTPUT)
|
|
|
|
# Start transmisson
|
|
threading.Thread(target=flood_tx, args=(sender,)).start()
|
|
|
|
# Receive as much as we can in a few second time period
|
|
rx: List[Any] = []
|
|
old_len = 0
|
|
start_time = time.time()
|
|
while time.time() - start_time < 2 or len(rx) > old_len:
|
|
old_len = len(rx)
|
|
rx.extend(receiver.can_recv())
|
|
print(f"Received {len(rx)} messages")
|