Gram’s Status Report for 04/29/23

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

I fixed the flex sensors to the glove at their base using hot glue and used tape to fix them through their midsections and tip. This took some time to accomplish since I had to readjust the sensors so they would be straight to minimize strain on the sensors.

I also worked on integrating the end-to-end systems and setup demos of our independent subsystems for our presentation. Here, I added a debounce to our classifier to create a more seamless experience when performing gestures. Essentially, when a gesture is classified, a timeout is applied before the next gesture is applied to prevent the host cursor from jittering across the screen.

I also worked on the slides for the final demo and practiced speaking since I presented.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Progress is a bit behind because after integration, some parts malfunctioned (some wires detached, driver malfunctioned). However, we will resolve them this week and get the entire system working.

What deliverables do you hope to complete in the next week?

I plan to work on testing the last untested parts and work on the final report.

David’s Status Report for 4/29/2023

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 assisted in making sure all of the components were attached properly on the glove. I also tested the battery life of the glove. Currently, the system is not working smoothly end-to-end, and I am still investigating why the HID controller is not working as expected.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Progress is slightly behind due to the unforeseen problems with the HID controller. Since I will have more free time next week, I will work on getting everything working end to end.

What deliverables do you hope to complete in the next week?

Fix the HID controller and also run more tests on end to end accuracy and latency.

Team Status Report for 04/22/23

What are the most significant risks that could jeopardize the success of the project? How are these risks being managed? What contingency plans are ready?

The biggest risk right now is the setup experience becoming more tedious than anticipated. We are currently exploring different ways to attach flex sensors to the glove that don’t affect the setup experience too significantly.

Were any changes made to the existing design of the system (requirements, block diagram, system spec, etc)? Why was this change necessary, what costs does the change incur, and how will these costs be mitigated going forward?

None since last week.

Provide an updated schedule if changes have occurred

No changes.

Team work adjustments

No teamwork adjustments have been made. We are currently on track to accomplish our tasks and are currently all just working on them.

Gram’s Status Report for 04/22/23

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

I configured the compute module to automatically start the system on startup, since a bug in the earlier configuration caused the program to keep crashing on startup.

I improved the gesture classification model to become more robust against random noise that was being collected by the sensors. I also addressed an edge case in the gesture classification model where pan/rotate gestures weren’t being detected if they rotated slightly while panning or panned slightly while rotating.

I also sewed 10 cloth straps onto the gloves to hold the flex sensors in place. However, after putting this together and trying it with the glove module, we discovered that it wasn’t providing enough tension for the flex sensors to pick up. I experimented with using rubber bands and tape as alternative attachment schemes and will likely stick with tape for now.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Progress is a bit behind since there were a lot of hiccups with integration, but since the integration is pretty much done, we can get started with testing this week after our presentation.

What deliverables do you hope to complete in the next week?

I plan to work on the demo presentation slides and finish testing our system.

David’s Status Report for 4/8/2023

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).

I was able to get the output reports working on the HID controller. This means that we will be able to get the left and right handed mode working, as well as the calibration protocol. This was not working at first because I forgot to include the output declaration in the USB HID report descriptor. In addition, I realized that using output reports rather than feature reports were easier to implement since there are many examples of them online (e.g., keyboard HIDs).

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Progress is on schedule.

What deliverables do you hope to complete in the next week?

This week, I plan to complete integration with left/right handed mode and calibration, as well as start some testing.

Now that you are entering into the verification and validation phase of your project, provide a comprehensive update on what tests you have you run or are planning to run. In particular, how will you analyze the anticipated measured results to verify your contribution to the project meets the engineering design requirements or the use case requirements?

I am planning to run tests on end to end latency as well as the usability and responsiveness of the HID commands to macro conversions on the host computer. I will analyze the responsiveness of the HID commands by running them end to end from the glove to the host computer. In addition, I will also test whether the largest possible magnitude of each command is a reasonable amount. These two will match directly to usability and latency requirements on the original report.

Gram’s Status Report for 04/08/23

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

I worked on integrating the binary packed input from the glove module with the MQTT receiver on the compute module. I also worked on integrating the compute module with the HID receiver on the computer. I also worked on refining the gesture classification model based on real values from the glove module.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Progress is a bit behind since we should be starting to test this week. I’ll ensure the end-to-end integration is completed by the start of next week so that we can spend most of next week working on testing and evaluation.

What deliverables do you hope to complete in the next week?

I plan to refine the gesture classification model more so that it can work seamlessly with the input from the glove and dispatch more seamlessly with the HID receiver. Afterwards, I plan to work on some benchmarking and evaluation.

Team Status Report for 04/01/23

What are the most significant risks that could jeopardize the success of the project? How are these risks being managed? What contingency plans are ready?

The most significant risk right now is still just the integration between the individual subsystems. We have some subsystems integrated together (HID + gesture model). We plan to finish the glove integration tomorrow in time for the interim demo.

Were any changes made to the existing design of the system (requirements, block diagram, system spec, etc)? Why was this change necessary, what costs does the change incur, and how will these costs be mitigated going forward?

None since last week.

Provide an updated schedule if changes have occurred

No changes.

Team work adjustments

No teamwork adjustments have been made. We are currently on track to accomplish our tasks and are currently all just working on them.

Gram’s Status Report for 04/01/23

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

I worked on the gesture dispatch mapping on the HID controller to work in conjuction with the gesture classification model. Specifically, I worked on code that used pyautogui to dispatch HID controls that mapped to specific gestures on Geogebra. I also built an API to make this work better with the input that comes in from the gesture classification model.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Progress is on schedule.

What deliverables do you hope to complete in the next week?

Aside from the interim demo, I plan to flesh out integration in time for the interim demo as well as more rigorously test the gesture classification model.

David’s Status Report for 4/1/2023

What did you personally accomplish this week on the project? Give files orphotos 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 integration between the host PC controller and the peripheral controller working across the HID interface. Now, I am able to receive specific HID commands from the host PC’s program and parse it to the appropriate command. I implemented this in a multithreaded manner, so that I can read, write, and perform actions simultaneously. Here is a short video demonstrating this:  Video on Google Drive

I was only able to get this working on Windows. I tried to make it run on Mac, but the HIDAPI was not reading the device properly, so it produced an error when attempting to open the device.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

I on track. Gram and I were also able to finish the unfinished tasks from last week. The next things to do is to further test the integration for each subsystem.

David’s Status Report for 3/25/2023

What did you personally accomplish this week on the project? Give files orphotos 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.