Voice instructions - periodic announcing the remaining route length
it could be useful to implement for voice instructions the option of periodic announcing the remaining route length. It may be useful info for those bikers/hikers following just voice with screen OFF.
It could be config determined by fixed time interval,. Or, for each X km or Y % of the route, whatever comes later - by similar logic as min distance AND min time for track recording. Time interval is probably the easiest way.
Optionally, if some algorithm is adopted, in form of estimated time of arrival.
Optionally, it may not to be limited to remaining route, but can provide chosen available info, like altitude, average speed for recent time period, etc...
As inspiration, I use with success for bike routes 40-150 km the mental estimation as below, giving good numbers for bike trekking, including short technical/refreshing pauses.
hours = length[km]/20 + filtered_ascend*[m]/500
hours = length[km]/15
Filtered ascend is provided visually by http://brouter.de/brouter-web/ or during GPX generation by BRouter app. It is obtained as products of analysing of elevation profile, filtering it by 10 m hysteresis filter. It filters out small SRTM artefacts and small up/down road waves, more or less covered by the bike momentum.