openmobilityfoundation / mobility-data-specification

A data standard to enable right-of-way regulation and two-way communication between mobility companies and local governments.
https://www.openmobilityfoundation.org/about-mds/
Other
676 stars 232 forks source link

Qualitative description of device position: surface location type #767

Closed S-eb closed 1 year ago

S-eb commented 2 years ago

Is your feature request related to a problem? Please describe.

GPS positioning is great but don't carry any qualitative assessment of the position of a device. For instance, receiving the location (34.0205834, -118.4876028) allows placing a device in downtown SaMO. However, we don't know if a device is located in a street, on a sidewalk, in a parking bay etc....

Describe the solution you'd like

We propose to add an optional location_type field to the /telemetries to give additional qualitative information regarding the precise location of a device.

The location_type field would be of Enum type with a list of predefined possible location types: Bike lane Crosswalk Garage Invalid Side Street Possibly adding parking bay

Is this a breaking change

Impacted Spec

For which spec is this feature being requested?

Describe alternatives you've considered

This seems to be the implementation with the least impact

Additional context

schnuerle commented 2 years ago

Are you thinking this optional field will be sent by the providers if they know the value? How many providers can know this now? Do we anticipate more in the future?

It would be nice to have some providers chime and say this is possible and that they would implement it.

S-eb commented 2 years ago

@dirkdk would you like to comment here?

dirkdk commented 2 years ago

We at Spin know for certain vehicles equipped with more advanced IoT devices what type of surface the vehicle is on yes. Examples are on_sidewalk, or on_bikelane. We have implemented a similar feed for non-city purposes and could indeed use this field to enrich location data via MDS Agency

schnuerle commented 1 year ago

I believe this is possible now, especially with extra tech provided by companies like Drover which can detect in real time and at the edge if a rider is on a streets, sidewalk, bike lane, crosswalk, parking garage, etc.

A location_type enum could be added to both Agency and Provider, keeping up with #759 symmetry.

pierre-bouffort commented 1 year ago

Bringing this back up, is this an optional field that stands a chance of making it within MDS 2.0 ? It is a minor addition, and an optional field so I don't expect it would cause some challenge.

schnuerle commented 1 year ago

Yes we could add this, but need more details from you or Drover or others who have this ability. We need an enumerated list of the kinds of surface types possible, and ideas on where it could be added to the speck (eg every telemetry point?).

schnuerle commented 1 year ago

If we would like this in MDS 2.0, we need some feedback and suggestions to make it happen. It affects some of the #506 work based on how it should be added to telemetry points.

pierre-bouffort commented 1 year ago

As of today, we know from our partnership with Drover that the surface type can take the following values:

I expect this to cover the needs for the whole of the micromobility needs for now. @marie-x maybe that can be used as a base to define the values this field can take, and could easily be enriched moving forward. Let me know your thoughts.

droverai commented 1 year ago

Drover AI’s product, PathPilot, has had this capability since 2020. Specifically, it has the capability to identify the infrastructure being ridden on while the vehicle is being ridden above a predetermined speed (ex 4 mph).

We propose to add an optional field “location_type” to every telemetry point.

"location_type": { "$id": "#/definitions/location_type", "type": "string", "description": "Type of infrastructure", "enum": [ "street", "side", "crosswalk", "garage", "bike_lane" ] }

Currently, we support the above values. In the future, we could add more to the enum.

marie-x commented 1 year ago

I support this - the PR should be downstream of the Agency/Provider unification work. Would you like me to do that?

schnuerle commented 1 year ago

@marie-x once you get the A/P work draft done and we merge to dev, then someone could do that PR.

schnuerle commented 1 year ago

Please review the new location_type field in the Telemetry data type object ASAP:

https://github.com/openmobilityfoundation/mobility-data-specification/blob/feature-scooter-sensors/data-types.md#telemetry

Field Type Required/Optional Field Description
location_type Enum Required if Known If detectable and known, what type of location the device is on or in. One of street, sidewalk, crosswalk, garage, bike_lane.
schnuerle commented 1 year ago

Complete with #829.