tkem / openlap

Slot Car Race Management App for Carrera(R) Digital 124/132
Apache License 2.0
32 stars 24 forks source link

Wish : Crash detection #56

Closed SebastienPlourde closed 7 years ago

SebastienPlourde commented 7 years ago

Hi, It could be cool to add a Crash detection option in Race Mode.

I think the Race can be paused automatically when it is detected that a car take to much time to complete a lap.

The logic could be : a) Calculate the average time per laps from the first 3 laps. b) Car is not in pit. c) Last laps time is cached. d) If last laps time is not resets after the average time spend send "Paused to control unit" e) Then app could display a big "Resume" button on screen.

This feature could prevent rush around the circuit. particularly important when playing with kids.

I am pretty good in javascript and I ready to help, I just don't know where to start with your code.

tkem commented 7 years ago

Though this sounds interesting, I'm reluctant to put too much "intelligence" into code (at least for now). It also sounds like a lot if effort (testing, mostly) for saving you from having to hit the "start light" button manually after a crash. However, if you want to give it a try (or contribute in some other way), you are more than welcome! For starters, I'd suggest you make yourself familiar with Ionic and Angular, otherwise all this probably won't make much sense ;-) You'll find the whole "race management" stuff, where this would belong, in the rms module under src/rms.

SebastienPlourde commented 7 years ago

Thanks for your quick response and guiding me. I will look into the section you mention and see if it easy for me to dive in. At lease I will write the function and send to you after.

tkem commented 7 years ago

After thinking about this for a while, I'm sorry to say that some sort of automatic "crash detection" will not be added for the foreseeable future. Playing through some of the possible implementations, I think this will be just too unreliable/error-prone. Open Lap v1.3 adds support for a "yellow flag" phase, which will allow some less interruptive way of dealing with race incidents, but still requiring manual intervention (e.g. by a "steward/marshall" who does not participate in racing).