S2 not uploading to Garmin connect

Scales have worked fine up until today. 

I've reset and checked wifi details, tested the connection of the scales to the wifi from the Garmin connect app; that seemed ok but still fails to upload to Garmin connect.

I then hard reset, connected to the wifi again and once again, after a weight measurement it fails to upload. I then hard reset again and tried on a different wifi network, hot spotting with my phone and the same thing occurs.

Any ideas?

  • 1. Yes

    2. Yes

    3. Austria

    Bought the Scale first week of Jan. Worked fine for a week, then stopped Syncing. Tried everything i could think of to no avail. 

  • 1. yes

    2. yes

    3. south africa

    On my side, I've now tried 2 routers, and a phone hotspot.

    For those that understand networks, I've dumped some data.  maybe someone can confirm:

    • scale connects to Wifi (in all 3 cases)
    • gets DHCP
    • gets DNS
    • gets NTP from time.google.com
    • fails NTP from time.garmin.com (no such name)
    • also does NTP on port 4123 to clock.garmin.com
    • date and time on the scale is right, though
    • Tries HTTP to gold.garmin.com/obn/obnservlet, sends syn/ack, and user agent index s2/3.3
    • server sends http 200 (rtt 10 ms)
    • this is cloudflare, sends a HSTS, CF NEL and CF RAY header
    • scale ignores ack responses, so the server resends 5 times
    • scale acks (now it's 10 seconds later)
    • cloudflare tries again, different cf session id, different cf ray
    • scale ignores ack responses, so the server resends 5 times
    • scale acks (now it's 20 seconds later)
    • ...
    • scale gives up after 90 seconds

    behaviour is the same on 3 different ssids, and two different ISPs.

    scale also only responds to 4th or 5th ARP who-has.

  • So at the moment it works on Wifi without encryption.

    It does not work with either WPA or WPA2 (tkip or ccmd).  When it's on WPA or WPA2 the scale seems extremely slow, almost never ACKs a packet, resulting in multiple retransmissions.  Eventually it gets to negotiate TLS with services.garmin.com and/or connectapi.garmin.com

    At that point, they negotiate TLS v1.2, cipher TLS_RSA_WITH_AES_128_GCM_SHA256 and when the server sends Change Cipher Spec, that's it, nothing else.

    Getting this far proves the scale connects, but something is incredibly slow, so it times out.

    So now must I run an unsecured wifi for this?  Can someone try else try a temporary unsecured Wifi?

  • I can now sync over encrypted wifi if the router runs a custom TCP stack to compensate for the scale's packet loss.

    Can someone at Garmin say why the scale has 90% packet loss, but only when encrypted, and only for TCP data packets (not UDP, not TCP SYN) ?