Hi there,

recently there has been a post here about Colota and thought you might be interested in a short summary about Colota.

I am tracking my position since several years now mainly with Owntracks (and now Colota) and a simple postgres DB/table.

I am a fan of the indieweb and eat what you cook and with already some million location points collected I recognized some pattern in existing GPS trackers I wasn’t happy about:

  1. Battery consumption
  2. Duplicate points while staying in the same location for a long time

So I decided to build my own GPS tracker and called it Custom Location Tracker.

Improved battery consumption should come from disabling GPS entirely in so called “geofences” which are basically circles you draw on a map in the app. With GPS disabled in these you also won’t get duplicate points while staying at e.g. home or work.

The app is still quite new (actively developed since early 2026) but has already quite a lot of features which basically all came from user feedback. E.g.:

  • Automatic Tracking profiles which apply different tracking settings while e.g. being connected to Android Auto, moving slower than 6km/h or while the phone is currently charging.
  • The app works fully offline (map will not be visible then) but you can predownload map tiles from a tile server I selfhost or use your own tile server.
  • You can define how locations are synced to your backend. E.g. only for a specific Wi-Fi SSID every 15min, once a day or with every location update.

Overall the app’s focus should move to be a mobile location history app. So basically Google Timeline in a mobile app which also supports selfhosted backends (as backup).

The app is fully open-source AGPL-3.0, has no ads, analytics or telemetry and only sends data to your own server (if you want to).

You can download two versions.

  1. Google Play store which uses Fused Location Provider and therefore uses Google APIs. Also works with the sandboxed version by GrapheneOS and microG.
  2. FOSS version which uses Android’s native GPS provider with a network location fallback. Available on IzzyOnDroid and hopefully someday on F-droid.

Both can be also downloaded directly from the repo.

  • Stopwatch1986@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    19 days ago

    I’ve been using this for a few weeks and it’s great. In addition to offline-first, it would be nice to be able to ask Colota: List my trips between date1 and date2 when I was near (ie within x meters from) point y.

    I am planning to use this for a long time too, so an export/import data for when I change my phone would be nice. I see Export but not Import.

    Also, being able to delete trips between date1 and date2 would be useful. Currently, you can delete 1-by-1 or recent trips only.

    • mxdcodes@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      19 days ago

      Glad it’s working well for you!

      • “filtering trips near a point”: Not yet available, but planned as part of location history search/filter features. It will be also using a configurable Nominatim instance for reverse geocoding points to addresses.
      • Import: Doesn’t exist yet. But is also on the roadmap (including export/import for geofences).
      • Deletion of points/trips: Currently you can delete older than X days or delete all. No date range picker or bulk delete from the history timeline yet but that will be neccessary. There will be options to delete trips (which may be just GPS jitter) and (bulk) delete points.
  • cvieira@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    17 days ago

    I’ve being using offline location tracking using a different app for some time now. This looked like a pretty elegant alternative, so I decided to give it a shot!

    The app looks great, and very well thought through. The automation features really appeal to me (disabling tracking at home, automatically changing profiles, etc.)

    One thing I wish it had was the ability to associate vehicles with trips (potentially, automatically, based on Bluetooth connections or other triggers). I like to track the category for each of my trips (car, bike, train, walk), as well as the specific vehicle (when applicable).

    I haven’t tested too much yet, but it looks like you already have pretty robust trip tracking. It would be awesome if I could create a list of vehicles with types, and select a vehicle when starting a trip, or have it automatically set when connecting to a Bluetooth device.

    In any case, this app looks great, and I appreciate the effort you’re putting into an open source project like this.

    • mxdcodes@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      16 days ago

      Thanks for the kind words! Vehicle/trip categories (car, bike, train, walk) + per-vehicle tracking is a great idea and fits well with the profile concept. Personally, I also want to skip other (activity) tracking apps which is the reason I also would love to have these features. Added the feature requests to the backlog. Thanks for taking your time trying out the app and giving feedback!

    • mxdcodes@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      19 days ago

      GPS is only turned off by being connected to a WiFi or being motionless (or both) while being in a geozone. When wifi disconnects or/and motion is recognized the GPS starts again. There is also an option to just not record locations in a geofence but then the GPS stays on and will still drain some battery.

      • Eheran@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        19 days ago

        Ah, got it. So you need WiFi if you want to reliably turn off GPS, that is a good solution.

      • Stopwatch1986@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        19 days ago

        In addition to wifi, Bluetooth beacons would be good too.

        Seeing the same SSIDs (eg in a cinema) might also mean you are not moving, but then how can you tell you are not sitting near another train passenger with their hotspot on?

        • mxdcodes@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          19 days ago

          Yes, another user also already requested this (“Seeing the same SSIDs (eg in a cinema)”). Detecting reliable if you left an area without GPS is never 100% fool proof (e.g. airplane mode turned on or maybe the motion sensor is not even available) so I guess it makes sense to combine different sensors. Seeing same SSID and bluetooth is definitely on the test it out list.

  • q7mJI7tk1@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    16 days ago

    Hi mxdcodes. I have been using your app for the past month in a sort of testing phase with Darawich. I have used GPS Logger and Reitti since October last year, which is still running, but Colota offers a lot more exciting possibilities of data collection and so I’ll probably switch across pretty soon. I got hit by the bug a while back of it stopping once entering a geofence, but I saw that got fixed promptly so thanks for all of this.

    I love all that you and others who code for the (wider) selfhosted community offer, so let me say that for every person criticizing your app and all the effort you have put in, there are hopefully 1000x more of us who are truly grateful for what you and others do. I find it odd that people who are concerned about having their location history hacked by someone are actually wanting to record their location history in the first place. Seems the obvious answer is to… not track your location history with ANY app.

    Keep up the good work!

    • mxdcodes@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      15 days ago

      Thank you, really appreciate it! Glad to hear Colota is working well with Dawarich for you so far. Feedback and criticism are always welcome. Most of it has led to real improvements in the app. I think a casual forum thread is probably just not the best setting for deep technical discussions, where context shifts quickly, everyone has a different background and nuance gets lost.