Skip to content
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

Redesign bdDetect USB device registration #17521

Open
LeonarddeR opened this issue Dec 14, 2024 · 0 comments · May be fixed by #17537
Open

Redesign bdDetect USB device registration #17521

LeonarddeR opened this issue Dec 14, 2024 · 0 comments · May be fixed by #17537
Assignees
Labels
component/braille-display-drivers p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.

Comments

@LeonarddeR
Copy link
Collaborator

Detailed description of the issue

The current way USB devices are saved in bdDetect internals is not appropriate for several reasons.

  1. It doesn't allow filtering for HID usage page or other device parameters that go beyond just Vid and PID on the bdDetect level, only on the driver level.
  2. It doesn't allow registering fallback state of a device (see Add com port option in Braille Display Select Dialog and fix Serial Connection error #16340) in a clean fashion, i.e. it requires a separate dictionary to register fallback state, rather than providing the fallback state on the device match

Steps to reproduce or illustrate the issue (if applicable)

  1. Connect a Humanware Brailliant over USB
  2. Observe in the logs that several attempts will be done to connect to a device that doesn't allow connection (i.e. because it has not the expected usage page)
  3. Consider that for a driver to select the proper usage page, the driver has to be patched since bdDetect has no facilities to account for this.

Expected outcome or behaviour (if applicable)

  1. Quicker and more robust connection of Humanware Brailliant devices
  2. Make the detection system of usb devices more future proof

Intentions with this issue

I'm intending to fix this and will try to provide a patch somewhere within the next weeks. I intend this patch to be backwards compatible, so it won't require any driver change.

@LeonarddeR LeonarddeR self-assigned this Dec 14, 2024
@SaschaCowley SaschaCowley added p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority component/braille-display-drivers triaged Has been triaged, issue is waiting for implementation. labels Dec 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/braille-display-drivers p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants