-
-
Notifications
You must be signed in to change notification settings - Fork 204
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
Unnamed pairable keyboards #1954
Comments
All the unnamed devices I have around me are hidden by my android phone and windows. To give an example for I also don't have one of these devices. I'm willing to get one but paying over €100 for a goldtouch keyboard is too much for me. |
😄 I hope we can gather some more data from affected users. The question remains how those devices (keyboards) work with other systems that hide unnamed devices. I see basically two possible answers:
|
In #1824 it actually looks like the name was missing due to some system issue. It might all just be a symptom of broken drivers or something. |
I found an open box |
This is how this devices behaves. It is unnamed for a good while (minute+) and at some point BlueZ discovers the name. This also matches on my android phone. Interestingly Windows does show "keyboard" instead of nothing at all. What is clear (to me), we should rethink how we handle discovery. 60 seconds is definitely too short for the name to show up. |
BlueZ needs to be scanning to discover the name? Android only shows the device after discovering the name? Windows shows "keyboard" immediately? Does it change the name later?
I guess there's no real reason for blueman's discovery timeout. We just need to make sure to stop the discovery at some point if the user does not do it explicitly. It'd probably be a good idea to just bind discovery to blueman-manager's lifetime. In comparison: In bluetoothctl you start scanning and either stop it explicitly or exit bluetoothctl to stop it implicitly, so that's the same. On Android, discovery even auto-starts when you enter the Bluetooth devices view and auto-stops when you close it. |
Yes. I can delete the cached data and reproduce it quite reliably. I can post any info you like.
Yes. When I have it show unnamed devices I see the change happen. Here I can also reproduce by removing the cache of the bluetooth app.
I don't remember. Now that it has discovered and paired it once it immediately shows up with name. I don't know where windows caches this.
I have been thinking about this but haven't come up with a satisfactory option yet. But for now, I do like to increase the timeout and perhaps make it configurable. edit:
|
Dropping the timeout is absolutely reasonable, I think. It's just not dead easy for us due to blueman's design where blueman-manager is just a client to the long-lived blueman-applet which is the client to BlueZ. BlueZ stops discovery when its client disconnects but blueman-applet is meant to stay alive. The best solution is probably to have blueman-applet handle client disconnects the same way and stop discovery when all clients (should be blueman-manager and blueman-sendto processes) disconnected. |
Turns out I'm completely wrong. blueman-manager does use BlueZ' adapter API directly, so there's really no point for the timeout as when blueman-manager gets closed, BlueZ will automatically stop discovery. A quick experiment that drops the timeout as well as the related progress indicator (the progressbar is always pulsing now) and keeps the cancel button to stop discovery: cschramm@ee8e427 |
I was thinking about bringing back the add new device functionality. It could be a seperate application or integrated in blueman-manager. It would be made responsible for pairing, pin and trustimg new devices. blueman-manager main window would still be able to block, trust, remove devices and connect to services. Something like the DeviceSelectorWidget but expanded. However I first want to finish the listbox replacement for the lists. |
Hi, My keyboard is a Microsoft QSZ-00005. It is not seen in the Blueman manager, nor with the blueman: 2.3.4+mint1+vanessa I can also said I tried on another PC, which is on Mint 20.3 Cinnamon (so with Blueberry package), and the connection was made straightaway, the keyboard was working properly. Instructions in the "troubleshooting" page are not 100% clear for me, I am a newbie, starting in Linux, and english is not my own language... What can I provide you for debbuging information ? |
@gt4w4al: Not the same issue at all. This one is about keyboards (or devices in general, but the only confirmed cases are keyboards) that are affected by our option to hide unnamed devices but are expected to show in that state for pairing. They do show if the option is disabled and they always show in bluetoothctl which does not ever actively hide any device. Please open a new issue. We can try to provide guidance there. In general, when you think the device is discoverable, check if you see it with a different device, e.g. your phone. If that's the case, most probably you're facing an issue with your firmware, driver or whatever. Check kernel and bluetooth.service logs in that case. |
Just confirmed, on windows it initially shows up as |
Well, it knows that it's a keyboard from the device class but I don't see how it knows that it should not filter the unnamed device. 🤔 Possibly Windows just never filters out any keyboard class devices? Doing the same would fix this in general for sure. |
Er, what?! Looking at BlueZ ( |
That may have been a fluke as I can not reproduce it now, so silly me 🤣 How about we do something like #1994 and never filter keyboards, pointers and combos? |
#2034 is another case with a Targus KB55 AKB55TT |
Oh, right let me finish the PR and hopefully not have this happen any more. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
The handling should be solved with #1994 merged. |
Hiding devices was implemented under the assumption that unnamed devices are generally not pairable and that they get hidden on other systems like Android and Windows as well, see #1258.
We seem to encounter some cases where unnamed devices are pairable:
I'm wondering if those devices show up (unnamed) on systems that we expect to hide them.
The text was updated successfully, but these errors were encountered: