Skip to content

Attach WiFi/Bluetooth to Places to resolve location and save battery #606

Description

@Kitoune

(As per comment on a different ticket, here's a separate one for better tracking)
Places is a recent feature of Dawarich allowing to create predefined locations like Home, Work, School, At John and Jane's, etc... with a known set of coordinates. They are personal and unshareable (for now).
If those places have WiFi (public or private), being connected to it or even having it appear in available WiFi list is proof enough your device is at that location. Same thing can be used for Bluetooth, for example if my desktop PC Bluetooth antenna appears in the list of available Bluetooth connections, I'm most likely home. It is also a good way to signal we can stop tracking the device to save battery. As soon as not a single known WiFi or Bluetooth source appears, tracking can resume.

I'm aware this is already a feature in Fused Location Android service, but it's proprietary and closed system, no way to get a good look at how it works.
Having this feature in the app is quite best for multiple reasons, allowing private and granular control on location resolution and a nice way to stop tracking to save battery. This also might help with spots with bad GPS/cellular connectivity, and would be way quicker if these are degraded.

As another user pointed out, it would be great to be able to select if we use the visible name of the WiFi/Bluetooth source or its MAC address, this way the user can choose how to better group the location resolution. For example, if all the public hotspots of a company are named the same (McDonalds Free WiFi, Deutsche Bahn station free wifi or similar), the MAC address can be used to resolve which one is the correct location (so let's say if Freiburg and Karlsruhe stations both have the same WiFi name, using MACs would be better than names). Grouping multiple MACs at one location is also a good suggestion (specifically if for example Freiburg station has multiple relays distant from each other, grouping might point to one location, or even if possible, the relay position with an error margin).

Let me know if I can help with testing or designing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions