What did you personally accomplish this week on the project? Give files or
photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).
This week, I worked on getting the host HID controller working. This controller consists of two parts: (1) reading data from the HID interface, (2) performing the macros on the host PC.
Most of the work I have completed was figuring out how to perform the macros on the host PC. I have tested the pan gesture already, but it still needs to be calibrated since the sensitivity of drag actions on Geogebra is high. Nevertheless, I was able to control the movement of the mouse and the graph with the program. Since this requires significant work, I tapped Gram to assist in this part. He mentioned that he is currently waiting on the physical module to be finished and is available to provide support. In the next week, we will work on finishing up all the gesture macros on Geogebra.
I am also working on getting the HID interface working on the host PC side. Currently, I have some written some code using HIDAPI to read the data, but I am still designing the program to be multithreaded so that we can read data and perform actions simultaneously. I also discovered that the HID device class spec allows for what is called a Feature Report. This allows me to send calibration settings to the peripheral HID interface. For instance, we can specify handedness with this feature report.
Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?
I am slightly behind schedule. About half a week or so. To compensate for this, I tapped Gram to assist in writing some of the macros for Geogebra.