osmandapp / OsmAnd

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

maxspeed:motorcar should override maxspeed #14822

Closed Vascom closed 1 year ago

Vascom commented 2 years ago

Description

A few month ago for some toll roads was added additional maxspeed tags to follow truth on the ground rule. For example: added

maxspeed:motorcar=110
maxspeed:goods=110

and maxspeed changed from 110 to maxspeed=RU:rural (90 kmph).

Now Osmand always use only maxspeed=RU:rural tag so it produce wrong speed limit alerts and can wrongly calculate routes.

This roads has speed limit sign 110 with clarifying plate "for cars and trucks less than 3.5t". So tags looks correct but Osmand can't understand them.

Example roads: https://www.openstreetmap.org/way/1068479200#map=18/55.62498/37.17539 https://www.openstreetmap.org/way/184324542#map=15/53.6438/38.0653

How to reproduce?

Always

Your Environment

OsmAnd Version: 4.2.6 Android/iOS version: 12 Device model: Xiaomi Mi 9

Maps used (online or offline):
Issue for all recent offline maps and must be for online maps too.

Please make Osmand to correct handle this situation.

literannn commented 2 years ago

support this issue. It's applicable for many freeways in Russia - M4 "Don" for example.

Tag maxspeed:motorcar is used more than 4000 times worldwide: https://taginfo.openstreetmap.org/keys/maxspeed%3Amotorcar

vshcherb commented 2 years ago

As I understand the request is following maxspeed:motorcar should override maxspeed for cars. I would say situation here is very confusing and it's totally not clear what's default speed. As I see default speed maxspeed = 90 kmh but for cars it's 110 kmh. Then who is going to use default maxspeed, I think it's rather exceptional that cars on motorway can drive faster than default maxspeed.

Vascom commented 2 years ago

Default maxspeed should use all other who allowed on this type of road: bus, hgv, motorcycle...

vshcherb commented 2 years ago

That's very exceptional as I see, that's why I marked it Nice to have. Moreover it's not clear why without specific setting we should display "motorcar" settings when for "truck" / "motorcycle" we have profiles but car is very generic.

I would say it should be default 110 or conditional ... Screen Shot 2022-07-11 at 14 42 39

literannn commented 2 years ago

In this issue we talk about this sign combination: https://yandex.ru/maps/-/CCUNNZFPPA

not about electronic road signd

literannn commented 2 years ago

@vshcherb maybe you should read this thread in RU-forum https://forum.openstreetmap.org/viewtopic.php?id=75381

ZinaidaZ commented 2 years ago

Hi there!

Actually, we are talking about another signs combination: Снимок экрана 2022-07-11 в 18 06 12

These signs represent that mentioned speed limit relates to motorcars and lgv only. And default speed limit is RU:rural, which is applicable for all other vehicle types.

ZinaidaZ commented 2 years ago

Also this signs combination quite frequently appears on many major roads (highway=motorway/highway=trunk)

vshcherb commented 2 years ago

I could agree that community decides it's a better way to tag and to describe ToG. Though "maxspeed" tag means default tag and it's used by applications not by Human! So it means by default we should use "maxspeed" and only if specific vehicle specified we should switch to "maxspeed:".

Even though I would say we already support similar behavior to "oneway:<>" - https://github.com/osmandapp/OsmAnd-resources/blob/master/routing/routing.xml#L630. So that's probably an argument to support here as well. However it might be not that easy here as in routing.

Vascom commented 2 years ago

I could agree that community decides it's a better way to tag and to describe ToG. Though "maxspeed" tag means default tag and it's used by applications not by Human! So it means by default we should use "maxspeed" and only if specific vehicle specified we should switch to "maxspeed:".

Yes, this is what we are talking about. The maxspeed tag remains, but if there is a maxspeed:<specific_tag> then use it.

alexey-zakharenkov commented 2 years ago

@vshcherb I think different interpretations of what is "default" are used in this discussion. Everything falls into place as soon as we don't consider motorcar (aka "passenger car") a default vehicle type. Motorcar is means of transport like motocycle or bus, not worse and not better. OsmAnd processes maxspeed:hgv, so what's the reason not to process maxpeed:motorcar?

vshcherb commented 2 years ago

No maxspeed:hgv is not supported in the widget either, so it's need to be implemented first

vshcherb commented 1 year ago

The changes are in place

<select value="$maxspeed:motorcar" t="maxspeed:motorcar"/>
            <select value="$maxspeed:practical" t="maxspeed:practical"/>
            <select value="$maxspeed:advisory" t="maxspeed:advisory"/>
            <select value="$maxspeed" t="maxspeed"/>
Zirochkabila commented 1 year ago

OsmAnd~ 4.4.0#14217mqta, released: 2023-03-04 4.4.6.2

Limit 110, but displayed 90 https://www.openstreetmap.org/way/184324542#map=16/53.6405/38.0708 Although the limit of 110 is displayed in the opposite direction

Limit 110 Screenshot 2023-01-31 at 11 19 41 Screenshot 2023-01-31 at 11 19 41
literannn commented 1 year ago

OsmAnd~ 4.5.0#35815m, 2023-04-19 Android 13

nothing changed: on the road where we have tags:

maxspeed:motorcar=110
maxspeed=RU:rural

https://www.openstreetmap.org/way/249455819

OsmAnd shows 90 restriction on "Автомобиль" profile.

Please add support of maxspeed:motorcar tag

Zirochkabila commented 1 year ago

@literannn is it related to https://github.com/osmandapp/OsmAnd/issues/17017?

literannn commented 1 year ago

@Zirochkabila I don't know. I have not seen any other problems with maxspeed except places with maxspeed:motorcar tag.

literannn commented 1 year ago

Do we have any chance to solve this issue?

No possibility to use OsmAnd for navigation on main russian toll highways cause every 3-5 minutes I get fake "you exceeding the speed limit" warning

vshcherb commented 1 year ago

The issue was fixed in 4.4, so it's already 4.5 is out though we reopened but it deserves a new issue. We regularly release betas so it's worth to test once issue is closed

literannn commented 1 year ago

Night version 4.6.0#565m от 05.08.2023, fresh Moscow region maps (01.08.2023)

https://www.openstreetmap.org/way/1067603700

maxspeed:goods=110 maxspeed:motorcar=110 maxspeed=RU:rural

navigator says: "Speed limit 90" :(((

xmd5a2 commented 1 year ago

Routing data for https://www.openstreetmap.org/way/184324542#map=15/53.6438/38.0653 Encoding rules 33 (0 KB): {osmand_ele_desc=7, maxspeed=4, osmand_ele_asc=3, surface=1, osmand_highway_integrity_brouting=1, motorroad=1, toll=1, oneway=1, osmand_ele_end=1, int_ref=1, ref=1, road_ref_1=1, lit=1, osmand_ele_decline_1=1, name=1, lanes=1, route_road_1_ref=1, osmand_ele_decline_3=1, osmand_ele_start=1, highway=1, osmand_ele_decline_7=1} Road 11796770697 osmid 184324542 highway='trunk' lanes='2' lit='no' maxspeed:goods='110' maxspeed:motorcar='110' maxspeed:practical='110' motorroad='yes' oneway='yes' surface='asphalt' toll:designated='yes' osmand_ele_start='247' osmand_ele_end='215' osmand_highway_integrity_brouting='0' maxspeed='90' int_ref="E 115" name="«Дон»" ref="М-4" road_ref_1="М-4" route_road_1_ref="М-4"

literannn commented 1 year ago

@xmd5a2 and what it means ("maxspeed=4")?

xmd5a2 commented 1 year ago

@xmd5a2 and what it means ("maxspeed=4")?

Number of tags in the entire map

Dima-1 commented 1 year ago

Way: «Дон» (184324542)

ivanPyrohivskyi commented 1 year ago

Also need porting code to C++ (core-legacy) and iOS

yuriiurshuliak commented 1 year ago

The bug has been resolved, we've conducted testing on the three problematic routes mentioned earlier. When simulating navigation along these routes at a speed limit of 110 kilometers, the Alert widget now correctly displays a speed limit of 110 kilometers instead of the previous 90 kilometers.

Check out the tested routes by following these links:

Route 1 Route 2 Route 3

OsmAnd~ 4.6.0#818m, released: 2023-09-29