Local discovery not working on android 11

Scanning the QR code is just an alternative method to inputting the device ID manually. It doesn’t do anything more than that.

Is global discovery enabled on both devices?

1 Like

I had to delete the previous reply because of the 3 replies per topic limit.

Global discovery is disabled. This issue/topic is about local discovery not working, so…

Here is a simple workaround that does not require any special configuring, or root.

Simply use the camera on each phone to scan the others QR code. That’s what I did and it worked.

The option to do that is in the Android Syncthing software.

You’re thinking of the wrong step.

Discovery is the process of fetching the IP address of a device you’ve already added.

Local discovery is limited to finding out your device’s LAN IP, so that another device on the same LAN can connect to it. This step doesn’t work, hence the topic.

Well global discovery is recommended because local discovery is known to not work on newer android versions due to restrictions from the platform. take it or leave it - the alternative is to configure IPs manually.

I’m aware of the current understanding of the issue. But I’ve described behaviour here that does not match what you say. Any ideas what’s going on?

If local discovery doesn’t work at all, the phone can’t find the IP address of the PC and vice versa. Global discovery avoids this by publishing the LAN IP of your PC which is enough to bootstrap a local connection :slight_smile:

Hmm,

I just disconnected and re-established the connection. I’m pretty sure both devices found each other using remote discovery. If Android local discovery is what’s broken, mine found each other using remote discovery.

I have 3 Android devices on the same LAN. Once the QR code was scanned, they managed to simply find each other. I don’t know whether it used local or remote discovery but I know that my Android devices were able to sync to each other immediately after scanning the QR code. I’m pretty sure they’re using my router ip and the 22000 port # Here is my config in pics.

You can easily test for that by leaving just Local Discovery on, and turning off every other method.

Nobody has any idea about this?

So, on my Android, I need to uncheck the box for “Global Discovery” and then try making a connection to an unknown device, correct?

I’ll need to delete my tablet from my phone and try to re-add it, and hopefully, the phone will fail to discover the tablet. This should do it I think.

If this all works, then for now, EVERYONE must use global discovery if they own Android devices.

At least until a new solution is found.

Read this again:

Hi @opusforlife2

I may have stated it wrong, but I understand. Mine/everyone’s works because Global Discovery does work. I was referring to reproducing the problem others are having, that I’m not. If you turn off Global on purpose it should break, correct?

1 Like

As already explained above, global discovery also publishes LAN IPs. @Wank is spot on with his statement that global discovery allows LAN connections to be established in cases where local discovery doesn’t work.

1 Like

I think we aren’t addressing a part of @opusforlife2 observations: Local discovery works for them with an android 12 device, which is unexpected. That’s just how it is with android: Lots of varying behaviour between vendors and even devices, that I have zero interest in getting into. Especially if there’s a simple working solution: Global discovery.
Btw it would likely have helped if you pointed that out (or even just rephrased your original post), instead of just telling people to read again - much higher chance of success.

4 Likes

Should’t we just add a note “hey user, please do not turn off global discovery because you would then need to set up static ip addresses and definitions, even in LAN.”? We could turn off local discovery on Android 11+ and just hide the checkbox.

Even easier:

  • global disco - Default on
  • local disco - Default off on android 11+
  • both check boxes hidden, experts can still go and use the web gui

Hiding maybe, disabling local, I don’t think so. As in OPs case, it might still work for reasons. What’s the benefit of disabling it? Also we are talking about a non-issue, aren’t we? If somebody wants to do a meaningful change in the app, add confirmation dialogs for revert/override.

1 Like

Yeah, maybe not disable but hide it.