Wear OS navigation: is there an option to get a voice/sound/vibration feedback at turns?

Jorge De Castro shared this question 7 months ago
Answered

Hi,

recently got a Wear OS watch, and I use Locus Map with it.

I created gpx tracks that I want to follow and see the navigation option on my phone, and would love to get an indication on the watch whenever a turn is coming, either by voice, vibration or sound so that I dont have to check the watch constantly.

Is such an option implemented already and I just cannot find it? Or is it not possible at the moment?

Thanks

Comments (1)

photo
1

Hi Jorge,

we are very sorry but, unfortunately, the development of the Locus Map Watch add-on had to be suspended due to lack of resources. Hopefully, we'll be able to continue some time in the future. Until then, no changes or improvements can be made. Thanks for understanding.

photo
1

Hello! It there any changes? Vibrate before turn and after leaving track is must have functions.

New snapdragon processor can give second live to wear OS watch and more and more people will be using them for navigation.

There are not so many competitors at outdoors navigation for wear Os and I think Locus is the most convenient. Viewranger better only at one point: it can work without phone. Outdooractive is buggy, Google maps don't have trails (but have vibration).

WearOS app is the only reason why I installed Locus (pro). Before I bought watch I used Osmand+ and was totally satisfied.

photo
1

Viewranger, while it had a good WearOS app, has ceased development after they were bought out by outdoor active, which as you say is buggy, outdoor active app is appaling


So yes, while Locus is awesome, it also happens to ahve the best wearOS companion app as well

photo
1

In the mean time it might be possible to use the tasker AutoWear addon to send vibration feedback

but only if the tasker locus addon gets the ability to detect turn/navigation events

photo
1

Hello Alistair,

do not know to be true, never tried it. Currently, during navigation, there should be a permanently visible notification in the system toolbar. This also updates in case of any change. Isn't somehow possible to detect the content of this notification and send some events to the Wear device?

I've never played with Tasker & Wear, but I remember some users wanted to get a notification on some watches that just duplicate notification from the system toolbar and it worked under some circumstances.

Extending tasker Locus add-on to support also this info may be doable, but it's a task on a different person than me :). @Falco?

photo
1

Thats a good point, Notification morroring might be enough, and is very easy

There are ways in tasker to read notifications, if it contains certain words, take action. whoch could be send vibration notification.


Im no developer but I know Joao, the Tasker developer is planning to make tasker even more interoperable

https://www.youtube.com/watch?v=48IVJgDtu6Y

Would be interesting if Tasker could react to state changes in Locus ( using Profiles)

that way navigation/guidance changes could be reacted to

ie Locus decares turn left, Tasker could play a Turn left MP3 file, show a screen in bright pink , vibrate watch 3 times etc.

Locus says Turn right, different behavior.

Guidance would also help, ive tried to make a task that compares bearing to guidance azimuth so it can vibrate when phone is pointing towards azimuth of target, but this is really slow as it has to constantly query

if Locus could send intent to tasker that said navigate turn left, guidance left, guiodance right, or various base data, Then we achieve a lot of these specific extra features ( I want vibrate when bearing = guidance target azimuth for example, at the moment its distance base)


Falcos tasker plugin is great, and I use it every week, Well done Falco

photo
1

Custom solutions would need any way to get navigation events over locus API or android API to be able to handle them and create some custom notifications for unsupported devices.


In the past we did propose using a system notification, because some kind of system notifications get synced with the watch. We did propose this here: https://help.locusmap.eu/topic/locus-for-wear-out-of-route-notification


But now you told us that we already have a android notification right now which already get updated on every turn. I did notice them too, but didn't play arround with them. I guess if we already have them, it is just a matter of finding out if these are the correct type of notifications to be eligible to be synced to the watch and if updates get synced as well.


I would suggest to have a look on the standard solution (system Notifications) first and if there are good reasons why we can not change the type of android notification to be able to be synced with the watch, we could talk about an android event for our geeks :)

In Tasker we could receive some types of Android events, I would just add a configuration snipped into the tasker addon which is showing how to configure them directly in tasker instead of creating a service which is listening for locus events to recreate them for tasker, that would just add unneccesary dalay and even worse: hidden points of failure.

photo
1

I believe, in Locus API, directly in the "UpdateContainer" object are already information about coming navigation commands. Posting a exact moment when notification should play is a little bit complicated, but it should be doable to perform a custom type notification and define something like "10 seconds before turn, vibrate". And this should be already doable over Locus API (I believe).

Notification were made some time ago and I'm not perfectly sure they are suitable for this task. In case of interest, feel free to open a new idea with required changes. I'll gladly look at it.

Menion

photo
1

Good workaround, you can get notification information ahead of time. You could get the distance to the next navigation command and the command itself. You would just need to calculate how long you need to wait until you send your notification based on distance and speed.


Or more simple, just notify on each collect data task if the next navigation point is near.

If I remember correct, there was even a way to get the 2nd navigation command. @Menion is there a 2nd navigation command availble over api, or will it just contain the 2nd next track point (which does not contain any major direction change)


More standard would be android notification because these get automaticaly synced with watches if we use the correct ones and if watches support notification updates instead of recreating notifications.


Did anybody check how the current notficiations are supported by android watches? They didn't exist in the past.

photo
1

@Falco , yes two coming navigation commands are available over API. Check here.

photo
1

Tasker Task: Get Locus Data Every 60s (1 minute is the smallest repeat task setting)

- get Data over locus tasker plugin
- if navPointFirst.time is less than 90s (some buffer needed)
- - notify that next turn is navPointFirst.distance away
- if navPointSecound.time is less than 90s
- - distanceNext =navPointSecound.distance - navPointFirst.distance
- - notify that this is followed by turn distanceNext away after next turn

Or if you want to be a bit more accurate, you could reduce the refresh time by placing a loop inside your "navigation point is near" condition where you wait only 1-10s between each refresh. But don't forget to configure your task to close the last execution on next execution or limit the loop to 60s :)

photo