| Summary: | Creation of component to emulate keyboard with USB-KM232 | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [QA/Testing] Runtime Testing | Reporter: | Jair Gonzalez <jair.de.jesus.gonzalez.plascencia> | ||||
| Component: | general | Assignee: | Jair Gonzalez <jair.de.jesus.gonzalez.plascencia> | ||||
| Status: | RESOLVED FIXED | QA Contact: | Benjamin Esquivel <benjamin.esquivel> | ||||
| Severity: | enhancement | ||||||
| Priority: | High | CC: | anibal.limon, benjamin.esquivel, edwin.plauchu.camacho, leonardo.sandoval.gonzalez | ||||
| Version: | 2.2 | ||||||
| Target Milestone: | 2.3 M1 | ||||||
| Hardware: | x86 | ||||||
| OS: | Multiple | ||||||
| Whiteboard: | |||||||
| OS type for building Yocto: | --- | Type of Regression: | --- | ||||
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |||||
| Bug Depends on: | |||||||
| Bug Blocks: | 9689 | ||||||
| Attachments: |
|
||||||
|
Description
Jair Gonzalez
2016-10-07 16:00:21 UTC
Created attachment 3460 [details]
USBKM232 Manual
Created a first approach of this library. Such approach includes * Dynamic loading of kbemulator module as per model. * Written USB-KM232 kbemulator module. * Written USB-KM232 mock module. (This matter is created with purposes of integration with other platforms "for instance AFT"). https://www.youtube.com/watch?v=NKmDMSdVzG8 <-- Keyboard emulator video (DEMO) This video shows how kbemulator library is interacting with jed editor. I received a functional library package from benjamin.esquivel@intel.com after being integrated with https://bugzilla.yoctoproject.org/show_bug.cgi?id=10395 and https://bugzilla.yoctoproject.org/show_bug.cgi?id=10396. I'm currently working on a PoC using them with an actual device in order to test and document their functionality and integration. The Proof of Concept was executed successfully and the devauto library was able to control an USBKM232 device to emulate a keyboard and send a keystroke sequence to 1 MinnowBoard DUT. However, in its current form , the KBEMUControl class doesn't provide any option to select a different USB serial port, and the port auto detection method in the usbkm232 module is restricted to the default USB product and vendor id. To be able to use the library to control more than 1 device, it's necessary to add a port configuration option in the control class and provide it as an argument to the selected hardware layer. reopened for working on the scaling of more than 1 controlling device. A patch has been submitted to enhance the kbemu sub-package. Now the KBEMUControl class accepts any keyword arguments and passes them to the constructor of the dynamically loaded device class. Then the device class uses them to configure itself accordingly. This change makes possible to select a device by port with the ‘conn_tty’ parameter, or to autodetect it by using ‘usbpid_tty’ and ‘usbvid_tty’ parameters. In addition, the serial port parameter values could also be set if required. I tested the changes by sequentially controlling and submitting a keystroke sequence to two different hardware keyboard emulators, to two instances of kbemutest and to one of each type. Jair, can you include a link to the mail archive where you sent the review? (In reply to comment #8) > Jair, can you include a link to the mail archive where you sent the review? Please disregard my message. This repo is pending publishing. Merged at the devauto repo which is pending publishing. |