Carlos’s Status Report for Feb. 12

  • Carlos’s Status Report for 2/12/22

This week I picked up the Raspberry Pi that we will be using to emulate sending keystrokes to a host computer. I also started looking at how we might use it to send keystrokes to a host computer.  It seems like there are already some libraries that perform this task, so it may be worth looking into which ones will best serve our needs. Finally, I also scheduled a meeting for the team with Professor Patrick Carrington, an assistant professor in HCI who studies accessibility (among other things).

Team Status Report for 2/11/22

We reached out to Professor Carrington in the HCI department for advice on designing with accessibility in mind as that is his specialty. We cant design assuming that we know everything going into it and the only time available to speak with the professor was after the design review so we scheduled it then. In the meanwhile, we designed a preliminary  layout for the board that we think works well, which is based on existing one-handed keyboards.

On the technical side of things we decided on a few components that we are going to use. We’re using standard mechanical keyboard switches which will have custom caps designed and 3d printed. They will be slightly larger than normal to improve ease of use without being too bulky.

The Pi only has 26 GPIO pins but thats more than enough even for a 40+ key keyboard because we will be using matrix scanning to make the most use out of them. for every N input pins this gives us (N^2)/2 possible inputs, which is more than enough.

On the 

Matrix scanning works by taking in one row and one column of keys. Each key is connected to a switch (depicted as transistors), and when a key is pressed, it alters the voltage on the col pin, so it reads all the pins in the col. It then detects which pin by looking at which row. This efficiently reduces the time and number of pins, but only one key can be pressed at a time.