osmandapp / OsmAnd

OsmAnd
https://osmand.net
Other
4.69k stars 1.02k forks source link

Nasty Bug: Routing from A to B - always includes current postion #5677

Closed desputinski closed 8 months ago

desputinski commented 6 years ago

Hi, I'm not sure, if I am not intelligent enough for Osmand of if this App has a major Bug. When I try to route from one place to another that are both NOT my current gps-positions ... Osmand just includes my current position into the route without listing it in the list of the navigation places... For example. My Position is street 1 but I would like osmand to calculate a route from street 2 to street 3, osmand calculates street 1 to street 2 to street 3. Why???

Sorry for my harsh tone, but this really annoys the hell out of me! I actually really like osmand and enjoy my more or less Google-free Android-Phone.

best regards desputin

scaidermern commented 6 years ago

Can you show a screenshot of your navigation settings where from and to are configured?

desputinski commented 6 years ago

sure: https://gesundheitstabelle.de/images/Screenshot_2018-07-16-11-08-24.png.jpg The blue arrow north of the "from" and "to" addresses shows my current position. The distance between "Bibl. Mitte Geschw. Scholl" and "Charlottenstraße (Mitte) 65" should be something like 1 Km. But it shows the whole distance between my position and the last point... The blue arrow north of the "from" and "to" addresses shows my current position. The distance between "Bibl. Mitte Geschw. Scholl" and "Charlottenstraße (Mitte) 65" should be something like 1 Km. But it shows the whole distance between my position and the last point...

sonora commented 6 years ago

Your mistake is you went one step too far already: After specifying start and end point, just wait., the route will be calculated and then displayed without further ado. You can afterwards step through it, display the detailed turn list, etc.

But if you tap the "Go" button ("Los" on your screenshot), it means you now move from mere route calculation to "Navigation", i.e. turn-by-turn instructions. This "Follow" mode, of course, makes only sense for your actual position.

Oved the years I have occasionally seen users not readiy comprehending that for mere route calculation no button is to be tapped, and that tapping GO starts the turn-by-turn navigation. I guess there must be a way to improve this UI behavior, but nobody has yet come up with a suggestion how.

desputinski commented 6 years ago

Hi sonora, thank you for this explanation. You are right, that way it works.

The problem is, that if you use Osmand in 90% of all cases routing with using the "Navigation"-Button, one is not used to not do it, while planning a trip not from the current position 10% of all cases. Clicking the button is practically automatic.

Also the progress-bar on the bottom is so small and thin that one hardly sees it. Also people who are impatient tend to click while waiting - just to irrationally "hurry up" the loading process.

sonora commented 6 years ago

I am wondering if it could help if in the line where the route details will eventually appear, we would provide a verbose status, such as

Making the progress bar a bit wider is likely also a good idea, but it does not appear until a GPX fix is found.

desputinski commented 6 years ago

Yes, I think "Route is being calculated" as a message would be best. Maybe half transparent at the bottom above the status bar or so.

scaidermern commented 6 years ago

I've already suggested to make the progress bar wider / more visible in #4149 and #5506 :/

Sunbird commented 5 years ago

Hi all, stumbled about the same issue yesterday and was very confused.

Issue: I was cycling and navigated from my GPS position (point A) to a camp site (point B). As the day was still young, I wanted to check the distance from the destination camp ground (point B) to an other one further up the valley (point C), to check, if I can reach this one during day time. So I canceled my ongoing navigation, selected both camp grounds as start (point B) and stop (point C) and hit "start" as I thought it would kind of hide the menu and show me the route once the calculation has finished. However I found myself including my GPS position in the route what I did not want. My intention is to see the route from point B to point C on the large map to check the route. For some reason, my GPS position was included all the time disregarding that the route's start was set to point b. I did not find a way to exclude my GPS position. Even disabling my GPS lead to the grey icon (last known) position to be included in the calulation. This was very confusing. In the end I calculated the route A-B-C and subtracted the route A-B from the result to get B-C. Not very convenient. ;-)

As I learned by the explanation of sonora (https://github.com/osmandapp/Osmand/issues/5677#issuecomment-405388670) one has just to wait until the automatically triggered calulation has finished. The behaviour that the button "start" starts navigation based on your local GPS position is not intuitive and very misleading as you don't have any idea of this functionality. Beside that I don't know if you are able to see the route in the full screen map somehow without "cancel" or "start".

Recommendation: 1) Optionally, but nice to have: Option to disable the automatic route calulation in the settings and show a "calulate now" button. Especially if you plan your route by adding a few interim destinations one by one, you kind of discard the already calulated results which is unnecessary (and drains the battery). 2) Introduce one more button to the bottom called e.g. "Map" and rename the button "Start" to "Navigate". This way you have: Cancel - tooltip e.g.: Discard route and return to map. Map - tooltip e.g.: Calculate route and return to map. Navigate - tooltip e.g.: Include your current GPS position to route and return to map.

This way the user can select each function by a button. What are your thoughts about that?

oxxm commented 5 years ago

Can verify a similar issue with 3.4.4.

Nothing happens in the foreground when switching from "current position" to "Address A". Even when not taping on the "go" button. Maybe some calculations happen in the background. The calculated route from "current position" to "Address B" is still displayed. The current position is not ignored.

scaidermern commented 5 years ago

Can confirm, the manually configured starting point is replaced by the current position.

Maybe this is caused by OsmAnd assuming that the user started driving / walking because of minor GPS inaccuracies and thus replaces the manually configured starting point with the current GPS position.

oxxm commented 5 years ago

One other thing that could help with the analysis:

When replacing "Current Position" with "Address A", The position of "Address A" gets a green flag.

Displayed are: Green flag for "Address A" The calculated route from "Current position" - "Address B" and "Address B" with the finish line flag

godfuture commented 8 months ago

This issue can be seen as bug, but also misconception.

Background: When you plan a route, you always need two points. In OsmAnd you normally start with searching the first point (start or stop). Having one point selected on the map, the user can choose "Navigation (with icon)" to set it as stop or "Action" -> "Navigate from" to set this point as start.

Problem: As @Sunbird reported, if you choose "Navigation" or "Navigate from", the route calculation will start automatically. As @desputinski correctly reported, the second point used in automatic calculation will always be your own gps position. The second point of the route was never selected by user. The route calculation can take very long time given the distance. This means the user waits for something he maybe never intended to start.

Solution: if OsmAnd would not automatically start the route calculation and give the user the posibility to descide between gps position or anoter point as second point, before calculation starts, then this issue would not be a problem anymore. After selecting "Navigation" or "Navigation from" for the first point, simply open the navigation dialog in the botton of the screen, and by default fill the second point with gps, but do not start calculation. The user can then click "start" or search for the second point. Again, after selecting the second point, open the dialog in the bottom and let the user decide -> "start" or even adding additional points in between.

This issue can be seen as misconception, because there is a "start" button on navigation dialog. But normally the user does not need this button, because anyway the route is calculated automatically when doing "Navigation" or "Navigation from".

This issue can be seen as bug, because automatic start of calculation simply seems like a feature, but actually introduces wait that blocks the user to finish his task.

godfuture commented 8 months ago

Hi all, stumbled about the same issue yesterday and was very confused.

Issue: I was cycling and navigated from my GPS position (point A) to a camp site (point B). As the day was still young, I wanted to check the distance from the destination camp ground (point B) to an other one further up the valley (point C), to check, if I can reach this one during day time. So I canceled my ongoing navigation, selected both camp grounds as start (point B) and stop (point C) and hit "start" as I thought it would kind of hide the menu and show me the route once the calculation has finished. However I found myself including my GPS position in the route what I did not want. My intention is to see the route from point B to point C on the large map to check the route. For some reason, my GPS position was included all the time disregarding that the route's start was set to point b. I did not find a way to exclude my GPS position. Even disabling my GPS lead to the grey icon (last known) position to be included in the calulation. This was very confusing. In the end I calculated the route A-B-C and subtracted the route A-B from the result to get B-C. Not very convenient. ;-)

As I learned by the explanation of sonora (#5677 (comment)) one has just to wait until the automatically triggered calulation has finished. The behaviour that the button "start" starts navigation based on your local GPS position is not intuitive and very misleading as you don't have any idea of this functionality. Beside that I don't know if you are able to see the route in the full screen map somehow without "cancel" or "start".

Recommendation:

1. Optionally, but nice to have: Option to disable the automatic route calulation in the settings and show a "calulate now" button. Especially if you plan your route by adding a few interim destinations one by one, you kind of discard the already calulated results which is unnecessary (and drains the battery).

2. Introduce one more button to the bottom called e.g. "Map" and rename the button "Start" to "Navigate".
   This way you have:
   Cancel - tooltip e.g.: Discard route and return to map.
   Map - tooltip e.g.: Calculate route and return to map.
   Navigate - tooltip e.g.: Include your current GPS position to route and return to map.

This way the user can select each function by a button. What are your thoughts about that?

Exactly what it needs to make OsmAnd a better navigation app. This makes me crazy all the time and your comment shows good solutions. My phone gets pretty warm, because when I try to plan a route, the calculation starts unintended (see my previous post) and eats my battery.

vshcherb commented 8 months ago

I think that issue is rather outdated and might not be reproducible any more