Help

Help text from DSRC V3.5



Links:

DSRC website

DSRC Facebook group

Competitors Screen

Competitors Screen allows the definition of your sailing club competitors in terms of:

- HELM - Who is at the helm of this boat e.g. Robbie

- CREW - Who is crewing (if any) e.g. Keith

- CLASS - What class of boat it is e.g. Laser

- SAIL - What is the sail number of this boat e.g. 122384 or maybe red

- PYN - What is the RYA Portsmouth Yardstick Number (PYN) for this class e.g. 1095

- FLEET - Which fleet will this competitor be sail in e.g. ALLCOM


Controls:

- 'Long Press' on a competitors entry to display the edit dialogue which allows the above info to be defined or amended.


- 'Single Tap' on a competitors entry to select it for the next race (entry will highlight).

Note: A second single tap will deselect it again (i.e. it toggles between selected and deselected).


- Use ADD button to create a new competitor entry

Note: When ADD is pressed the edit dialogue will be display, where the new competitor information is entered.

Once entry is complete, press SAVE to retain the entry, or CANCEL to ignore it...


- 'Single Tap' the search icon (when visible) to search the for a competitors entry by Sail number, or Helm name


- Press OPTIONS button to display the options/views dialogue, from which you can select:

- Sort Competitors by Helm name

- Sort Competitors by Class name

- Sort Competitors by Fleet name

- Sort Competitors by PYN

- Deselect All Competitors

- View Competitors list

- View Fleet list


Notes:

For Add and Edit, built in Ratings and existing fleet will reference to offer autocomplete Class, and upon selection, the PYN, and Fleet (if possible)


Competitor is auto selected when added or edited.


FLEET definition will only be available if 'Fleets is On' (see Settings for further details)


If 'Self sign on' is active, then confirmation of selection (and deselection) for racing will be requested


If a competitors class does not have a rating entry, the class name will be displayed in RED (normally in BLUE)


If a competitors PYN does not match its class PYN, the PYN will be display in MAGENTA (normally in RED)


Error case: If COMPETITORS is selected whilst 'live' race data is still present (i.e. a race has been run, but not yet reset),

then an error message will be displayed, the screen turned red.

<go to top>

Race Screen - Single & Multi-Fleet

SINGLE FLEET:


- Pre-Start - Countdown prior to main start sequence (0,10s,30s,1m,2m,5m)

- Start sequence - Countdown from 5 minutes (or 3 minutes if '3,2,1,Go' is selected via Settings), and flags reminder (mixed fleet only at present)

- Start Actions - All Clear, Individual Recall, General Recall

- Lap timing - Notes elapsed time (since start) for each lap, and number of laps completed

- Finish - Either Shorten Race or Finish Open

- Final timings - Collected as last lap and finish signal

- End race - Uses last recorded lap as race elapsed time for each boat, calculates corrected Time and finishing position

- Save race - (if Auto save is off) Saves all information for this race, which can be reviewed later via the Results screen

- Reset race - Resets all timings and lap counts ready for next race


Controls:


- 'Single Tap' the search icon (when visible) to search the for a competitors entry by Sail number, or Helm name


- Use 'Single Tap' to select (or deselect) from the full competitors list


- Use 'Long Press' to edit competitors entry if corrections are required


- Press OPTIONS and select 'Add NEW Competitor' to create a brand new entry (will be added to competitors list)


- Press START to commence the pre-start and main start sequence i.e. (0,10s,30s,1m,2m,5m) and the 5 or 3 minute countdown


- Use SHOW ALL to switch back to full competitor list to select additional racers (or deselect those no longer racing).

Once happy, press SHOW RACERS to switch back to selected competitors only i.e. Racers


- Use 'Long Press' on countdown clock to ABANDON/POSTPONE start

- Use Options - Start options to ABANDON/POSTPONE start pre-countdown


Once countdown reaches zero, display switches to Racers ready to capture timings, and Start Actions popup.

From the Start Action popup, select (and confirm):


- ALL CLEAR (default) - Confirms no recalls


- Individual Recall - Sounds Individual Recall


- General Recall - Sounds General Recall, and abandons race


48 seconds after start, if a start option has not been made, the Start options will be dismissed, and display switched to timings mode


- Use 'Single Tap' on competitor entry to capture its lap time and number of laps completed

- Note - If 'Undo' option is active, the last entry pressed will have a marker against it, and a second press will undo the previous timing capture


- Use TBA (To Be Assigned), which is the stopwatch icon to the right of horn, to capture times where the boat is yet to be identified.

Think of it as a Panic Button, which gives you time to find the right entry, and then assign it.

Note - If 'Undo' option is active, then the 'removed' time becomes a 'TBA', which can be re-assigned or deleted.

See TBA subject for full explanation of its function


- Use 'Long Press' on competitor entry to 'undo' an incorrect lap time capture (via dialogue). Or to assign a CODE (e.g.'DSQ')


- Press FINISH OPEN (and select either Shorten Race or Finish Open) to enable horn sounds on next timing capture i.e. finish time


- Press END after all competitors final lap times have been captured to end the race and initiate handicap calculations


- Press SAVE (if required), to store the full race results to text file (and optionally a .csv and/or .pdf file)


- Press RESULTS (visible after Save) to display the results in PDF if Lollipop and above, or formatted text


- Use Options - Edit race notes to add any textual information you would like to be displayed in the export results header (html/pdf)

When you have finished with the current race results:


- Press RESET to clear the live race data ready for the next race


Notes:

If the pre-start or main start sequence (i.e. countdowns) needs to be aborted/postponed, use 'Long Press' on the countdown clock.


After start, 2 timers are displayed. Top line (blue) is time of day. Bottom line (black) is elapsed race time


If Sound is on (see Settings), then a horn will occur at 5, 4, and 1 minute to go (or 3,2,1,0), plus at start (and also on abort).


Reminder flags are now animated at 10 seconds before event, and alternate between next event flag and either up or down arrow.


If 'voice' is on, then before each horn the time to go will be spoken at 10s,5s,4s,3s,2s,and 1s.


If 'beeps' are on, then before each horn there will be a 'beep' at 10s,5s,4s,3s,2s,and 1s.


If you need to mute all sounds/signals (or un-mute), then Press the 'speaker icon', but the manual horn is always active.


App can handle a maximum of 10 laps.


Pre race - Entries remain in the same order as per Competitors screen

i.e. if you sorted competitors by PYN and then changed to Race Screen, then they will be in PYN order...


Timings - When the start countdown reaches zero, the display switches to selected competitors only, and will be sorted by PYN (ascending)

If you want to reorder the list based upon 'position on the water', then press 'Racers' after each lap.


Post race - Entries are ordered in final position ascending order (with Coded then DNC at end).


Details of all laps, etc. can be viewed via RESULTS button, or Results Screen before reset is pressed (or if saved, via results file).


Competitors that have completed less laps than the lead boat will use average lap time to calculate elapsed time, corrected time and final position.


A different colour is used for the increasing laps to:

- Aid timekeeper to spot those competitors that have not yet crossed the 'lead lap'

- After end race is pressed, identify competitors that completed less laps than the lead boat (and have therefore had average lap adjustment applied)


When RESET is pressed the race number is auto incremented.

MULTIPLE FLEETS:


- Pre-Start - Countdown prior to main start sequence (0,10s,30s,1m,2m,5m)

- Start sequence - Cycles through planned countdowns from 5 or 3 minutes, until All Clear or Abandon is selected".

With start number and sequence number overlaying Class and Prep flags reminders (see FLEETS for details of fleet start/sequence).

- Option to pause countdown between starts: None, All, or on General Recall only

- Option for GR restarts to be Next Start, or After other starts (back of the starts queue)

- Status line displays - Race No, Start No, and No planned starts (auto calculated from FLEETS)

- Start Actions - All Clear, Individual Recall, General Recall

- Lap timing - Notes elapsed time (since fleet start) for each lap, and number of laps completed

- Finish - Either Shorten Race or Finish Open

- Final timings - Collected as last lap and finish signal

- End race - Uses last recorded lap as race elapsed time for each boat, calculates corrected Time and finishing position

- Save race - (if Auto save is off) Saves all information for this race, which can be reviewed later via the Results screen

- Reset race - Resets all timings and lap counts ready for next race


Controls:


- 'Single Tap' the search icon (when visible) to search the for a competitors entry by Sail number, or Helm name


- Use 'Single Tap' to select (or deselect) from the full competitors list


- Use 'Long Press' to edit competitors entry if corrections are required


- Press OPTIONS and select 'Add NEW Competitor' to create a brand new entry (will be added to competitors list)


- Press START to commence the rolling pre-start sequences i.e. (0,10s,30s,1m,2m,5m) and then 5 or 3 minute countdowns/starts


- Use 'Long Press' on countdown clock to ABANDON/POSTPONE ALL starts in progress

- Use Options - Start options to ABANDON/POSTPONE start pre-countdown


As each countdown reaches zero, Start Actions popup.

From the Start Action popup, select (and confirm):


- ALL CLEAR (default) - Confirms no recalls, and if last planned, and display switches to Racers ready to capture timings


- Individual Recall - Sounds Individual Recall


- General Recall - Effectively nullify the last start.

Dependant on the GR Restarts setting, either:

- Next Start - Remaining countdown becomes restart countdown for the recalled fleet.

- After other starts - Restart is rescheduled after all other starts have been attempted


48 seconds after the last planned start, if a start option has not been made, the Start options will be dismissed, and display switched to timings mode


- If necessary, use SHOW ALL to switch back to full competitor list to select additional racers (or deselect those no longer racing).

Once happy, press SHOW RACERS to switch back to selected competitors only i.e. Racers


- Use 'Single Tap' on competitor entry to capture its lap time and number of laps completed

Note - If 'Undo' option is active, the last entry pressed will have a marker against it, and a second press will undo the previous timing capture


- Use TBA (To Be Assigned), which is the stopwatch icon to the right of horn to capture times where the boat is yet to be identified.

Think of it as a Panic Button, which gives you time to find the right entry, and then assign it.

Note - If 'Undo' option is active, then the 'removed' time becomes a 'TBA', which can be re-assigned or deleted.

See TBA subject for full explanation of its function


- Use 'Long Press' on competitor entry to 'undo' an incorrect lap time capture (via dialogue). Or to assign a CODE


- Press FINISH OPEN (and select either Shorten Race or Finish Open) to enable horn sounds on next timing capture i.e. finish


- Press END after all competitors final lap times have been captured to end the race and initiate handicap calculations


- Press SAVE (if required), to store the full race details to a text file (and optionally a csv and/or pdf file)


- Press RESULTS (visible after Save) to display the results in PDF if Lollipop and above, or formatted text


- Use Options - Edit race notes to add any textual information you would like to be displayed in the export results header (html/pdf)

- Use Options - Scoring options to change the sorting/score mode as required:


Multi-Fleet, rolling starts:

- By start, then fleet

- All entries as one fleet

- By start


Multi-Fleet, single start:

- All entries as one fleet

- By fleet


When you have finished with the current race results:


- Press RESET to clear the live race data ready for the next race


Notes (extras only for multi-fleet)


For Multi-Fleet rolling starts with no pause. At 10 seconds to current start, both the lowering class/fleet and the next class/fleet are shown.


If a pause between starts is active, then the start button background will show GR Clear or 'Resume', which continues the next countdown when pressed


Pre-timings - Competitors remain in the same order as per Competitors screen

i.e. if you sorted competitors by PYN and then changed to Race Screen, then they will be in PYN order...


Timings - Entries ordered by Planned start, and then by PYN in ascending order.

If you want to reorder the list based upon 'position on the water', press 'Racers' after each lap.


Post race - Entries ordered by fleet, and then by final position in ascending order (with DNCs and Coded at end of each fleet).


Notes (extras only for Multi-Fleet, Single start, score by fleet and Multi-Fleet, Single start, score by start).

GR Next start will be used, but Pause between starts may be changed.

If Single start, then flag reminders will display 'F' for score by fleet, and 'S' for score by start (i.e. score as one fleet).

Post end race there is the option to changed the score by via Options e.g. If race was score by fleet, then the option score by start will be displayed, and visa versa.

If race type is changed back to 'standard' Mulit-Fleet, then please check that GR Restarts (under Settings) is set as required

RACE EDIT:


To allow corrections during and post race.


Controls:

- Use 'Long Press' on a competitor to display the entry edit dialogue, which allow changes to:

- Competitor Information i.e. helm, crew, class, sail, PYN, fleet

- Race timings i.e. lap 1 to 10 elapsed times.

Note - elapsed seconds can be input if Seconds is enabled under Settings.

- Any Code that is to be applied to this competitor, or cleared by selecting 'No Code'


Post race, the following Options will be available

- Change start Date

- Change start Time

- Change race number


Notes:

For Add and Edit, built in Ratings and existing fleet will reference to offer autocomplete Class, and upon selection, the PYN, and Fleet (if possible)


Pressing 'Cancel' on either edit dialogue will cancel any changes, even if some fields have been entered or changed on the dialogue.


Pressing 'Confirm' on either edit dialogue will apply the changes, but only if they are valid.


If valid changes have been made, and the race has ended, then the race results are recalculated, displayed, the 'Save' button reactivated.


Also, the background will change to dark grey and 'Edited' will be displayed as reminder to Save the updated results.


If 'Save' button is pressed, then as well as saving the updated results, the background will return to normal post race format.

<go to top>

Race Screen - Pursuit

Pursuit mode is an addition to the Race Screen which allows pursuit races to be defined and run based upon class handicaps.


Before entering Pursuit Mode, ensure:

- All competitors (and therefore their class) taking part are selected

- Pre-Start and Start sequence are selected via Settings Screen.


Pre-Race planning, including:

- Race planned duration (via 'clock' button)

- Race start interval (via 'Options' button)

- Zero start class, if there are to be advance starts, as well as delayed ones (via long press on class)


Default is for the race to be based on the slowest class (highest handicap) taking part.


When planning is complete, app will display:

- Planned race duration

- Planned number of starts

- Race number

- List of classes taking part, their planned start number, and their associated delay +/- of start zero


Press START to commence any pre-Start, and then main start sequence.


If sound is on, additional to the normal start sequence events, there will be:

- +/- delay starts will be announced at 30 secs to go, and countdowns at 10,5,4,3,2,1 secs

- If Wifi Lights are On, then Class and Prep will come of at 30s, and Prep Off at 10s, and all Off at next planned start

- End of race announced at 1 min, 30 secs, and countdown at 10,5,4,3,2,1 secs


Start sequence can be aborted via long press on countdown clock

Race (once started), can be abandoned via options


Once all planned starts have been completed, the display will automatically switch to the racers view for laps capture.


Once the race duration has expired, the END button becomes active, but before pressing, capture the final timings in the finishing order...


On END pressed, results will be calculated based on number of laps and final times.


If automatic save is Off, then the SAVE button becomes active, should you wish to retain the results


Once either manual or automatic save is performed, the RESULTS button becomes active to instant access to PDF results (and external sharing there of)


To rerun, press RESET


Notes:

- If start interval is set to 30s, then +/- delay starts announcements will be at 20 seconds to go, and Class/Prep Wifi lights also at 20s (if On)


- App 'remembers' if pursuit mode was active at exit, and if so, returns to it on app restart


- App 'remembers' race start interval (60s or 30s), and will reuse it on app restart


- App 'remembers' class zero, and will reuse it on app restart, but only if class exists in competitors


Additionally - If the zero class exists, but is not 'active', the app will automatically select the first entry it finds of that class to 'force' it to be 'active'


All functions that are available on Single or Multi-Fleet races, can also be used in Pursuit (e.g. search, competitor/race edit, and post race editing)

<go to top>

Race Screen - RC Countdown

Added at the request of Radio Control racers in Australia, RC Countdown is intended for a single class, single start races.

But instead of using flag and horn signals, it 'announces' times to go from a user definable text file.


The app looks for '/files/DSRC_Countdown_sounds.txt', and if found, uses the contents to create the custom countdown.


The file can be edited from within the app via Settings Screen (option only available in Admin mode), and takes the form:


- Time text to be announced - example 0:30 30, would announce "thirty" at 30 seconds to start


- A horn is sounded Iif there is just a time found e.g. 0:00, then at zero (i.e. start) a horn sounds


In other respects, the controls and operation is as per Single Fleet race


Notes:

- 'ticks' are sounded every second during countdown, except for the last 10 seconds. These can be switched off via Settings Screen


- If /files/DSRC_Countdown_sounds.txt is not found on initial app usage, then one if created containing a default set of announcements.


- 30 seconds after start, if no selection has been made from the Start Options popup, then All clear is assumed, and the popup is dismissed.


- As this is intended for single class racing, then only elapsed time is displayed, and with tenth of a second resolution, which is also used for final position calculations.

<go to top>

TBA (To Be Assigned)

To allow for the occasions when a time needs capturing, but the boat may be unknown, or just not visible on the screen to tap.


There is now a TBA icon (next to Horn when active) which will simply just note the time it was pressed, and where appropriate, sound a finish horn.


Additionally, any 'Undo' or Race edit Lap-1 action will create a TBA, which can then be reassigned or deleted if no longer required.


Controls:


- Tap the stopwatch icon to capture current elapsed time. TBAs are displayed as a grid above the competitors list


- Tap a TBA to select it (TBA will be highlighted to show ready to be assigned


- Tap a race entry to assign the active TBA (if not already at max laps), and remove it from the grid


- Tap an selected TBA to deselect it (highlight will be removed). It will remain in grid until used, deleted, or race is Reset


- Long press on a TBA to delete it (after confirmation). It will also display the captured time to the millisecond


Notes:

- TBAs can be assigned during and post race end, but will all be deleted upon Reset.

- When assigning a TBA, it will check for:

- Where there are multiple starts, and the TBA time is before the selected race entry fleet's start time

- Where the selected race entry already has lap times, and the TBA time is before the last lap captured

If one of these 'invalid' conditions is found, then the assignment is not performed, an error message displayed, and the TBA remains active

<go to top>

Audio Capture

If Audio Capture is enabled (see settings), the audio via the device's microphone can be recording at the following point during a race:

- At each start (except Pursuit and RC Countdown):

- Recording commencing at the Prep down signal

- Recording can be paused and resumed during recording (using pause and play controls)

- Recording ends :

- Manually via All Clear (selected from start options)

- Automatically All Clear at zero +48 seconds

- Automatically 30 seconds after Individual Recall (selected from start options)

- At finish:

- Recording commencing at Shorten or Finish Open

- Recording can be paused and resumed during recording (using pause and play controls)

- Recording ends:

- Manually via End race pressed


Playback:

Once at least one recording has been made, the following playback controls will be available:

- Play - Play a single recording immediately, or display the recordings list if there are more than one

- Pause - Pause the playback of the current recording (pressing play will resume playback)

- Stop - Stop the current playback

Time into the recording will be displayed, and the green background 'bar' will 'decrement' from right to left, indicating how much of the recording is left to be played.


Notes:

- Controls appear red red when recording and green for playback

- Recording cannot be stopped early, but can be paused (to miss out quiet periods, but don't forget to press play again when required :o)

- Recordings use the same race naming, plus '-Start' for single start, 'Start-n' for multiple starts where n is the start number, and 'Finish' for end of race.

- If starts or racing if aborted, abandoned, or Postponed, then all recordings are deleted.

- General Recall for a single start deletes the 'start' recording.

- General Recall for multiple start will result in the 'start-n' recording being overwritten when the start occurs without general recall (be it next start or after other starts).

- Recording filenames are saved with the race editable file, making them available if Edit Previous is used post racing.

- Recording post race reset can still be accessed via the Results Screen under their associated race entry.

- Recordings can also be shared or deleted via the Results Screen under their associated race entry.

<go to top>

Start At

For races that must start at a specific time of day, there is the Start At feature which is accessible via 'long press' on the Start button upon entry to the Race Screen.


Once selected, a time setting dialogue will be displayed, with an editable time field containing a suggested minimum start time based upon the current start sequence, plus a minute.


Once you have entered the desired start time, simply press start to commence the countdown to the start.


Notes:

- If Additional Prompts is active, extra voice prompts are create to cover the extended countdown


- If the start sequence contains a pre-start event (attention), then it will be sounded at the normal point within the countdown (e.g. 10 seconds to Class Up)


- Start At cannot be used with RC Countdown start sequence

<go to top>

Results Screen

Results Screen displays a list of the races which have saved results files.


To see a races results press the flag icon to the right of its entry in the list.

Depending on your Android version, and the export settings, either postscript or HTML results will be displayed


To share (view/send) or delete race results files, press its race record from the list.


From this list of race files displayed you can either:


- Select a single file, to share, or delete


- Select multiple files for deletion only


Note - As the .dsrc files which are used to enable post race editing are still a fairly new feature, currently the list is created by:

1 - Looks for a races .dsrc file, and if found, uses that (grey background)

2 - Attempts to extract the race date, time, and race number from the race's filename (yellow background)

3 - If the filename's format is 'incomplete', then it attempts to extract as much info as it can (red background)


The Results Screen also contains Series Management, which is accessed by pressing the 'trophy' icon (see Series Management section)

<go to top>

Series Management

Series Management is accessed via the Results Screen, and allows series 'contents' to be displayed and edited.


If there is an active series file, the race results held within it will be displayed as a list.


Note - If there is a series file active and 'live' race data that has yet to be added (via Race Screen - Reset), then the screen background will be red to warn that the series is 'incomplete', otherwise it will be green.


Controls:

- Pressing a race entry, will display a list of that race's saved files, from which you can share (single file) or delete (single/multiple files)


- Pressing the 'Checkered flag' icon against a race entry will display a 'summary' of that races results for reference


- Pressing the '-' icon against a race entry will allow removal of selected race from the series (after confirmation)


- Pressing "+" icon will allow addition of previous races via selection from list of race files (after confirmation)

Note - If there is no currently active series, then pressing '+' will allow a new series to be defined.


- Pressing the "trophy" icon will allow scoring of the series


Options:

- Select series - Presents list of series that exist (note selection makes it the active series)


- New series - Allows definition of a new (empty) series (again it will become the active series)


- Delete series - Presents list of series files that exist, for selection and deletion


- Share current series - Allows both View and Send sharing of the currently active series file

- Import series - Allows externally created series files to be imported from /Download

<go to top>

Series Scoring

Although it is well beyond the scope of the DSRC app to provide all the complex variations in racing series scoring, it is able to provide what might be classed as 'informal heads up' series results.

With this in mind, from a series results .csv file, DSRC can:


- Evaluate simple 'expressions' (e.g s/3 ) for series discards, and series DNC values

- Score by fleet, or as one fleet

- Score each race based upon the finishing positions


- Assign 'penalties' based on races in series, and competitors in each race


- Apply discards, and complete series scoring (total/nett)


- Resolve series ties (thanks to some clever maths from Keith Sykes :o)


- Assign series rankings

- Create series results and optionally in PDF (or HTML) file(s)

Note - PDF can only be displayed on >Android 5 devices (for <5 HTML could be used)


Notes:

- Default for series discards is s/3 (where s=number of races in series)

- Default for DNC score is f+1 (where f=competitors in series)

- Expressions are saved/restored, as well as link to series results file

- Score By Fleet or As One selection is saved/restored

- Non-DNC codes scores are current fixed as number of competitors in the particular race +1

- As the display space is limited, only the first 20 races in a series file will be scored (>20 are ignored)

- Scoring is based on current RRS-Appendix A

- Scores cannot be assigned or adjusted manually

- 1st, 2nd, and 3rd race position backgrounds are highlighted (gold, silver, bronze)

- PDF Header and odd/even row background colour 'theme' can be chosen in Settings (None, Red, Green, Blue)

- For HTML, the CSS can be edited via Settings to alter background colours (and more)

<go to top>

Settings Screen

Settings Screen allows user/admin to change the following:

Race / Starts


Race type - Defines the fleet and start(s):

- Single Fleet, single start - Usually used for mixed fleet handicap races

- Pursuit - More than one fleet, with staggered starts

- Pursuit race duration - How long the pursuit race will last

- Pursuit start interval - +/- delay starts at 60, 30, or exact second intervals


- Multi-Fleet, rolling starts - More that one fleet, with more than one start

- Scoring mode:

- By start, then fleet

- All entries as one fleet

- By start

- Pause between starts - None, All, GR only

- GR Restarts - Next start, After other starts (i.e back of the queue)

- Multi-Fleet, Single start - Single start for all selected fleets, with rolling GRs

- Scoring mode:

- All entries as one fleet

- By fleet

- Pause between starts - None, All, GR only (All and GR only having the same effect)

Notes:

- GR Restarts will be set to Next start


Pre-Start delay - Selection from 0, 10s, 30s, 1m, 2m, 5m - Pre-start period prior to main sequence

Note - If Custom is selected in Starting Sequence, the custom defined Pre-Start value is used

Starting Sequence - Main start sequence:

- 5m, 4m, 1m, Go

- 3m, 2m, 1m, Go

- Custom

- RC Countdown


If Custom is selected, then the following are defined via dialogue:

- Pre-Start period (which overrides the 'normal' Pre-Start setting)

- 1st Class Up event time (used in MultiFleet mode to allow the first start to have a longer Class Up period)

- Std Class Up event time (used in Single Fleet mode, and multiFleet for 2nd start onwards)

- Prep Up event time

- Prep down event time

- Inter-Race delay (addition delay prior to Class Up between MultiFleet starts. Set to zero if not required)

Special feature - If you set both Prep Up and Prep Down to zero, then neither events will occur.


Sound - Horn sounds are played at Pre-Start (if not 0), Class Up, Prep UP, Prep Down, and start of a race, and repeated if rolling starts.

Plus Shorten race, Finish Open, and at final time capture


Countdown sound:

- Voice - Countdown will be spoken at 10s,5s,4s,3s,2s, and 1s prior to next horn.

- Beeps - 'Beeps' will sound at 10s,5s,4s,3s,2s, and 1s prior to next horn.

- None - No countdown to next signal


Additional voice prompts - If active, prompts every 30s, plus one at 20s to next signal are automatically generated, and adjust to the Starting Sequence selected


Second ticks - If active, then audio 'ticks' are sounded every second during countdown up to 5s to start, and change sound after Prep down


Self sign on - Forced confirmation of competitor selection and deselection to race


Instant Undo - This option enables a second press during racing on the same entry to undo the previous timings capture (i.e. same as 'lap-1')

Results


Final timings format - Selection for elapsed and corrected times display format, either in seconds or mm:ss

Lap times format - Selection for lap times within results outputs, either Elapsed lap times or Individual lap times


Results exports:

- PDF - Race results are also saved in a PDF file (for easier web integration)

- Orientation selected between Portrait and Landscape

- Sailwave - Race results are also saved in a Sailwave compatible csv file

- Sailwave Multi Race - Each race results are appended to one 'series' .csv file at Reset

- Series Results File can be deactivated (None), or selected (Pick)

- Spreadsheet - Race results are also saved in a HAL compatible xls file

- Web - Race results are also saved in a HTML file (also used as alternative viewer to pdf when <Android 5)

- Custom Logo can be embedded within HTML file


Sailing club name - text - Default 'Your Sailing Club', can be changed to another club


Sailing club logo - Selection from /Download/ file list for logo image selection (.png recommended).


Automatic results save - Results are automatically saved when End race is pressed (including pdf, csv and xls if selected under exports)

Interfaces


Wifi On/Off and horn horn - Enables WiFi communication to external remote relay(s), and specifically for horn signals [Experimental]

- Wifi signal lights - Enables wifi communication to light signal relays (Class 1, Class 2, Prep) [Experimental]

- Wifi device info - IP address, and Port number of the target remote WiFi relay module [Experimental].

- Wifi external clock - Future feature, built in for prototype testing. Leave OFF unless you have the additional hardware [Very Experimental]

Note - Specific DSRC firmware needs to be installed on the Wifi relay module to enable these features


- BT external horn - Enables Bluetooth communication to external remote relay [Experimental]

- BT device info - Pick from list of BT paired devices for selection of remote BT relay module [Experimental]

- BT Short horn duration - Default 1000ms, but can be set between 500 and 1500ms. Long Horn will be twice as long [Experimental]

Admin


Admin mode - To avoid 'accidents' especially when competitors are 'self registering', certain options are only active if Admin is On (see Admin subject)


Demo mode - To allow existing uses to demonstrate app with their own competitors and settings


Debug mode - If active, prestart sequence is greatly shortened, and certain extra (toast) messages are displayed


Debug addition info - Enables extra information displays to aid debugging and development (and hides certain 'dangerous' features)


Edit Fleet info (Hidden) - Allows direct editing of the competitors data (be careful :o)


Edit RC Countdown info (Hidden) - Allows direct editing of text used for RC Countdown announcements


Edit Sailwave header (Hidden) - Allows the text used for Sailwave headers to be changed (Advanced - be careful :o)


Edit Class Ratings (Hidden) - Standard RYA 2020 ratings have been built in, but can be added to via a simple text edit (be careful :o)

Additionally, update of Ratings can be perform via Load within the editor, allow for yearly ratings update, or club specific rating sets.


Edit Race field order (Hidden) - Allows the selection and ordering of the appropriate fields for mixed class, single class, and pursuit racers view (Race screen)

Note - If not all fields are required, selection 'None' will terminate the fields list e.g. Helm, None... would just display the Helm field only

Note - The selection dialogue contains a 'Default' button to reset the field to app installation state

Edit HTML CSS (Hidden) - Allows the editing of the CSS information used when creating HTML exports (both race and series).

You can change a number of parameters e.g. page background, header, odd/even row backgrounds, data field text alignment, 1st/2nd/3rd backgrounds for series. Please visit website for more details :o)

Note - There is a RESET button to revert back to the inbuilt default CSS should you get in a mess...

Custom settings (Hidden) - As some club require more than one settings configurations, custom settings files can be saved, and loaded as required.

- Custom Competitors - Custom settings can also include a linked Competitors name, which optionally be used when custom setting are loaded.

Note - If a linked competitors file is active, then any changes made via Competitors or Race screens will be saved to it (rather than the default)


Custom flags (Hidden) - If active, app will try to locate an appropriate flag for Prep, Single Class, Fleet, or Mixed class fleet.

- App looks first in /flags, then internally, and if no match is found, then the default class flag is used

- Flag files can be import and managed via the Files button within Custom flags, under Admin section


Battery Monitor (Hidden) - As the Race Screen will be full screen and 'held on', it is not possible to see the devices battery state without interactions.

The Battery Monitor setting allow you to enable a background monitor:

- None - Effectively monitor Off

- Low warning only - Changes bottom 'band' to Red when battery is below 20%

- Green, Yellow, Red - Changes bottom 'band' to: 100-50% Green, 50-20% Yellow, below 20% Red


Race search mode (Hidden) - Choose between:

- Enhanced search - In Competitor or Race view - Searches all competitors, plus creation of new entry, and lap capture if race is in progress

- Standard search - In Competitors view - Searches all competitors. In Race view - Searches only those competitors already selected to race


Lap colour mode (Hidden) - Choose between:

- Monochrome - Race entry text/background colours alternates between White on Black, and Black on White for maximum contrast

- Multiple - Race entry text/background colours unique for each lap


Editable results (Hidden) - If enabled, race data files are created upon save, which can be edited post race reset (via Edit previous race option on Race Screen)


Audio Capture (Hidden) - If enabled, audio recording will be made at starts (except Pursuit and RC) and finishes of each race, and associated with the other race files


Notes:


WiFi and BT horn optional are mutually exclusive i.e. only one can be active [Experimental].


All settings (except Debug mode and Debug additional info) are saved on exit, and reload when app is next used (see EXIT for details).


As this app is still under development, certain 'internals' may be displayed on the settings page to aid debug and development


Default settings are (on app first use):

Race / Starts

- Race Type - Single Fleet, single start

- Pursuit Duration - 45 minutes

- Pursuit Start Interval - 60 seconds

- Pause between starts - none

- GR Restart - Next Start

- Scoring MultiFleet Single start - All entries as one fleet

- Scoring MultiFleet Rolling starts - By start then fleet

- Pre-Start - 0 i.e. none

- Start sequence - 5, 4, 1, Go

- Sound - On

- Countdown sound - Voice

- Additional voice prompts - Off

- Second ticks - Off

- Self sign on - Off

- Instant Undo - Off

Results

- Final timings format - Seconds

- Lap times format - Elapsed lap times

- Results exports:

- Pdf - On

- Sailwave - Off

- Sailwave Multi Race - Off

- Spreadsheet(HAL) - Off

- HTML - Off

- HTML Logo - Off

- Sailing club name - 'Your Sailing Club'

- Sailing club logo - None

- Automatic results save - On

Interfaces

- Wifi On/Off and horn - Off

- Wifi signal lights - Off

- Wifi timer display - On

- Wifi timer level - 1

- Wifi device info - IP: 192.168.4.1 | Port: 23

- BT external horn - Off

- BT device info - BT04-A

- BT Short horn duration - 1000ms

Admin

- Admin mode - Off

- Custom flags - On

- Demo mode - Off

- Debug mode - Off

- Debug additional info - Off

- Battery Monitor - Off

- Race search mode - Enhanced search

- Lap colour mode - Multiple

- Editable results - On

- Audio Capture - Off


Additionally saved/restored:

- Pursuit class zero

<go to top>

Fleets Screen

Note - FLEETS is only active/visible if, under Settings, Race type is set to 'Multi-Fleet, rolling starts'


Fleets Screen allows the definition of fleets, and there associated starting sequence within a set of rolling starts.


There are two ways that the fleet names can be defined:


- Manually - Use the ADD button (Admin only) to create a new fleet entry

- Fleet description - Fleet name e.g. Singles

- Start sequence number - number (between 1 and number of fleets), which can be the same as another fleet if starting together,

and used in ascending order to define the rolling start order.


- Auto-populated - If via the Competitor function, a LOAD is performed (Admin only), any fleet names found will be used to populate fleets definition.

Start sequence may still need defining manually, via Long press.


- Use 'Single Tape' or 'Long Press' to edit an existing fleet entry


||Exit app

Competitor Data i.e. fleet, helm, boat, sail number, PYN, selection, and start number are saved before the app is exited in a controlled manner.


App settings i.e. Sound, Seconds, Autosave, etc. are also saved on exit (except Debug and Admin)


The saved Competitor data and settings are reloaded next time the app is run, so that changes including selection are retained.


Notes:


- If there is live race data not yet saved, then a confirmation of exit will be requested


- If Sailwave multi race is active, saved, but a Race-Reset has not been performed, then the multi race export file is updated with the last results

<go to top>

Bluetooth External Horn

To enable the control of an external (electronic) horn, the app can, via Bluetooth (BT), send On/Off commands to a single remote relay module.

These commands being in sync with the existing sound prompts i.e. start sequence, etc.


For this to work, you need to:


- Have paired the BT remote relay with this Android device

- Select the BT remote relays name from a list of paired devices

- Set BT horn ON

- Set Sound ON

See Settings for more details on the controls mentioned above.


Remember - This is an experimental function at present, and it is unknown how many BT remote relay types it will work with.


The one used for development is from LC Technology.


Which seems to have the default name - 'BT04-A'


And a password for pairing of '1234'


The relay control commands used are:

- OPEN = A0 01 01 A2 (hex)

- CLOSE = A0 01 00 A1 (hex)

Note: The BT remote relay name is saved at Exit i.e. the app remembers your selection.


You will of course need to incorporate the BT remote relay module into your electronic starting sounder.

But that I'm afraid, is behold the scope of these help notes (see Facebook group for more details).

<go to top>

WiFi External Horn

WARNING - This is an experimental function at present, and it is unknown how many WiFi remote relay types it will work with.

To enable the control of an external (electronic) horn, the app can, via Wi-Fi, send horn commands to a single WiFi remote relay module.

These commands being in sync with the existing sound prompts i.e. start sequence, etc.


For this to work, you need to:

- Install the DSRC related software on the WiFi remote relay (see Facebook group for more details)

- Connect the WiFi remote relay with this Android device

- Set WiFi horn ON

- Set Sound ON


See Settings for more details on the controls mentioned above.


The one used for development is a ESP8266 plus ESP01S.

Which when loaded with the DSRC related software (which acts as a AP server or STA client), has the following fixed parameters:


- IP Address: 192.168.4.1

- Port number: 23


Note: The WiFi remote relay IP address, and Port number are saved at Exit i.e. the app remembers them.


You will of course need to incorporate the WiFi remote relay module into your electronic starting sounder.

But that I'm afraid, is behold the scope of these help notes (see Facebook group for more details).

<go to top>

WiFi External Signal Lights

WARNING - This is an experimental function at present, and it is unknown how many WiFi remote relay types it will work with.

To enable the control of an external (electronic) signal lights, the app can, via Wi-Fi, send combined horn/light commands to a four relay remote WiFi module.

These commands being in sync with the existing signal prompts i.e. start sequence, etc.


For this to work, you need to:

- Install the DSRC related software on the WiFi remote relay (see Facebook group for more details)

- Connect the WiFi remote relay with this Android device

- Set WiFi On/Off and horn - ON

- Set WiFi signal lights - ON

- Set Sound ON


See Settings for more details on the controls mentioned above.


The one used for development is a ESP8266 plus ESP01S.

Which when loaded with the DSRC related software (which acts as a AP server or STA client), has the following fixed parameters:


- IP Address: 192.168.4.1

- Port number: 23


Note: The WiFi remote relay IP address, and Port number are saved at Exit i.e. the app remembers them.


You will of course need to incorporate the WiFi remote relay module into your electronic starting equipment.

But that I'm afraid, is behold the scope of these help notes (see Facebook group for more details).

<go to top>

WiFi External timer display

WARNING - This is an experimental function at present, and therefore still evolving...

To enable the control of an external (electronic) timer display, the app can, via Wi-Fi, send timer data to a remote WiFi module.

These commands being in sync with the existing timer displayed on the Race Screen (countdown and race elapsed)

The data is in the form of:

Total seconds - This allows a number of display configurations e.g. hh:mm:ss, h:mm:ss, mm:ss

RGB levels - Intensity level for each colour (from 1 to 255)

Timer state - Current timer 'mode' 0 = Countdown, 1 = Count Up, 2 = Race ended, 3 = Real Timer Clock (RTC)

Example - x121,255,0,0,0

Which represents:

'x' = timer

121 = seconds (e.g.00:02:01)

255 = max Red

0 = min Green

0 = min Blue

0 = State is Countdown


For this to work, you need to:

- Install the DSRC related software on the WiFi remote controller e.g. NodeMCU, Arduino (see Facebook group for more details)

- Connect the WiFi remote relay with this Android device (can be on the local network)

- Set WiFi On/Off and horn - ON

- Set WiFi timer display - ON

- Set timer display level (brightness) as required (1 to 255)


See Settings for more details on the controls mentioned above.


The current development firmware has been tested on ESP01, Arduino Nano, and NodeMCU(E12)

Which when loaded with the DSRC related software (which can act as a AP server or STA client), has the following initial fixed parameters:


- IP Address: 192.168.4.1

- Port number: 23


Note: The WiFi remote relay IP address, and Port number are saved at Exit i.e. the app remembers them.


You will of course need to incorporate the WiFi remote controller into your electronic starting equipment.

But that I'm afraid, is behold the scope of these help notes (see Facebook group for more details).

<go to top>

Admin mode

If Admin is On (see settings for how to enable), then the following 'extra' options/capabilities are available:


COMPETITORS SCREEN:

LOAD button - Allows admin user to Load/Overwrite or Load/Merge a predefined Fleet of competitors via an external file (.txt or .csv)


For both Load and Merge, the app will attempt to find missing data fields using the built in ratings, and in the case of Merge, the existing fleet

For Merge the default is to deselect all entries of the existing fleet prior to performing the Merge, but this can be overridden.


Column Headings for import:

HelmName,Class, SailNo, Rating, Fleet, Selected, StartNo or Fleet, Class, SailNo, HelmName, Rating, Selected, StartNo


Order is not important (except fleet preceding StartNo), additional columns will be ignored, missing columns will use default values.


Import file can easily be created from a Sailwave file using the Sailwave program SWClist.


The LOAD option can also view/share/rename/delete .pdf files, and share/rename/delete .csv and .txt files.


OPTIONS - Extras:

- Select All Competitors - Select the whole fleet for racing...

- View Class - View and Edit the Class list, which is auto-created when Competitor data is read into app

- Save Custom Competitors - Information saved to custom directory, and can be linked to a Custom Settings file

- Apply Standard Ratings - Uses the built in ratings to update the PYN of Classes it matches with

- Delete all Competitors - Delete the whole fleet... There is a confirmation dialogue on this


Also, for Competitor and Fleet edit dialogues, there will be a Delete option (with a confirm dialogue if selected)


RACE SCREEN:

OPTIONS - Extras:

- Edit previous race - Allows selection, display, and editing of previously saved races

Skip Start Seq - If all you need to capture are lap and final times.

'Skip Start Seq.' will be available via Options->Start/Stop option... of the Race Screen, but only when there is no race in progress.

This will effectively miss out the current start sequence(s), and go directly into timings capture mode.

Notes:

Only available currently for Single and Multi-fleets races i.e. not Pursuit or RC countdown.

The Start time(s) are set to the current time of day, and elapsed to zero.

Results will be created, but they are of course based upon what is likely to be the incorrect start time.

Jump to finish - If all you need is to capture the finishing order of a Pursuit race.

'Jump to finish' will be available via Options->Start/Stop option... of the Race Screen, but only when there is no race in progress.

This will effectively 'jump' to the the end of the race, ready to capture final times (in their finishing order).


Notes:

Race clock will 'jump' to race duration value (as thought the race had taken place).

Only available for Pursuit race.


Create results manually - Allows the manual construction of results from noted timings.

'Create results manually' will be available via Options of the Race Screen, but only when there is no race in progress.

Once selected, the Racers view will be displayed in Edit mode, ready to accept editing of:

- Lap times and codes, via long press on racers entry (as per normal post race editing)

- Change start Date, via the options menu

- Change start Time, via the options menu

- Change race number, via the options menu

Note - Only available currently for Single and Multi-fleet races i.e. not Pursuit or RC countdown.

<go to top>

Crash recovery

To try and avoid data loss due to system failures (device power off), system resources pressures (stopped in background), or simply switched off whilst running.


The app will attempt to recovery the 'last' race state it noted before the event when the Race Screen is used, and covers:

- Timings capture

- Finish Open

- Race ended

- Pre/post save of results

- Post Editing (but not yet saved)


Limitation - All starts (single, planned rolling, post zero pursuit) must have been completed.


The recovery process is automatic upon entry to the Race Screen (i.e. no user interaction is required).


The recovery files are deleted upon a race terminating event (Reset, Abort, Abandon, and Postpone).

<go to top>

EXPERIMENTAL

To allow the testing of new/development features, the app now has an 'Experimental' setting (set via Main Screen Logo 'long press').


Once selected, the following become available:

Battery state info is sent via WiFi once a minute as "bxxx", where xxx is the current battery charge state (0-100).

Note - This will only occur when WiFi is active.

For DSRC V3.5 (and above), the series files are now created in a sub folder /files/series, which means it will no longer look for them in /files.

To enable users to migrate existing series files, there will be an additional sub-Option ("V3.5 copy to series subdirectory") when one is selected via Saved results (in Results Screen results mode).

Warning - To account for a series files which contain only one race, it will be possible to select any .csv file. So please be careful as to which files you migrate.

<go to top>

About app

App was originally created specifically for small mixed fleet race data recording.

And was based around the manual recording sheet used by Lakeside Sailing Club (LSC) Peterborough, which complies

with RYA guidelines for the running of races.


From this LSC only version, DSRC has evolved (and still is) into a 'Swiss Army' knife style app, which attempts to meet the race control requirements of a much larger audience.

The only danger is that it will become too complex and put people off trying/using it.

I strive every day to prevent it, but only time will tell :o)


App designed and coded by Robbie Robertson during 2017/2018/2019/2020/2021/2022.


Kudos to the Sound Effects Factory for the royalty free voice countdown sound bites.


Apache POI licensing (used to create .xls files):


Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at


http://www.apache.org/licenses/LICENSE-2.0


Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.


And a big thanks to Keith Sykes for his continuous support with testing, design input, and assistance with the operational aspects of racing (especially multiple fleets and external interfacing).


Known issues:


WARNING - On some devices, it is possible that the Android 'system' will 'kill' (without notice) background apps.

Whilst DSRC tries to recover from such an event by reloading the last saved competitors and settings (in Competitors and Race screens), and certain race data (see Crash recovery).

If you find your device doing this, then it's best not to put DSRC in the background whilst racing is in progress...


Any feedback appreciated, be it problems with the app, or improvement suggestions :o)


To promote discussions and share ideas, there is now a Facebook group:


Dinghy Sailing Race Control Facebook group


And a web site:


DSRC website

<go to top>