mirror of
https://github.com/infiniteCable2/panda.git
synced 2026-02-19 01:33:52 +08:00
Add WiFi support, message counts to can_logger example
This commit is contained in:
@@ -1,27 +1,53 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
from __future__ import print_function
|
||||
import binascii
|
||||
import csv
|
||||
import sys
|
||||
from panda import Panda
|
||||
|
||||
def can_logger():
|
||||
|
||||
try:
|
||||
print("Trying to connect to Panda over USB...")
|
||||
p = Panda()
|
||||
|
||||
|
||||
except AssertionError:
|
||||
print("USB connection failed. Tryining WiFi...")
|
||||
|
||||
try:
|
||||
p = Panda("WIFI")
|
||||
except:
|
||||
print("WiFi connection timed out. Please make sure your Panda is connected and try again.")
|
||||
sys.exit(0)
|
||||
|
||||
try:
|
||||
outputfile = open('output.csv', 'wb')
|
||||
csvwriter = csv.writer(outputfile)
|
||||
#Write Header
|
||||
csvwriter.writerow(['Bus', 'MessageID', 'Message'])
|
||||
print("Writing csv file. Press Ctrl-C to exit...")
|
||||
|
||||
print("Writing csv file output.csv. Press Ctrl-C to exit...\n")
|
||||
|
||||
bus0_msg_cnt = 0
|
||||
bus1_msg_cnt = 0
|
||||
bus2_msg_cnt = 0
|
||||
|
||||
while True:
|
||||
can_recv = p.can_recv()
|
||||
|
||||
for address, _, dat, src in can_recv:
|
||||
csvwriter.writerow([str(src), str(address), binascii.hexlify(dat)])
|
||||
|
||||
if src == 0:
|
||||
bus0_msg_cnt += 1
|
||||
elif src == 1:
|
||||
bus1_msg_cnt += 1
|
||||
elif src == 2:
|
||||
bus2_msg_cnt += 1
|
||||
|
||||
print("Message Counts... Bus 0: " + str(bus0_msg_cnt) + " Bus 1: " + str(bus1_msg_cnt) + " Bus 2: " + str(bus2_msg_cnt), end='\r')
|
||||
|
||||
except KeyboardInterrupt:
|
||||
print("Exiting...")
|
||||
print("\nNow exiting. Final message Counts... Bus 0: " + str(bus0_msg_cnt) + " Bus 1: " + str(bus1_msg_cnt) + " Bus 2: " + str(bus2_msg_cnt))
|
||||
outputfile.close()
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user