Why does Bond need my exact location?

I just bought a Bond Bridge to control my ceiling fan. I have an Iphone so I pulled the Bond app down from the Apple store. When I started installation the app suggested that I instead use a newer application.

So I went back to the store and pulled down the newer version. The first thing this version wanted was for me to enable location services on my phone in order add the bridge.

For the life of me I cant understand why Bond (or anyone else) would need to know my exact location in order to control my fan. As soon as I login they can get my approximate location from my IP address. That seems more than sufficient to me.

Anyway I went back to the old app and found that it did not ask for location, and I used it to set up the bridge and fan.

I have never enabled location services on my phone. I am willing to share a little bit of private information in exchange for some convenience, but sharing my exact location is over the line.

Hey Dave,

to add a Bond Bridge, the app must know it is connected to the Bond Config Wi-Fi network. Unfortunately, as from iOS 13, Apple requires the location permission in order to see which network the phone is connected to.
The reason behind it is that theoretically one could use your SSID to figure out your coarse location.
Since we need to know when you connect and disconnect from the Bond Config network, and we need the Bond ID on the SSID, there’s no other way to go around it.

The reason the old app still works without the permission is because it is build against an old version of iOS. That means it doesn’t support new features and it will soon not be allowed on the App Store.

As a compromise, you only need to turn on the location on the Add flow, after that you can turn it back off again.

Here’s more info about Apple’s requirement:
https://forums.developer.apple.com/thread/123342

And to add some context, @DaveM, after some internal discussion here, we agree that we have these priorities:

  1. Easiest Possible Setup Experience: this requires location permissions and automatically finds the Bond you are connected to. As @marcio explains, this requires “Location” OS permissions.

  2. Privacy Consciousness: We also strive to not block more privacy-conscious users from setting up the product. It should be possible to manually connect to the Bond Config WiFi, tap the + button in the app, and move through the setup flow – all without enabling Location permissions. Paradoxically, it seems that updates we made to support new privacy rules in iOS 13 actually broke this privacy-concious flow. We will look into a workaround in our next app release.

@DaveM, @marcio just pointed out to me that you can actually set up a Bond on your WiFi using the WebGUI built into the Bond. Then you never need to add location permissions! This will work for any Bond with serial number starting in Z, or for any other Bond if you have updated firmware to v2+.

Thank you guys for the replies. It irritates me when Apple and Google do things like you describe. Many times I wonder if it is on purpose in order to “encourage” users to enable location. I know this information is very valuable to them, so I am not willing to just give it to them.

In any case, I installed the new app and logged in, but it didn’t see my configuration or the bridge. So I reset the bridge to make it flash green, enabled location on my phone, and connected to the bridge wifi signal. Once I added the bridge to the new app the rest of my configuration was there. I also had 2 firmware upgrades and am now on 2.10.8. I didn’t read much about the best version of firmware, but assume that later is better. Having gone this far I also enabled the Bond Home skill in Alexa and disabled the old skill.

I do see one thing that I had noticed with the old skill is still there. My fan has 3 speeds and I can set any speed I choose in the app, but cant seem to get Alexa to use speed 2. If I ask Alexa to “set fan to speed 2” it goes to 1. It may be that I just don’t know how to tell Alexa the proper speed. I can use the terms “high” and “low” for speed, but not “medium”. I just assume since the speeds are called 1, 2, and 3 in the app that is what Alexa should recognize.

Thanks again for the help.

Right. Firmware doesn’t age like wine :wink:

It sounds like the old skill is still running, because adding support for “medium” was a specific fix in the new skill! Are you sure that you deleted all the devices on the Alexa side which were exposed through the old skill? You might try unlinking the skill(s), deleting all the Bond devices on the Alexa side, and then re-enabling just the new Bond Home skill. :crossed_fingers:

1 Like

Merck,

I think you are correct in that the old skill must still have been loaded. When this happened I had followed the procedure I found here to enable the new skill, and then run device discovery. When that finished I had a device with the word delete in its name. I did that and then proceeded to disable the old skill.

From there I just tried it with the same result I had had previously with the old skill. I just assumed the problem was still there. Now having read your response I tried the fan again and am happy that it does work properly with the term “medium.” The only thing that changed was that 2 days time had passed. I had not restarted Alexa nor the bridge after enabling the new skill and disabling the old so I can only guess is that it took those changes some time to propagate. Thanks again for the help.

1 Like