Race Control Software
Racebox connects to a USB relay to control a sailing club hooter system. It makes race signals according to either the 10-5-Go, 5-4-1-Go or 3-2-1-Go sequences commonly used. There is a manual "Hoot" button always available to the race team, but the warning and start sound signals are automated.
After choosing the first start time, the number of starts and the start sequence, the "Start Countdown" button begins the sound signal process. The countdown can be stopped and restarted in the middle of a sequence - any signals that are in the past are ignored and the countdown resumes with the next signal.
During the countdown, the coloured boxes give an easy-to-read way for the race team to see the next start time and the time left before the start. Below is confirmation of the number of starts, final start time and the signal sequence chosen.
If there is a general recall or a single boat over the line, the race team can use the "Hoot" button to make the appropriate sound signals or use the button on the Manual Signals page.
Often a general recall means the race team add a new start to the end of the sequence and the "Add Start" button makes this easy to do. Alternatively if the race team decide to pause and re-group after a general recall they can stop the countdown and schedule a new one.
Signals can be made by pressing the "Hoot" button at the bottom - that is always available. But on the "Manual Signals" page there are buttons to make multiple hoots for different situations and a brief explanation of the meaning of each signal.
The common signals are listed such as boat over the start line, general recalls and postponements.
On the Finish Times page it is easy to record boats as they cross the finish line.
The main "Finish" button on the right is used as a boat completes the race. It adds a new row at the top with a time. The race team can fill in the other details. It also makes a short hoot to tell the sailor they have finished.
For boats not completing the race, there is a "Non-Finisher" button below the "Finish" button which adds a row without a time but with an editable Status column.
If you have several boats heading towards the finish line at the same time, you can use the "Approaching Boats" section at the bottom. In here, you can pre-fill the class and sail number for up to 4 boats and each of these has it's own finish button. You can use this to quickly record (and hoot) each boat. When you press the "Finish" button the details are added as a new row at the top and the details in the "Approaching Boats" section are cleared ready for the next finisher.
At the end of the race you can save the finish times using the "Save Finishes" button to a comma-delimited file which can be imported into a spreadsheet. If the class is listed in the classes.json file, the rating number will also be added here so it can be used to calculated times for a handicap race. You can change the classes.json file to include classes and ratings that are appropriate for your club.
Once the finish times have been saved you can use the "Reset Finish Box" button to get ready for the next race. The button removes all the finish times so you are ready to go again.
Racebox has an auto-save feature which means if you accidentally close the program or your computer has to be restarted during the race, any finish times you have recorded are restored automatically when the Racebox program is restarted.
Racebox is a free and open source Python program. Python can be used on a number of different operating systems, so Racebox can be run on Ubuntu (and other Linux flavours), Windows and Apple Macbooks. Please get in touch if you need help setting up Racebox for your sailing club.
If you would like to suggest/ask about/comment/discuss Racebox there is a place to share your thoughts on GitHub Discussions - here is a link to it.