-
-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[most AsteroidOS watches] Not showing up in Bluetooth menu on iDevices #241
Comments
I have now tried this with an old Macbook Pro running Darwin version 11.4.2 (yes, it's old -- August 2012) and was able to see this problem when attempting to pair it with a I used
I tried to set
So it appears that I can't make it discoverable, even though I tried both as I was able to verify that even in this state, my nearby Linux laptop is able to find and pair with this |
I have now also tried the experiment with an iPhone SE running iOS version 16.3.1 and Using nRF Connect, however, both |
Aha! The way to make this work is to change Thanks to @dodoradio for the hint in Matrix chat. |
Is there a reason it's currently set to |
yes, it's for power saving reasons. We don't use the bluetooth classic mode at all in a standard asteroid install, and using LE-only saves a lot of power. It's architected completely differently, as far as I understand the bluetooth controller can do quite a lot without involvement from the cpu.
I think apple has misimplemented something in their bluetooth stack. LE-only devices shouldn't have to use the 'classic' pairing mechanism. This sounds like an iBug, not an asteroid bug.... |
It looks like, indeed, it's an iBug. See https://stackoverflow.com/questions/27840199/display-and-pairing-ble-devices-on-bluetooth-device-list-in-settings for details, but essentially, BLE-only devices are simply not pairable without a separate app. For that reason, I think I need to rework the recently updated instructions to say that, in fact, something like nRF Connect is required to pair. Thanks to @GeckoEidechse for inspiring this investigation! I realize now that with all of my pairing and unpairing with the iPhone, a device that is paired (either because it is in dual mode or because it was paired with something like nRF Connect) can be unpaired ("Forget this device" on the iOS Bluetooth menu) and it will show up under the "other devices" because of caching. This was what led me to falsely believe that a BLE-only device could be paired with nothing but the iOS Bluetooth settings. |
iOS and other iDevices don't show BLE-only devices in the default Bluetooth settings unless they have been paired before. See AsteroidOS/asteroid#241 for more info
Made PR to update wiki again in regards to iOS: AsteroidOS/asteroidos.org#259 |
The fact that iOS doesn't show BLE devices in Bluetooth settings is definitely intentional. I think the reason is to not overwhelm the user with too many devices. For example opening nRF Connect on a crowded train instantly gives me 30+ devices. Instead by requiring the user to put their device into a "pairing mode" that pulls it from BLE to whatever the name for the "high power" equivalent is, they can effectively filter out most devices that the user isn't interested in. At least that's my theory ^^ Similarly device specific apps can filter out all BLE devices with hardware addresses from other vendors, resulting again in a less crowded list. With that said, do we wanna work around this in AsteroidOS? |
An iOS companion app is certainly the better approach! |
iOS and other iDevices don't show BLE-only devices in the default Bluetooth settings unless they have been paired before. See AsteroidOS/asteroid#241 for more info
iOS and other iDevices don't show BLE-only devices in the default Bluetooth settings unless they have been paired before. See AsteroidOS/asteroid#241 for more info
Describe the bug
Based on a discussion in the Matrix channel as well as AsteroidOS/asteroidos.org#241 we found out that while generally the watches supporting AsteroidOS show up in the Bluetooth menu on iOS/MacOS while running WearOS, they do not show up while running AsteroidOS.
They can however still be discovered and paired on e.g. an iPhone using a 3rd party app like nRF Connect. As such we might wanna find out why they do not show up in Bluetooth settings by default.
To reproduce
Steps to reproduce the behavior:
Expected behavior
The watch should show up as a listed Bluetooth device (at least if it would also do that when running WearOS)
Device (sample):
lenok
trying to pair with an iPhone 12 Mini running iOS 16.3.1
Additional context
None
The text was updated successfully, but these errors were encountered: