add exit to datalogger, fix dataref fetch
This commit is contained in:
parent
b52f7293d4
commit
c1251a18fa
@ -3,7 +3,8 @@ from flask_socketio import SocketIO
|
|||||||
from rendash_main import RenDash
|
from rendash_main import RenDash
|
||||||
from csv import writer, QUOTE_MINIMAL
|
from csv import writer, QUOTE_MINIMAL
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from time import time_ns, sleep
|
from time import time_ns
|
||||||
|
from os import _exit
|
||||||
|
|
||||||
import mod_globals
|
import mod_globals
|
||||||
|
|
||||||
@ -28,21 +29,20 @@ def mainloop():
|
|||||||
log_filename = f'../logs/{datetime.now().strftime("%m-%d-%Y %H:%M:%S")}.csv'
|
log_filename = f'../logs/{datetime.now().strftime("%m-%d-%Y %H:%M:%S")}.csv'
|
||||||
print("Creating log on file: " + log_filename)
|
print("Creating log on file: " + log_filename)
|
||||||
file = open(log_filename, "w")
|
file = open(log_filename, "w")
|
||||||
csv_writer = writer(
|
csv_writer = writer(file, delimiter=" ", quotechar="|", quoting=QUOTE_MINIMAL)
|
||||||
file, delimiter=" ", quotechar="|", quoting=QUOTE_MINIMAL
|
|
||||||
)
|
|
||||||
csv_writer.writerow(["time", "freeze"] + watched_datarefs)
|
csv_writer.writerow(["time", "freeze"] + watched_datarefs)
|
||||||
|
|
||||||
print("Starting data loop")
|
print("Starting data loop")
|
||||||
while running:
|
while running:
|
||||||
frame = [
|
frame = [
|
||||||
dash.get_ecu_dataref(watched_ecu, dataref)[0] for dataref in watched_datarefs
|
dash.get_ecu_dataref(watched_ecu, dataref)[0]
|
||||||
|
for dataref in watched_datarefs
|
||||||
]
|
]
|
||||||
socket.emit("frame", {"frame": frame})
|
socket.emit("frame", {"frame": frame})
|
||||||
if should_log:
|
if should_log:
|
||||||
csv_writer.writerow([(time_ns() // 1_000_000), freeze] + frame)
|
csv_writer.writerow([(time_ns() // 1_000_000), freeze] + frame)
|
||||||
freeze = 0
|
freeze = 0
|
||||||
sleep(0.05)
|
socket.sleep(0.05)
|
||||||
|
|
||||||
if should_log:
|
if should_log:
|
||||||
file.flush()
|
file.flush()
|
||||||
@ -55,6 +55,7 @@ def freeze_event():
|
|||||||
|
|
||||||
freeze = 1
|
freeze = 1
|
||||||
|
|
||||||
|
|
||||||
@web.get("/ecus")
|
@web.get("/ecus")
|
||||||
def get_ecus():
|
def get_ecus():
|
||||||
ecus = dash.get_ecu_names()
|
ecus = dash.get_ecu_names()
|
||||||
@ -120,6 +121,13 @@ def stop():
|
|||||||
def index():
|
def index():
|
||||||
return send_file("index.html")
|
return send_file("index.html")
|
||||||
|
|
||||||
|
@socket.on("exit")
|
||||||
|
def exit_logger():
|
||||||
|
try:
|
||||||
|
socket.stop()
|
||||||
|
except Exception as e:
|
||||||
|
print(e)
|
||||||
|
_exit(0)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
socket.run(web, "0.0.0.0", 5000)
|
socket.run(web, "0.0.0.0", 5000)
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
<body>
|
<body>
|
||||||
<div id="app">
|
<div id="app">
|
||||||
<h1>Ecu Watcher</h1>
|
<h1>Ecu Watcher</h1>
|
||||||
|
<button @click="sendExit">Exit</button>
|
||||||
<div v-if="!ecuSelected">
|
<div v-if="!ecuSelected">
|
||||||
<h2>Select ECU</h2>
|
<h2>Select ECU</h2>
|
||||||
<select v-model="selectedEcu" @change="fetchStatesAndParameters">
|
<select v-model="selectedEcu" @change="fetchStatesAndParameters">
|
||||||
@ -115,6 +116,9 @@
|
|||||||
},
|
},
|
||||||
async sendFreeze() {
|
async sendFreeze() {
|
||||||
socket.emit("freeze");
|
socket.emit("freeze");
|
||||||
|
},
|
||||||
|
async sendExit() {
|
||||||
|
socket.emit("exit");
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user