I am an avid birdwatcher and have been using Graphene OS for a little over three weeks and I haven't been able to get Merlin Bird ID to work properly. I am wondering if anyone has suggestion for troubleshooting issues with location specifically. I have toggled google play services permission as well as app specific permissions and have not had any luck as of yet.
TLDR Merlin Bird ID location troubleshooting suggestions

    moonshine_yarrow The location requests are sent using the OS location service by default. To get a location lock, you'll realistically need to be outside. You'll might be able to lock the location faster if you have mobile data on to use GNSS, but it'll also work without mobile data on.

    Having said that, I've had some apps though which simply fail to get the location this way. In which case, you could route your Location requests through Google Play Services, if you don't mind giving this information to Google. You can do that by opening Settings > Apps > Sandboxed Google Play and switching off the toggle to reroute location requests to the OS. You'll then be instructed to give Google Play Services unrestricted battery usage.

    Merlin has been brought up in other dicussions previously, and to my knowledge a solution has yet to be found. I know I've tried every permutation of location settings, sandbox play service configurations, even multiple user profiles. My observations are always the same, the application fails to find your location and after that you'll see the location indicator show up in the notification bar. I'm convinced it is doing something non-standard for the android location API. I have reached out to the Merlin / Ebird support team as well but never received a response. With someone in the family working for a major birding instuition, having two of us switch to grapheneos and cease our reporting has been a major dissapoint for them.

      14 days later
      2 months later

      moonshine_yarrow

      There is an alternative that works, and it is also associated with Cornell: BirdNET Sound ID.

      I have used this on my Pixel 6 Pro w/Play services installed, no additional location services / precision configured; I don't know if Play Services are required.

      a year later

      Been a while. Has there been any progress getting location working for Merlin?

      I tried again a week ago and had the same issue.
      I've been using another play store app from Cornell called birdNET. Not as good but it works so long as you have net access to send the call to be processed.

      2 months later
      19 days later

      I found version 3.1 has worked for me, but later versions did not. I uninstalled the play store version and manually installed the apk I found from apkmirror at that specific version. I do have play location services enabled, so not sure if that is what is making this work or not. I am very confused as to why this started working and later stopped working, or why the location detection in Merlin is so different from eBird (which works great for me — though that had a hiccup streak, too).

      It doesn't work as smooth but have you tried WhoBIRD from f-droid?

      It works fine on my p7a running GOS.

      @jacobb no, haven't yet, but thanks for the suggestion.

      5 days later

      Just a heads up… apparently Merlin works without location now.

      What's new
      Location, Location, Location!

      • No Location? No Worries! Even without location data, you can set your spot on the map and let Merlin do its thing, providing top-notch answers every time.
      • Smoother Messaging
        Sound ID Enhancements: We’ve polished our messaging for areas where Sound ID isn’t supported, giving you clearer info and a better user experience.

      Upgrade to 3.2 now and dive into a more flexible, privacy-friendly, and user-centric Merlin!

      I'm using Lineage ATM so I can't confirm if it does work on GOS

      5 days later

      I can't seem to get that version (3.2.1) working. Oof, man this is so frustrating.

      14 days later

      Damn. I'm trying today and cannot get Merlin to work either. I'd be down for a writing campaign to them. I wonder if a lot of us wote maybe they'd respond or do aomething.
      This is one of my favorite apps and I'm really sad I can't use it.

      5 days later

      So I got into the beta on google play and the latest version started working for me (3.3-beta02)

      7 days later

      Just updated to 3.3 (not beta) and this is also working. Maybe this is finally behind us. I am grabbing a backup of the apk and setting google play not to auto-update this app going forward, so I can always keep a backup of working versions and downgrade if needed. Hopefully this functionality will be permanent and that won't be needed.

        birds3333 Great news ! Where did you find the 3.3 version ? I can't find it on Aurora.

        Oh! I think I got it early because I'm in the beta group for the app. I see the public release on Play store is 3.2.1 still. Hopefully soon for public/aurora.

        • jmo likes this.

        The "Likely Birds" feature (Merlin's most useful feature, IMHO) in the Explore tab seems to not be working because it's using android's geocoding api (import android.location.Geocoder;) which GrapheneOS hasn't implemented yet.
        A quick websearch revealed numerous threads relating to this topic, all of them pointing to https://github.com/GrapheneOS/os-issue-tracker/issues/23
        It seems os-level geocoding has been a known missing feature for a while; the above referenced github issue saw little activity the past 5 years, but was recently tagged as "high priority".
        Until this feature is added to GrapheneOS I don't know if there is much to be done besides donating. In theory it could be possible to reverse enginner Merlin and replace the android.location.Geocoder calls with an alternate API, but I haven't looked into Merlin's Terms of Service to check the legality of that.