External keyboards for computers, tablets, smartphones, etc. are available in many different layouts, with different key positions, as well as with different sets of keys. Such variation allows keyboard manufacturers to cater to various user preferences and different geographies with local keyboard preferences. However, since the device operating system may be unaware of the layout of an external keyboard, the user needs to perform manual actions to map the keyboard keys to specific operating system functions. This disclosure describes techniques to automatically determine the layout of a physical keyboard attached to a computer based on a picture of the keyboard. Image recognition is performed on the picture of the keyboard to determine the number of keys and key location, the matrix of keys in relation to each other, and the labels on each key and the associated meaning. Based on this data, operating system (OS) functions are automatically mapped to the recognized keys based on logical mapping between the available keys and the OS functions. The user is offered an opportunity to customize the logical mapping via a visual interface that includes a picture of the keyboard and an overlay of the OS functions mapped to various keys.

Creative Commons License

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.