gotzl / acctelemetry

Display telemetry data recorded by Assetto Corsa Competizione
GNU General Public License v3.0
39 stars 11 forks source link

Not Receiving Telemetry Data #4

Open Spacefreak18 opened 1 year ago

Spacefreak18 commented 1 year ago

I'm having some trouble getting this to work.

I had to force certain versions of the dependencies, that wasn't much of an issue.

It could be that I'm running AC and not ACC, I wanted to atleast get something to work, they use the same file names, but the structures are different.

2022-11-15 09:28:52,905 error handling message message: Message 'PATCH-DOC' content: {'events': [{'kind': 'MessageSent', 'msg_type': 'bokeh_event', 'msg_data': {'event_name': 'button_click', 'event_values': {}}}], 'references': []} error: KeyError('lap') Traceback (most recent call last): File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/server/protocol_handler.py", line 90, in handle work = await handler(message, connection) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/server/session.py", line 67, in _needs_document_lock_wrapper result = func(self, *args, **kwargs) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/server/session.py", line 261, in _handle_patch message.apply_to_document(self.document, self) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/protocol/messages/patch_doc.py", line 100, in apply_to_document doc._with_self_as_curdoc(lambda: doc.apply_json_patch(self.content, setter)) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/document/document.py", line 1150, in _with_self_as_curdoc return f() File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/protocol/messages/patch_doc.py", line 100, in doc._with_self_as_curdoc(lambda: doc.apply_json_patch(self.content, setter)) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/document/document.py", line 398, in apply_json_patch self._trigger_on_message(event_json["msg_type"], event_json["msg_data"]) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/document/document.py", line 687, in _trigger_on_message cb(msg_data) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/document/document.py", line 354, in apply_json_event model._trigger_event(event) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/util/callback_manager.py", line 85, in _trigger_event self._document._with_self_as_curdoc(invoke) File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/document/document.py", line 1150, in _with_self_as_curdoc return f() File "/home/racedev/.local/lib/python3.10/site-packages/bokeh/util/callback_manager.py", line 72, in invoke callback() File "/home/racedev/git/acctelemetry/main.py", line 25, in callback lap = int(filter_source.data['lap'][idx]) KeyError: 'lap'

Spacefreak18 commented 1 year ago

fyi, i just guessed at what versions to use...

https://github.com/Spacefreak18/acctelemetry/commit/e84443a312e4e6baf01650c7660b4a4b21331ccc

gotzl commented 1 year ago

Hi there! I once added some stuff to read files created by the ACTI plugin for AC. But I didn't maintain it further and I'm sure that this is broken now due to changes in other places ... Did you also use this plugin or s.t. else? Could you maybe upload your files somewhere?

Spacefreak18 commented 1 year ago

I too was thinking about adding Motec support. Were you able to get good results, and did you find decent documentation on the format? Because it seems to be the closest there is to a "standard" in telemetry files.

I have gone a different direction, currently I created a basic python tool that will send data to an influxdb for use with Grafana. https://github.com/Spacefreak18/sim_telem_monitor

gotzl commented 1 year ago

I did not find any documentation so I reverse engineered the Motec data-format, that is what ldparser (a submodule of the tool here) is supposed to do. I think the ldparser should also work with data from AC (or ACTI ...).

Your approach with influxdb/grafana sounds interesting, I'll check it out when I get the time. In fact, I did s.t. similar, just sending the data to a mongodb instead. But this project I didn't publish so far ...