This project was inspired by a kickstarter scam that in hindsight a bit too good to be true. The product that was being advertised was a mouse that was covered with a flexible touchscreen OLED that could be programed with shortcuts to any number of applications. It seemed like a novel and interesting idea (even if not fully practical) where they seemingly showed functioning prototypes as shown below.
When the project did eventually fall through; I decided why not try to make the best of the situation and build my own. The goal of this project was to make a functioning mouse that implemented a touchscreen display that could be programed with custom shortcuts for various applications.
This is also a story, in a continually growing large part, about scope creep. When I started this project, the plan was to Frankenstein together an existing mouse with a touchscreen for shortcuts. Maybe a simple USB data splitter to handle both the mouse signal and shortcuts from the controller…
First and foremost, this needs to be a functional computer mouse so we need to figure out how they work. Essentially all mice that we use today have optical sensors that are used to detect the movement of the mouse. They work by taking consecutive images of the surface under the sensor and comparing each image to the previous image then calculating the relative motion of the mouse based on the offset. That x and y offset is then sent to the computer which then turns that data into the motion of your cursor.