Final Team Update for 12/13/2024

General Update

Drumroll please……….We won!

  1. (30hr Frontend Stretch): Alex and Jubi worked on ironing out bugs in the bluetooth communication, dynamic button generation, chart displays/analysis, and threshold updates.
  2. (30hr Hardware Stretch): Josh worked on designing and assembling a PCB (stretch goal), designing a CAD model to house the device hardware (stretch goal), and creating a second glove (stretch goal). Another stretch goals Josh accomplished was integrating dynamic haptic vibration that increases as the force readings encroach dangerous levels.
  3. (18hr Video Scripting, Recording, & Editing): This week, Alex, Jubi, and Josh spent time writing a script, recording, and editing a final video that demonstrates our product and design process.
  4. (20hr End-to-end Testing): This week, Alex, Jubi, and Josh continued testing the device at the Iron City Bouldering gym,  where we conducted end-to-end tests using the app to begin, end, and analyze workouts using the CLIMB device.
Risks and risk mitigation

None!

overall design changes

Towards the end, we worked towards supporting our ultimate stretch goal of DUAL WIELDING, however, this would require significant additions and possible revamps of the front-end to account for visualizing data from two hands.

schedule

The schedule remains the same as we are done!

GANTT Chart

Guidance

This project was so fun! Alex, Jubi, and Josh had a great experience desiging CLIMB and being able to demonstrate the culmination of our ECE undergraduate experience here at Carnegie Mellon University. Throughout this project, we utilized the cornerstones of ECE: circuit design, signal systems, hardware, and software systems. In doing so, we developed a durable, unobtrusive system of assistive features for rehab/training of climbers: real-time pulley monitoring, pulley-risk indication via haptics, wireless, battery-powered use, and workout tracking/analysis via a robust, intuitive user interface (the CLIMB app). We are very proud of this work, and will take this experience with us past graduation. Thank you to everyone who supported us throughout this process, especially the course faculty, TAs, and fellow classmates who provided invaluable feedback at every step!

Team Update for 12/7/2024

General Update

This week Josh, Alex, and Jubi worked on the final paper, poster, and video, continued verification & validation tests on the hardware & software solutions, and finalized work on the device integration / continued stretch goals. Josh worked on designing and ordered a PCB to house the hardware for the device.  He also began working on the CAD for the hardware capsule. Alex worked on data visualization within the mobile app as well as adding app functionality for the second glove (BT/calibration modifications, frontend modifications). Jubi worked on tweaking the recent queries add for edge case safety, as well as integrating in the visual displays for charting / pulling data from the database.

Risks and risk mitigation

None

overall design changes

None

schedule

The schedule remains the same as we are on track.

GANTT Chart

Guidance
We performed static weight unit tests via arm hangs on the sensors, from which we realized that the best placement of the sensors are on the A2 and A4 pulleys, the tendons between the first two knuckles stemming your middle and ring finger. This is because we realized that most of the weight is distributed on these pulleys, and although pulley injuries can still occur in the A2 and A4 due to pressure placed on the A5 pulley, during rehabilitation, it is important that minimal force is placed on these injured A2/4 pulleys.

Joshua Ramos’ Status Report for 12/7/24

Personal Accomplishments
  1. Final presentations (4hr): This week I spent time writing peer reviews for final presentations.
  2. PCB design (stretch-goal) (4hr): This week I spent time designing a PCB for our device using Fusion 360. This PCB houses an Olimex ESP-32 breakoutboard, exposing 4 adc and pwm gpio ports for our device use. It also contains the sensor amplifier circuit.
  3. More Testing (4hr): This week I spent more time testing the device. I performed more ergonomic testing via survey, durability testing via static and dynamic hangs/climbs, and performance tests with the battery.
  4. Final paper/poster writing (4hr): This week I spent time working on the final poster and paper, filling in an outline and coming up with a rough draft.
Progress
  1. Everything is on track! Working on stretch goals (PCB, CAD, Second Glove, etc.)
Next Week tasks & goals
  1. Work on CAD for device capsule (stretch-goal)
  2. Continue testing
  3. Continue writing final paper and poster.

Team Update for 11/30/2024

General Update

This week Josh, Alex, and Jubi worked on the final presentation, performed verification & validation tests on the hardware & software solutions, and continued work on the device integration / began some stretch goals. Josh worked on tuning the amplification gain/range to provide more robust and consistence sensor readings. He also created a second glove using the new Olimex ESP-32 and tested/confirmed battery-powered functionality. He also worked with Alex to perform some verification and validation tests at the Iron City Bouldering Gym, and he began working on a PCB design and device capsule CAD. Alex primarily worked on programming the calibration routine on the ESP32, as well as rewriting front end code for the startup sequence (Calibration Routine, Bluetooth Connection) to avoid coroutine-related errors and sync the states on the ESP32 to match the timing of the mobile App frontend. Alex also conducted testing focusing on the interactions between the app and the wearable device during a full session from beginning to end. Jubahed assisted Alex with software end-to-end testing, as well as explaining his APIs to make sure that Alex could properly build the calibration system upon them. He also continued work on the back-end database system, as well as integrating bluetooth connectivity between the device and app. This mostly included integrating the prior frontend elements with the backend APIs, and ensuring that they worked together as intended as smoothly as possible.

Risks and risk mitigation

None

overall design changes

We are now using the Olimex ESP-32 LiPo DevKit board with an on-board power-jack because it allows us to provide battery-powered functionality to the CLIMB device without needing to design an LDO circuit on the PCB, though this solution is a bit more expensive than the previous ESP-32 we were using from AdaFruit.

schedule

The schedule remains the same as we are on track.

GANTT Chart

 

Joshua Ramos’ Status Report for 11/30/24

Personal Accomplishments
  1. Lab meetings (6h): During our schedule lab meeting hours, we did our interm demo and recieved great feedback. I also continued work on the hardware solution, which is described below.
  2. Second glove implementation (4hr): Worked on creating a second glove. This consisted of copying the first glove in implementation, but instead using our new Olimex ESP32 with an on-board power jack so we can test a battery-powered implementation. I spent a deal of time soldering up 4 more sensors with wiring such that they can be attached to the second glove. The battery powered ESP works!
  3. Built pull-up bar for final demo (1hr):  I spent time building the pull-up bar we ordered for our final demo.
  4. Sensor tuning (3hr):  I spent time deciding what gain/voltage range we wanted to use for our sensor amplifier, after testing whether a 0.5-3.3 vs. 0.25-3.3 vs 0.15-3.3 voltage range, using a gain of (837k/[3M->100k]), I found that the larger forces were better measured, since the the gain was more linear, using the 0.15-3.3 range.
  5. Device Verification & Validation (5hr):  I spent time working with Alex to run verification & validation test at the Iron City Bouldering gym where we performed durability, safety, ergonomic, and BT speed tests using the open climbing environment with various climbing levels and hangbars for more static weight tests.
  6. Final Presentation prepare (8hr): I spent time working on the final presentation, specifically updating the solution body diagram, the hardware solution, the testing requirements, the hardware/software test results,  and design tradeoffs.
Progress
  1. Continuing work on verification and validation tests
  2. Everything is on track! Working on stretch goals (PCB, CAD, Second Glove, etc.)
Next Week tasks & goals
  1. Working on PCB and CAD for device capsule
Guidance

I learned how to find an appropriate microcontroller for a given application and how to use a new one: ESP-32. Previously I had worked with an STM32 and Teensy 4.1, but those were in projects where the MCU was chosen for me. So for this project, I had to do some research into viable MCU’s, where I learned how to perform proper tradeoff analyses for deciding which hardware to use for my application. I spent a great deal of time deciding which factors I should use to determine viability, and in doing so, found myself learning how to scan through reviews and documentation to perform comparisons of each device. The same occured in my process for finding which sensors we should use for our CLIMB device. I even had to call sensor distributors to acquire more information about the sensors I was considering for my application. This process forced and taught me to become more comfortable in information gathering and tradeoff analyses for the application design process. In regard to learning how to work with the ESP-32, I learned how to work with the Expressif toolchain to flash and debug my CLIMB code. I also worked with the Arduino libraries to utilize the on-board ADCs and PWM modules, which required me to look into the MCU’s peripheral functionalities, and decide which ports I would use for the various tasks my application required.

Team Update for 11/16/2024

General Update

This week, Josh, Alex, and Jubi spent most of their time working on preparing the product for demo. This consisted of Josh modularizing the prototype with plug-and-play sensor functionality, soldering the sensor wiring and heat-gunning insulation covers instead of using jumpers for a clean look, running 4 sensors at once that connect to dc motors that vibrate upon threshold excession. Alex worked on the CLIMB user experience by designing the UI in Figma, and programming it in Android Studio. Jubi worked on implementing bluetooth communication between the ESP32 and the Android smartphone, achieving communication from the board to the phone and implementing a state machine that transitions the phone between start and stop modes. He also worked on implementing the database that will store the CLIMB metrics on the local device. Next steps are to achieve communcation from the phone to ESP, design a PCB to house the ESP and amplifier circuit, and data visualization and analyses to display on the UI. Also we will begin verification and validation.

Risks and risk mitigation

None

overall design changes

Using PWM to control the haptic motors which will have 3 vibration levels (1V, 2V, 3V).

schedule

The schedule remains the same as we are on track.

GANTT Chart

Guidance Question

In all, we are to perform ergonomic validation tests, durability verification and validation tests, safety verification tests, social/feedback verification tests, and finally end-to-end varification tests.

So far, we have performed basic hardware utilization tests such as working out with the glove on while monitoring the force readings, making sure that the readings are consistent all-throughout. The results of this test have been favorable, resulting in consistent readings.

(HW) Testing Durability

To verify the system’s durability requirements, the device will undergo 50 uses, each for 5 minutes with a constant 10kg applied at a 90 degree angle. This will be repeated for 50kg as well. After each, the sensitivity loss of the device will be verified to be within 2.5% and the wearable fabric will be examined for any tears or disfigurations. To validate durability, the device will undergo dynamic weight applied by a user at various angles for 1-hour, 10 times. After each, the sensitivity loss of the device will be validated to be within 2.5% and the wearable fabric will be examined for any tears or disfigurations. This meets the system’s durability use-case requirements by tackling even the most extreme cases (54kg/sensor) and verifying that the system remains robust.

(HW) Testing Ergonomics

To validate the system’s ergonomic requirements, a survey will be conducted on 50 randomly selected participants. Each participant will provide the shape characteristics of their fingers. With this information, the system sensor size requirements will be tested to only impose up to 30% surface area coverage for at least 90% of participants’ fingers. This meets the system’s ergonomic use-case requirements by providing a comfortable and unobtrusive wearable device that covers no more than 30% of a user’s finger.

(HW) Testing Safety
To verify that the system initializes properly, the system will be booted up and calibrated 50 times. The system shall successfully calibrate 95% of the time.
To verify sensor precision, incremental weights will be placed atop the sensor (1kg, 2kg, 3kg, etc.) and a voltmeter will be used to monitor the voltage changes per kg. The system shall reflect a 5mV/kg voltage change up to 54 kg. To verify that an alarm signal is triggered within 100ms when the force reading is within 20% of the safety threshold, an instant force exceeding the threshold will be applied after initialization, and an external timer will record the delay. The system shall fire its alarm within 100ms at least 98% of the time. To verify the second haptic’s functionality, the first haptic will be disconnected. Immediate force will be applied until the threshold is reached. The system shall fire its second alarm within 200ms of threshold excession with a 98% success rate. This meets the system’s safety use-case requirements by demonstrating that the system will actively work to prevent pulley injuries by remaining with a maximum error of ±2.5 and firing alarms within 200ms.

(SW) Testing Social / Feedback

To verify the feedback requirements of the system, tests will be performed using mocked force readings to verify the minimum data transfer. To do this, a mocked buffer input of 96 Kb will be generated and communicated to the mobile device. This test will be timed, recorded, and repeated 50 times to verify that the shipment completes in 10s with a 95% success rate.
To verify the user-experience related requirements, 96Kb of data will be mocked on the mobile device and passed to the database handler to ensure that information is stored properly and can be pulled to display on the application charts. This test will be repeated 50 times to verify that the flow of data on the mobile device can reach the user’s screen with a 95% success rate. These tests meet the use-case requirements by verifying that the system is providing users with a seamless experience in accessing analytical feedback that is suggestive towards improvement and can be used to compare progress with others.

(HW/SW) Testing End-to-end

To verify end-to-end integration, the system will undergo 100 simulations where mocked force readings will be generated and communicated to the mobile device, testing to determine if the data is successfully displayed analytically 95% of the time. To validate the system, a test using a hang-board with force-sensors mounted will be used to perform dynamic tests. The force on the hand-sensors will be cross-referenced with the force-sensors on the board. This test will be conducted 20 times for 10 minutes each. The system will be tested for the average error to be below 2.5%

Joshua Ramos’ Status Report for 11/16/24

Personal Accomplishments
  1. Lab meetings (4h): During our schedule lab meeting hours, I continued work on prototype development and looking into potential battery sources for our device.
  2. Intermin Demo Prototype Prepare (20hr): This week I worked on preparing the hardware prototype for the interim demo. This consisted of soldering the sensors and haptics, hooking up the 4 sensors to the ESP, integrating with Jubi’s bluetooth implementation, converting the ADC readings to its corresponding force values, having the haptics fire with 3 different levels depending on how much force it placed on a particular finger, have each sensor connect to a specific motor, and add tape/velcro to make the product easier to put on and take off.
Progress
  1. The hardware prototype is complete.
Next Week tasks & goals
  1. Begin verification and validation tests. Begin designing the PCB to house the circuit and MCU. Order batteries for the MCU.

Team Update for 11/9/2024

General Update

This week Josh spent time working on the hardware prototype by hooking up multiple sensors (4) to the esp32, reading force values off of them, and running a vibration motor upon excession of a preset threshold value. Next steps are to sow the sensors onto the crack-climbing glove. Alex and Jubahed synced up to tidy features on the app, as well as share UX ideas, page layouts, and backend integration.

Risks and risk mitigation

No additional risks (to those previously mentioned) were found during this week’s work.

overall design changes

No design changes.

schedule

The schedule remains the same as we are on track.

GANTT Chart

Joshua Ramos’ Status Report for 11/9/24

Personal Accomplishments
  1. Lab meetings (4h): During our schedule lab meeting hours, I continued work on prototype development and looking into potential battery sources for our device.
  2. Programming ESP32 (4hr): This week I continued working on implenting BLE communication on the ESP.
  3. Prototyping (4hr): This week I worked on implementing a prototype that consists of 4 sensors that lie on the pulley-joints of a single hand, which are read via ADC on the esp32, and runs a vibration motor upon excession of a pre-set threshold value.
Progress
  1. The hardware prototype is almost complete, tomorrow we’re picking up the glove from ECE recieving, with which we plan to sow the sensors onto.
Next Week tasks & goals
  1. To complete the prototype with the glove and test it such that we can make fine-tune adjustments by the interim demo.

Team Update for 11/2/2024

General Update

This week Josh spent time programming the esp to interface with a general purpose computer via BLE communication to view force readings from the sensors. Alex worked mainly on the mobile app, namely continuing work from the previous week focused around the app’s startup sequence and data visualization aspects.

Risks and risk mitigation

No additional risks (to those previously mentioned) were found during this week’s work.

overall design changes

No design changes.

schedule

The schedule remains the same as we are on track.

GANTT Chart