Speed limit display

587 views
Skip to first unread message

Sebastian Spaeth

unread,
Sep 12, 2012, 6:18:41 AM9/12/12
to osm...@googlegroups.com
Hi all,

the new speed limit alarm display is wonderful! but... (there is always a but :-))

It would even be better if:

1) rather than showing "85 km/h" we could show 80/100 to signal how fast osmand thinks we could go. This would help me to review the OSM data and improve it where it is wrong. TomTom also shows it this way. (I think this should fit size-wise).

2) I was driving 100km/h on a Swiss Tertiary road where the default is 80km/h, and did not get any alarm. I get immediate alarms when I enter towns where explicit maxspeed=50 is set. Do we only consider explicit speed limits or do we also take defaults into account? (we should :-)).

Excellent work!
Sebastian

Sebastian Spaeth

unread,
Sep 12, 2012, 7:46:52 AM9/12/12
to osm...@googlegroups.com
Followup to myself: Just seen in the code that osmandMapCreator only assigns explicit values between 70-90. Otherwise CarRouter.java uses default values given here:

https://code.google.com/searchframe#G5Ubr7gffkM/DataExtractionOSM/src/net/osmand/router/CarRouter.java&q=tertiary%20package:osmand\.googlecode\.com&sq=&l=24&ct=rc&cd=3

What does e.g.
 autoNotDefinedValues.put("tertiary", 35d);//important urban roads
imply? Certainly not an average speed of 35km/h? This also answers my question if we show default speed alarm signs. We do not.
Should we be able to use default values depending on the region? E.g. in Germany default speed outside of cities is 100, while in Switzerland it is 80.
This should matter, right? Not sure, how to distinguish defaults though.

Sebastian


Nicolas Palix

unread,
Sep 12, 2012, 8:54:19 AM9/12/12
to osm...@googlegroups.com
Hi all,

On Wed, Sep 12, 2012 at 1:46 PM, Sebastian Spaeth <spa...@gmail.com> wrote:
> Followup to myself: Just seen in the code that osmandMapCreator only assigns
> explicit values between 70-90. Otherwise CarRouter.java uses default values
> given here:
>
> https://code.google.com/searchframe#G5Ubr7gffkM/DataExtractionOSM/src/net/osmand/router/CarRouter.java&q=tertiary%20package:osmand\.googlecode\.com&sq=&l=24&ct=rc&cd=3
>
> What does e.g.
>
> autoNotDefinedValues.put("tertiary", 35d);//important urban roads
> imply? Certainly not an average speed of 35km/h? This also answers my
> question if we show default speed alarm signs. We do not.
> Should we be able to use default values depending on the region? E.g. in
> Germany default speed outside of cities is 100, while in Switzerland it is
> 80.
> This should matter, right? Not sure, how to distinguish defaults though.

I don't think OSM will provide such information. This could be defined in
a resource of the project.

For France, there are 4 limits:
- motorway 130 (110 while raining)
- trunk (110)
- 90 elsewhere except in cities where it is 50

How does this scheme change in order contries ?

The most difficult part will be for cities I think, as ways are tag
as anywhere else. city_limit, place and boundaries could help however...


>
> Sebastian
>
> Am Mittwoch, 12. September 2012 12:18:41 UTC+2 schrieb Sebastian Spaeth:
>>
>> Hi all,
>>
>> the new speed limit alarm display is wonderful! but... (there is always a
>> but :-))
>>
>> It would even be better if:
>>
>> 1) rather than showing "85 km/h" we could show 80/100 to signal how fast
>> osmand thinks we could go. This would help me to review the OSM data and
>> improve it where it is wrong. TomTom also shows it this way. (I think this
>> should fit size-wise).
>>
>> 2) I was driving 100km/h on a Swiss Tertiary road where the default is
>> 80km/h, and did not get any alarm. I get immediate alarms when I enter towns
>> where explicit maxspeed=50 is set. Do we only consider explicit speed limits
>> or do we also take defaults into account? (we should :-)).
>>
>> Excellent work!
>> Sebastian



--
Nicolas Palix
http://www.palix.info/home.html

Sebastian Spaeth

unread,
Sep 12, 2012, 9:06:58 AM9/12/12
to osm...@googlegroups.com, nic...@palix.info
Am Mittwoch, 12. September 2012 14:54:20 UTC+2 schrieb Nicolas Palix:
> Should we be able to use default values depending on the region? E.g. in
> Germany default speed outside of cities is 100, while in Switzerland it is
> 80.
> This should matter, right? Not sure, how to distinguish defaults though.

I don't think OSM will provide such information. This could be defined in
a resource of the project.

Such default speed information has been collected already: http://wiki.openstreetmap.org/wiki/OSM_tags_for_routing/Maxspeed. It is a matter of detecting the country and applying that value :-) (and what when we cross countries? Oh oh, tricky).

Have now discovered routing.xml and understand more of the routing logic that we use.

Still, what we could do is not change osmand at all, but have some smartness in osmandMapCreator. It can set a rough speed attribute of a road, so when reading in .osm files, it could set that attribute based on the type: e.g. highway=tertiary in Switzerland could be set to 90 (there is only 70 and 90 it seems). This way, we would get at least *some* speed limit alarm without having to change osmand and adding per-country hacks to it.

I don't think we need to get into the within/outside of cities for now. A whole new can of worms :-)

Sebastian

Sander Deryckere

unread,
Sep 12, 2012, 9:26:04 AM9/12/12
to osm...@googlegroups.com, nic...@palix.info


2012/9/12 Sebastian Spaeth <spa...@gmail.com>




Such default speed information has been collected already: http://wiki.openstreetmap.org/wiki/OSM_tags_for_routing/Maxspeed. It is a matter of detecting the country and applying that value :-) (and what when we cross countries? Oh oh, tricky).

Have now discovered routing.xml and understand more of the routing logic that we use.

Still, what we could do is not change osmand at all, but have some smartness in osmandMapCreator. It can set a rough speed attribute of a road, so when reading in .osm files, it could set that attribute based on the type: e.g. highway=tertiary in Switzerland could be set to 90 (there is only 70 and 90 it seems). This way, we would get at least *some* speed limit alarm without having to change osmand and adding per-country hacks to it.

I don't think we need to get into the within/outside of cities for now. A whole new can of worms :-)

Sebastian

It's not only the maxspeed that is profile depending. Also the access rules: can you go on a trunk with a bicycle? Does access=destination implies bicycle=yes (it does in Belgium)? ...

Or how cycle-friendly are paths and cycleways? Do they get a big priority over unclassified ways? or not?

How consistent is the default maxspeed? In Belgium, we have more kilometers with exceptional maxspeeds (70) instead of the legal default ones (50 or 90).

If the routing is fine tuned for the general world, I think creating xml files per country would be needed, and getting help from local OSM groups to translate their tags into routing profiles.  We could use the mailing lists to ask for their help once we need it.

But for now, keeping it general and not inlcuding the maxspeeds will be fine I think.

Sebastian Spaeth

unread,
Sep 12, 2012, 9:35:14 AM9/12/12
to osm...@googlegroups.com, nic...@palix.info
Am Mittwoch, 12. September 2012 15:26:25 UTC+2 schrieb Sanderd17:
2012/9/12 Sebastian Spaeth <spa...@gmail.com>

Still, what we could do is not change osmand at all, but have some smartness in osmandMapCreator. It can set a rough speed attribute of a road, so when reading in .osm files, it could set that attribute based on the type: e.g. highway=tertiary in Switzerland could be set to 90 (there is only 70 and 90 it seems). This way, we would get at least *some* speed limit alarm without having to change osmand and adding per-country hacks to it.

I don't think we need to get into the within/outside of cities for now. A whole new can of worms :-)

Sebastian

It's not only the maxspeed that is profile depending. Also the access rules: can you go on a trunk with a bicycle? Does access=destination implies bicycle=yes (it does in Belgium)?
......
But for now, keeping it general and not inlcuding the maxspeeds will be fine I think.

agreed, it complicates things a lot. Still, my original issue was to be able to show speed limit alerts when no explicit maxspeed tag has been set. This would IMHO still be feasible. Or, I'll simply have to set maxspeed= to all roads in this country :).

Sebastian

Sander Deryckere

unread,
Sep 12, 2012, 11:30:15 AM9/12/12
to osm...@googlegroups.com, nic...@palix.info


2012/9/12 Sebastian Spaeth <spa...@gmail.com>

agreed, it complicates things a lot. Still, my original issue was to be able to show speed limit alerts when no explicit maxspeed tag has been set. This would IMHO still be feasible. Or, I'll simply have to set maxspeed= to all roads in this country :).

Sebastian

Feasible, yes, but what do you prefer?

Show wrong information, and let people complain about how wrong it is? Or show no information when you don't know it.

In my country, we have more exceptions than rules, so any information we show will be wrong at many points. Because of that, I've been adding maxspeeds to all roads where it is possible to drive the maxspeed (so tertiary and everything above).

I'm not one of the big developers of OsmAnd, but I doubt they will want to include this.

Victor Shcherb

unread,
Sep 12, 2012, 4:18:58 PM9/12/12
to osm...@googlegroups.com
I think local information will come into game when routing will be most stable for Application itself. And I think this part will be done during country preprocessing! In that case people won't need to install new application and it will be quite simple to include all rules (missing tags) during OSM preprocessing rather considering local rules on devices.

Anyway we come to same solution either we imply all these tags to roads in OSM or we do OSM preprocessing. Actually it is not bad idea to propogate all these tags to roads itself. There are so many exceptions and for local OSM editors will be much easier to notice error if the tag will be directly on the road rather somewhere in Wiki.

Best Regards,
Victor

2012/9/12 Sander Deryckere <sand...@gmail.com>

hbogner

unread,
Sep 12, 2012, 5:33:34 PM9/12/12
to osm...@googlegroups.com
All roads should have maxspeed and minspeed(there are thoose too) marked directly on them.
Whats the coverage with those values you can see here:
http://www.itoworld.com/map/124#fullscreen
http://taginfo.openstreetmap.org/keys/maxspeed

Not only those values should be added, but some others like surface and lanes:
http://www.itoworld.com/map/215#fullscreen
http://www.itoworld.com/map/179#fullscreen
http://taginfo.openstreetmap.org/keys/surface
http://taginfo.openstreetmap.org/keys/lanes

It's up to every OSM editor to mark his area, and we are doing it as good and fast as we can.

Regards,
Hrvoje

DLichti

unread,
Sep 13, 2012, 2:49:38 AM9/13/12
to osm...@googlegroups.com
I would like to come back to the first point: allways display speed limit.
As mentioned, this would help to improve osm data and then, would be no need for guessing default speed limits because more and more streets would have explicit speed limit set.
And, one would not need to exceed the speed limit to see, what the speed limit is. The speed limit could be displayed alle the time, and when on is speeding, it could start blinking or something like that. This might be more visible than what it is no.

David


Am Mittwoch, 12. September 2012 12:18:41 UTC+2 schrieb Sebastian Spaeth:

mircozorzo

unread,
Sep 13, 2012, 3:25:18 AM9/13/12
to osm...@googlegroups.com
I subscribe, it's very important know the speed limit. Ok there is the signal but navigator can help a lot.

Mirco

David White

unread,
Sep 13, 2012, 12:54:23 PM9/13/12
to osm...@googlegroups.com

I'll be labelled as a spoiler but I think we're missing a point here. why are we interested in obeying speed limits ?
to avoid:
1. getting caught by a camera
2. getting a fine
3. loosing points of your licence
4. attracting unwanted attention from law enforcement officials .

In all 4 cases it's the road sign that will matter including the temporary ones put up for road works, special events etc. which won't be in osmand or any other system in the near future.

In other words we should be driving with our eyes on the road and not on a computer screen thinking as a dumb cruise missile following instructions to get from A to B.

Osmand is a navigation tool not a driving one. It will tell us where to go, not how, that is still a human prerogative, for now ;-)

and I'll stop ranting now :-)

David

--
Sent from Android phone, please excuse brevity
DarkyROM 2.3.6

DLichti

unread,
Sep 13, 2012, 6:36:14 PM9/13/12
to osm...@googlegroups.com
I would like to add a 5. point to your list:
5. to adapt our driving to the highway situation which we cannot fully oversee (if we could, we wouldn't need the signs to tell us).

It is due to technical reasons that that certain traffic rules (e.g. speed limit), allthough being valid continuously, are only indicated punctually.
I saw experimemts in France where the current speed limit was color coded into the lines on the road (white = 90, yellow =70, green = 50). It was a nice idea, but apparently, it did not work out.
With electronic navigating devices, we now have another (better) tool at hand to view traffic rules continuously. I would really like to have more signs displayed, but for now, speed limits seem to be the only interesting one significantly mapped.

Until we get road signs radioing their contents to bypassing cars or even something like ETCS 2+ and GSM-R, displaying speed limit from map data seems to me to be the best step that we can take for now to progress into that direction and therefore worth of further development.

David

Nicolas Palix

unread,
Sep 14, 2012, 3:23:19 AM9/14/12
to osm...@googlegroups.com
Hi,
It will also be a great way to review OSM data and fix / add speed limits...

Ab_fab

unread,
Sep 14, 2012, 3:37:04 AM9/14/12
to osm...@googlegroups.com
Hi,

FYI, the relation France (http://www.openstreetmap.org/browse/relation/11980) is the unique member of this relation, used to define "default" rules such as speed limits in the country :
http://www.openstreetmap.org/browse/relation/934933 

The tagging scheme is not popular, but it exists, and is described in the OSM wiki as a proposal :

As Nicolas mentionned, it is a nice way to review data in OSM. In my opinion, it would be even better to distinguish between "expected" limits (from country default values and highway type) and speed limits information provided on the way itself

Could look like this :

67 / 90* when 90 km/h is per default value (no maxspeed information)
67 / 90 when "maxspeed = 90" is present in highway description


2012/9/14 Nicolas Palix <nicola...@imag.fr>



--
ab_fab
"Il n'y a pas de pas perdus"

Nicolas Palix

unread,
Sep 14, 2012, 3:49:54 AM9/14/12
to osm...@googlegroups.com
>
> As Nicolas mentionned, it is a nice way to review data in OSM. In my
> opinion, it would be even better to distinguish between "expected" limits
> (from country default values and highway type) and speed limits information
> provided on the way itself
>
> Could look like this :
>
> 67 / 90* when 90 km/h is per default value (no maxspeed information)
> 67 / 90 when "maxspeed = 90" is present in highway description
>

Displaying this information could be an option of the OSM plugin
or the advanced settings ? In doing so, normal users will not be disturbed.

Victor Shcherb

unread,
Sep 14, 2012, 3:48:48 PM9/14/12
to osm...@googlegroups.com
Hi All,

You are discussing a "postponed" feature to display speed limit from map on the display. But implementation wise it is not possible today without a route! Most of you want to use that feature without the route, so technically it is completely different issue and should be part of OSM developer tools. It requires different technique to be used.

Best Regards
Victor

2012/9/14 Nicolas Palix <nicola...@imag.fr>

Stephan75

unread,
Sep 15, 2012, 4:41:59 AM9/15/12
to Osmand
If I am not totally wrong, the "app" NaviPOWM is able to display
speedlimits when just driving and following the GPS position.

Have to remark that NaviPOWM has no routing features yet ...

see http://wiki.openstreetmap.org/wiki/NaviPOWM

Sabra Sharaya

unread,
Sep 16, 2012, 12:35:49 AM9/16/12
to osm...@googlegroups.com
It does not seem like it is not possible. It seems the app would have to determine the nearest street and read the maxspeed tag from that street. The app must already be able to determine the nearest street because that is necessary to determine the start of a route.

Victor Shcherb

unread,
Sep 16, 2012, 7:09:17 AM9/16/12
to osm...@googlegroups.com
Yes no one says it is impossible but infrastructural change is quite big. Because we need to read that data continuosly which is a small challenge how to keep application responsiveness and read in the background thread speed limits all the time! 

I kind of found a solution :) I think it will be much simple if speed limits will be part of rendering or special Layer (like POI/Transport).

Best Regards,
Victor

2012/9/16 Sabra Sharaya <sabras...@gmail.com>

Sebastian Spaeth

unread,
Sep 16, 2012, 12:54:21 PM9/16/12
to osm...@googlegroups.com
Am Sonntag, 16. September 2012 13:09:18 UTC+2 schrieb Victor Shcherb:
Yes no one says it is impossible but infrastructural change is quite big. Because we need to read that data continuosly which is a small challenge how to keep application responsiveness and read in the background thread speed limits all the time! 

I kind of found a solution :) I think it will be much simple if speed limits will be part of rendering or special Layer (like POI/Transport).

A speed limit layer sounds good indeed :) . Open a bidforfix for it and see if people pay for it...

Sebastian

Sabra Sharaya

unread,
Sep 16, 2012, 8:01:41 PM9/16/12
to osm...@googlegroups.com
Have any of the items on that list met their contribution goal?
Reply all
Reply to author
Forward
0 new messages