2.1 KiB
2.1 KiB
ESDI
ESDI stands for "ESilva Desktop Interface" iirc, or "rAcElaBs aT hOmE"
This tool collects data from popular racing simulators (for now), to pass it to peripherals (or a peripheral, only made one so far). This is the currently available peripheral: CDashDisplay.
If anyone finds this project useful for anything at all it would be pretty cool. My main goal is to learn and have some fun.
Currently it can read from a .ibt file or live telemetry from iRacing.
It can only be ran from the terminal:
go run . offline -p <port> -i <ibt-file>

or to view the live data:
go run . live -p <port>
Games implemented so far:
Games being implemented:
- BeamNG.drive using the gobngsdk
Games to be implemented:
Roadmap
- Implement the interface for a data source
- Finish implementing BeamNG
- Configuration of the peripherals via ESDI
- Detection of the display
- Fuel Calculator
- LapTime Calculator
- A very long list useful stuff like flags, position, more info about other drivers, track conditions and so on so forth
- Dynamic data packets
- More roadmap entries
- Telemetry analysis tool
- Better user interface
Debugging
Freezes:
Using delve:
- Launch Terminal1 with
dlv debug . --headless --listen=:2345 -- tui - Launch Terminal2 and connect to with with
dlv connect :2345 - Type
continueonto Terminal2 and go to Terminal1 to use the application normally until it hangs. - Go back to Terminal2 to and do a
Ctrl+cto capture the state and then check what went wrong by looking at thegoroutinesfor example.
pprof:
go tool pprof http://localhost:8001/debug/pprof/mutex- type
topto view the summary - type
webto view a graph version
- type
Shameless begging
Hey, doesn't hurt to try, its free either way: Buy me a coffee!