Team Status Report for 02/18/23

Risk Management

The most significant risks that could jeopardize the success of the project are if it turns out that the ML model we use is too slow or inaccurate to create a usable product. In case this happens, our backup plan is to replace the ML model with a heuristic algorithm that analyzes the time-series data as they come in. This would allow us to make certain gesture predictions using a basic decision tree that can easily run on the compute module quickly.

Changes/Updates

The block diagram was updated to include more detail about what specific sensors and communication protocols we will be using. This is still in line with our original proposed plan, just with more detail.

Gestures

While brainstorming what gestures we would support, we thought about how we might enable or disable activation of the gesture recognition/transmission. We originally proposed having another switch alongside the power switch to control transmission, however with further discussions with the professor and TA, we realized that it would be too unwieldy for a user to do that. Instead, we opted to come up with a custom gesture that could be used to enable or disable the transmission.

Further details on the gestures are described here: Gestures

Principles Used

  • Maintainability – we drafted our design docs to be easy to read so that if something breaks down the line, we can quickly refer to it to identify the reasoning behind certain design decisions
  • Modularity – Our device was designed with modularity in mind so that if a single part breaks, it will be easy to quickly swap it out with a working component
  • Testability – our system was designed so that it would be easy to test individual units as well as the system as a whole
  • Integration – we designed our system to integrate with existing infrastructure in the environment of our intended users. Examples of this are leveraging Wi-Fi and USB as communication protocols between our systems and with peripherals
  • Usability – usability is at the core of the design choices we made. This was evident in how we opted to go for a gesture to enable or disable transmission as opposed to a physical switch

Gram’s Status Report for 02/18/23

Updates

Block diagram updates

This week, I identified more specifically what sensors and communication protocols we will be using for our device. I also worked on the wiring between the different components and microcontrollers — illustrating how many wires we would actually need between components. I updated our block diagram to reflect this:

Communication Protocols

For the accelerometer, we found from the MPU-6050 IMU datasheet that it communicates using the I2C protocol. For communication between the ESP32 (gloves) and the Raspberry Pi (compute module), we originally only said that we were communicating over Wi-Fi but we had not yet thought about what protocol we would be using to communicate. I researched into what protocols were common for high-frequency updates from IoT devices and found the MQTT protocol to be the best fit for our setup. MQTT works similar to various other pub-sub systems while minimizing communication overhead. Moreover, there are existing MQTT libraries we can use for the ESP which can connect to an MQTT (Mosquitto) broker on the Raspberry Pi server.

Gestures

This week, I also worked on refining the exact gestures we would recognize. I worked to help break down our conceptual actions (zoom, pan, and rotation) into concrete gestures that we could recognize. We managed to break this down into 5 specific gestures:

  • Enable transmission
  • Disable transmission
  • Zoom in
  • Zoom out
  • Rotate
  • Pan

The gestures are explained in more detail here: Gestures

Schedule

Currently, we are still on schedule to finish the project in a timely manner.

Upcoming Deliverables

This coming week, I will be working on formalizing these design decisions in the design report. Specifically, I will work on finding resources to back up our design choices and, if necessary, modify them if resources state otherwise.

Relevant ECE Courses

  • 18-100, 18-220, 18-240, 18-794,

David’s Status Report for 2/18/2023

This week, I spent my time working with Gram and Xuan on finalizing some key design decisions. We discussed the the specifications for the gestures that we intend to implement in our project as well as determine if these gestures are intuitive. This part took a bit of thinking because we wanted to make the gestures distinct that users would not accidentally perform a gesture they did not intend. In addition, we are also considering an alternative design for a non-ML-based system which would end up having smaller latency.

Aside from discussing these design decisions, I also assisted in creating a more detailed block diagram for the entire system which elaborates on the protocols between each of the modules as well as enumerates all hardware components in each module. We can then tie all the things we purchased back to this diagram.

So far, I think we are on time in terms of our schedule and the next part of the work would be to finalize all of the design decisions formally in the report.

Gestures

Block Diagram

Relevant ECE Courses: 18-100, 18-220, 18-349

 

Team Status Report for 02/11/23

This week, we worked on preparing for the proposal presentation slides as well as presenting it during class. In line with this, we planned out the schedule and timeline to

Later in the week, we finalized discussions related to the components of the Compute Module. Afterwards, we were able to refine our block diagram, replacing the originally proposed Jetson with a Raspberry Pi 4 and Coral TPU combination.

After finalizing the list of materials, we put in our orders through the request form for all the components except for the Coral TPU. Currently, it appears that the Coral TPU is out of stock everywhere, so we will postpone the order for this part until later in the semester.

Our project includes considerations for society. By tailoring this product for educators and presenters, we can help improve the effectiveness of education around the world which will have downstream effects across all aspects of society.