I finally finished this project of an external display for racechrono using two 3.5 inch screens and an ESP32.
I find the interface of racechrono hard to read at a glance when driving, even with a customized layout, so I made my own instead of complaining.
https://github.com/APatenaude/rc-diy-remote-display-esp32It turned out better than I expected and being able to test using asseto corsa is the one thing that made this possible.
There is one problem I encountered with the speed reported by the monitoring api.
I have to apply a ~3.6 multiplier to the values returned for both speed and delta speed for them to match my actual speed.
For the equation "channel(device(gps), speed)*10", I need to apply a 0.36 multiplier and for "channel(device(gps), delta_speed)*100" I need to apply a 0.036 multiplier. The exact value seems to be around 3.62 to 3.65, hard to tell with all the rounding that might be going on.
This is true both when testing with asseto corsa and when testing with my custom gps. I tried to reset the app thinking it might be a setting I'm missing but that doesn't seem to be the case. Note that the speed displayed in racechrono is correct, just the value returned by the monitoring api is wrong.
Comments
Otherwise, great work on the api, it works surprisingly well.
The project uses PlatformIO, once you have that setup it should handle all the dependencies, building and uploading the code. You may need to modify the platformio.ini file depending on the board you're using. You also have to upload the filesystem image from PlatformIO for the pictures to work.
@aol_of_RaceChrono The speed delta has stopped working on my device. This could of course be due to a multitude of reasons and I will only be able to debug it for a short time tonight in between track days before I can test it again tomorrow.
I suspect it is related to the fixes that were made in the versions distributed last month as it worked last time I tested it in early July.
I'm curious what exactly was changed that could have caused it to stop, in the interest of speeding up the debugging process. Either the device isn't receiving the value or the formatting of the value could be different. Hard to say without looking at logs of course but any help would be appreciated.
Thanks.
All the equations i'm using are successfully accepted/registered by racechrono through
bluetooth, including the delta speed one, but it's only this one that never receives a value anymore. Everything else works as it did before.
Here are all the equations I'm using :
channel(device(lap), lap_number)
channel(device(lap), lap_time)
channel(device(lap), previous_lap_time)
channel(device(lap), best_lap_number)
channel(device(lap), best_lap_time)
channel(device(gps), delta_speed)
channel(device(lap), delta_lap_time)
channel(device(lap), comparison_lap_time)
channel(device(gps), device_update_rate)
channel(device(gps), satellites)
I'm on 8.0.8, IOS.
channel(device(calc), delta_speed)
Same applies for the other calculated channels:
lean_angle
lateral_acc
longitudinal_acc
Thanks for letting me know. I looked through the change logs but didn't find anything.
/* 6 */ {true, "Time Delta", "channel(device(lap), delta_lap_time)*1000", 0.001, false, false},