asdil12 / pymultimonaprs

RF 2 APRS-IS Gateway
https://asdil12.github.io/pymultimonaprs
GNU General Public License v3.0
86 stars 27 forks source link

Unable to apply position ambiguity. #8

Closed OctopusKat closed 10 years ago

OctopusKat commented 10 years ago

Position ambiguity in APRS is done by replacing latitude digits with spaces. However, the spaces are being stripped away from the config.

From the protocol reference http://www.aprs.org/doc/APRS101.PDF Digits in the latitude may be progressively replaced by a _ (space) character as the amount of imprecision increases.

The level of ambiguity specified in the latitude will automatically apply to the longitude as well — it is not necessary to include any space characters in the longitude. For example, the coordinates: 4903.__N/07201.75W-

This problem can solved in two ways: allow the config to also accept spaces for latitude, or make an extra config where you put in how many digits should be scrubbed.

asdil12 commented 10 years ago

I think, that the second option would be the better way as the coordinates are specified in the config as floats, which don't care about spaces.

But shouldn't you know your own position?

OctopusKat commented 10 years ago

Position ambiguity is used as privacy feature. You get a rectangle box where the station might be in, so no pinpoint location can given for your station. For example you might not want to give away where your car with ham radio equipment is parked so you let position ambiguity make a box of your location. For my home setup it will prevent me from lying: my station is somewhere inside this box.

asdil12 commented 10 years ago

The reference says »it is not necessary to include any space characters in the longitude«, but wouldn't that reveal the correct longitude in the raw-data view?

May I need to mask it as well?

asdil12 commented 10 years ago

Link to related aprs.fi announcement: http://blog.aprs.fi/2011/01/position-ambiguity-support.html

OctopusKat commented 10 years ago

I am not sure actually! The WINLINK system puts objects on the map like "5206.NW00422.Ea", so it both scrubs the latitude and the longitude. So I would say "5206.__NW00422.E" would also be correct.

asdil12 commented 10 years ago

I think, I'll read »it is not necessary« as »you may do« - just to be sure to not accidently leak the longitude.

OctopusKat commented 10 years ago

Yes, and we will notice soon enough if it does not get rendered properly.

asdil12 commented 10 years ago

@OctopusKat Could you try this patch: https://github.com/asdil12/pymultimonaprs/commit/0ee745969a8acb9d94ffc968ea93578d57a22a89.patch

I currently don't have the setup to test