Support the BrailleNote Touch and Brailliant BI 14 via the BrailliantB brailledisplayDriver (#8031)
* Support for HumanWare Brailliant BI/B braille displays connected via Bluetooth when the protocol is set to OpenBraille.
* brailliantB: Try a delay after connect, multiple init attempts and delays between attempts as recommended by HumanWare, as init can be quite flakey, particularly via Bluetooth.
* Add support for the Brailliant BI 14 and BrailleNote Touch.
* brailliantB: Change some key names and add comments about devices to key table.
* hwIo.Hid: add a setOutputReport method which allows writing data with HidD_SetOutputReport as an alternative to WriteFile which may freeze on certain USB implementations.
* Fix support for newer BrailleNote Touch devices via HID, by writing display cells with HidD_SetOutputReport rather than WriteFile which can block forever on these devices.
* Mention BrailleNote Touch in the UserGuide under Brailliant BI/B Series, and BrailleNote Touch
* Mention Brailliant BI 14 in userGuide
* UserGuide: update key assignments for Brailliant BI/B and BrailleNote Touch, splitting them into tables for all models, and extra specific.
* hwIo.Hid.setOutputReport: add debugging.
* Change description of BrailliantB driver.
* change time.sleep to waitForRead to not block IO thread.
* Fix debug string.
* BrailliantB braille display driver: use HidD_SetOutputReport for all HID devices supported by this driver. Not only does WriteFile block for ever with USB HID, but WriteFile simply does nothing at all for Bluetooth HID.
* BrailliantB braille display driver: add some extra key assignments with space as not all displays have command keys.
* Change waitForRead before retrying init back to a time.sleep for now. If it is truly needed we can add it back in in the Autio braille display detection pr.