Rosina’s Status Update 9/30

This week I researched hijacking the mouse movements and looked at activating keystrokes. I looked at how this is typically done in software, and particular libraries in Python that would allow for this to be implemented. I’m currently working on programming mouse movements just within the Python IDE so that I can get comfortable with it and prepare to properly interface it with the IMU and microcontroller when that is ready. I will continue to work on this for the next week. We are currently on track with the schedule since most of the work involves learning and researching before we receive our parts. As for coursework that I used to achieve the engineering, science, and mathematical principles for our design, Intro to Embedded Systems is strongly involved. It covers the microcontroller and interfacing the hardware to software.

Saumya’s Status Update 9/30

This week, I experimented with pyautogui to explore its capabilities and how we can potentially use it in our project. I also worked on the design presentation. As this week’s presenter, I also practiced presenting and worked on my script. In addition, I helped Sarah with hardware selection based on our software architecture requirements and power requirements. Based on my tasks on the Gantt chart, I’m on track with regards to key mapping research, but for Bluetooth, I was waiting on our finalization of the board to look into specific networking information. Now that we’ve selected our board, I can look into sample projects using Bluetooth connections to the microcontroller and figure out how I can get a similar connection established between our computer and mouse board in the first half of the week so the Bluetooth transmitter task can be completed by the end of the week. By next week’s update, I plan to make progress towards getting Bluetooth set up.

The classes that helped me the most with the design of our project were 18349 (Embedded Systems) and 18441 (Computer Networks). I hope to apply some knowledge from my internship, where I learned more about Bluetooth. I also took Physics C in high school, which will help me with the IMU math.

Sarah’s Status Update 9/30

This week, I further researched the right microcontroller to use for the project, and we’ve settled on the ESP-32S board. This is because there are more than 12 ADC inputs on the board, which is more than enough for our sensors, it has built in Wi-Fi and bluetooth, supports Arduino IDE and comes in a compact size of just over 2 inches. We’ve already ordered the board and it will come early next week. As such, I am a bit behind schedule since we were unable to receive the board this week. To make up for this, I will start interfacing with the board when it arrives, but further research on the board suggests the setup process is quite seamless when using Arduino IDE, so I don’t expect this process to take longer than a day. Additionally, I created a block diagram for the design we will use for the sensor to board interface, and started creating a schematic for the design report for next week. I researched different power sources we could use, including coin cells and lithium ion batteries. After researching the power consumption needed for each component, we have a ballpark estimate of how many mAh we need to sustain our device for our target battery life of 2-3 hours. Since we have already ordered the sensors needed as well, next week we will start interfacing the sensors with the board, and experimenting with different thresholds for the analog inputs. Intro to Embedded Systems greatly helped with the block diagram and schematic design for our project. Additionally, Electronic Devices and Analog Circuits helped me to better understand power rules and create circuit diagrams for the power structure.

Team Status Update for 9/30

This week, we did lots of research both on the software and hardware sides of the design. We’re starting to work with the Python libraries required for the mouse tracking part of our project, as well as designing power structures and schematics for the hardware side of the project. The most significant risks at this point involve shipping time and integrity of the parts we ordered. Since we ordered our parts mid-last week, we hope they will arrive in time for us to work on this upcoming week. To mitigate our shipping time, we have chosen to source some of our parts from Amazon, but the integrity of our parts may be compromised in this. To fix this issue, we ordered more than enough parts necessary, so in the event some are faulty, we have backups. We decided to switch from using a nucleo board to using an ESP32 dev board, because of it’s multitude of ADC channels, bluetooth capability, but mainly because of its size. The new board we’ve chosen is a bit over 2 inches, which would comfortably fit in the palm of one’s hand. No other significant changes were made to our design, aside from the fact that we are still in process of figuring out the power structure for our design. We are still largely on schedule, and are awaiting the parts to ship.

Saumya’s Status Update 9/23

This past week, I spent time creating our software architecture plan. I also researched the Bluetooth portion of our project, specifically looking into Python libraries that would be compatible with the various microcontrollers we were deciding between (Arduinos, STM boards, etc). I identified the pyautogui library as one that we could use to take control of both the mouse and keyboard actions. In addition, I collaborated with my group members to refine our final proposal presentation slides. We worked to finalize our design plan, making sure that the scope of our MVP was reasonable given the time constraints. When creating our Gantt chart, I delegated tasks related to networking and physics aspects of our project to myself, since I have a little bit of experience and a lot of interest in those areas. Finally, I started looking into the inertial measurement unit sensors and what physics calculations we might need to translate hand movements into mouse actions.

Sarah’s Status Update 9/23

This week, we gave a presentation on our project proposal. We received good feedback on our design requirements, especially the concern about the size of the board we originally picked, the STM32 Nucleo Board. We decided to look into other options for our main board, including an Arduino Uno, for its ease of use. However, we realized that for the sensors we require, we would need around 8 analog inputs (not including the IMU inputs), which is 2 more than is included on the Arduino Uno. From here, we explored other options, such as analog multiplexers to switch between each sensor input, switch matrices to utilize the 6 analog inputs on the Arduino for 9 analog signals, or a PCB with extra ADC’s. We are still in progress of choosing a main board for the project, but the feedback we received was helpful in our research. Additionally, we chose the sensors we need for the project, and are working to order them in the coming days. We are still on schedule for the project, and we hope to receive some parts by next week to test compatibility and start setting up drivers for the main board.

Team Status Update for 9/23

This week as a group we completed the proposal presentation. The goal for the week was to research on the specific components that we should use that would fit into our use case requirements for the product. The main goal was to have components ready to order next week. We decided on the specific touch sensors, flex sensors, and glove that we will be using. However, we are still finalizing the microcontroller that we want to use since we received feedback on Friday about using a more optimal microcontroller (based on the size of our final glove). Thus, as a group we are looking into a microcontroller that would be optimal for both software and hardware, as well as ease-of-use and compactness. We also did more research on our individual sections so that we are each ready to start working on our respective parts soon.

Rosina’s Status Update for 9/23

This week I practiced and delivered the proposal presentation. Since this was done on Monday, I spent the rest of the week preparing information for the design report and presentation. Specifically, I did some research on the specific components we need since we plan to have a definitive list of parts to order this upcoming week. I looked into existing bluetooth components that we could potentially use, which include microcontroller boards that come with a bluetooth module, external bluetooth modules, and extended board bluetooth components. I also reviewed the feedback we received and expanded on the use case requirements. Specifically, quantifying the accuracy and how we can measure speed and accuracy to a regular mouse. I’ve also been looking at bluetooth communication and what component would be most optimal to use with the proposed proposal.