Project

# Title Team Members TA Documents Sponsor
78 Wearable Basketball Jumpshot Mechanics Analyzer
Aiden Zack
Arjun Vyas
Tanmay Nair
Mingrui Liu design_document1.pdf
final_paper1.pdf
proposal1.pdf
video
Tanmay Nair (netid: tanmayn2 )
Arjun Vyas (netid: avyas9)
Aiden Zack (netid: aidenrz2)

Problem: A basketball jumpshot involves a chain of body mechanics that requires coordination from your feet to your wrist to achieve a simple goal that is much more complicated than what the average person sees: Making the ball go in the hoop. So many players across the world have exhibited different mechanics in their jumpshot, so when they reach out to coaching for help, they tend to hear subjective advice that is often inconsistent, difficult to put into numbers, and, more importantly, harder to fit into the player’s perspective. Existing resolutions utilize shot trajectory and do not tap into the biomechanics that reside in the shooter. In essence, this leads to players lacking reliable, repeatable data to identify points of improvement in their mechanics, address consistency issues, and record progress.

Solution: This project will implement a system dedicated to quantifying a user’s basketball jumpshot by analyzing the consistency and timing of the “kinetic chain”. It starts with node sensors that will be worn on the user's shooting wrist and the knee of the user’s shooting side. These sensors will hold an IMU, microcontroller, and wireless (or wired, tbd) communication. The knee sensor will focus on lower-body motion and take measures related to shot success, such as the timing of the jump and how much the knee flexes to determine the dip. The wrist sensor will look at the upper-body mechanics that finish out the shot, like the angular velocity and release timing of the wrist, along with how high it sits for the follow-through. These 2 data nodes will be synchronized in our system, extracted for timing measures like jump-to-release, and then processed for evaluation and feedback. This will focus on the repeatability and timing of the user’s body mechanics, providing user-oriented assistance that adjusts as the user progresses.

Solution Components: PCB, Li-Po Battery Pack, USB-C Charging Port, SPI/I2C Communication Bus, IMU Sensors (3-axis accelerometer + 3-axis gyroscope), FPGA*, PCB Chest Harness.

*FPGA may not be needed if we decide to use specific types of IMU sensors with FSYNC/SYNC capability to trigger sampling on the same external edge.

Subsystem 1: IMU Sensor on the Knee
This IMU sensor will be worn on the user’s shooting leg, right above the knee, along the side of the femur. The important metrics to grab from here will be the displacement and angular rotation with respect to the zero-calibration (standing straight up). This IMU will be synchronized with the other IMU sensor on the wrist, being sampled under a SPI/I2C communication bus that will carry data from the sensors to the PCB, which will then be processed and sent to the FPGA via USB/UART.

Subsystem 2: IMU Sensor on the Wrist

This IMU sensor will be positioned on the back of the user's thumb to accurately record the motion of the wrist. The key metrics we are looking for are angular velocity, physical displacement, and the timing between each of the 3 phases between the movements. The angular velocity can be determined by seeing the physical start and end positions of the wrist motion during phase 3 of the shot, divided by the elapsed time. The 3 phases of the shot are
Raising the ball (Shoulder Movement)
Pushing the ball forward (Chest Movement + Elbow Extension)
Releasing the ball (Wrist Movement)

Subsystem 3: PCB

The PCB is the centerpiece of all external component communications. The 2 IMU sensors will communicate with the MCU on the PCB via I2C/SPI. The MCU will then send the data to the computer over USB/UART. The data will be interpreted in Python using closed-loop feedback communications with the user.

Criterion For Success:
Wrist and knee IMU sensors accurately record motion data
Communication buses accurately read the data off the IMU sensors with low latency and send it to the MCU on the PCB
The MCU can communicate with the computer via USB/UART
We can see the telemetry data, observe significant changes (edge detection/triggers) in behavior via measurements, and quantify these changes in order to provide feedback to the user based on their input.

Electronic Mouse (Cat Toy)

Jack Casey, Chuangy Zhang, Yingyu Zhang

Electronic Mouse (Cat Toy)

Featured Project

# Electronic Mouse (Cat Toy)

# Team Members:

- Yingyu Zhang (yzhan290)

- Chuangy Zhang (czhan30)

- Jack (John) Casey (jpcasey2)

# Problem Components:

Keeping up with the high energy drive of some cats can often be overwhelming for owners who often choose these pets because of their low maintenance compared to other animals. There is an increasing number of cats being used for service and emotional support animals, and with this, there is a need for an interactive cat toy with greater accessibility.

1. Get cats the enrichment they need

1. Get cats to chase the “mouse” around

1. Get cats fascinated by the “mouse”

1. Keep cats busy

1. Fulfill the need for cats’ hunting behaviors

1. Interactive fun between the cat and cat owner

1. Solve the shortcomings of electronic-remote-control-mouses that are out in the market

## Comparison with existing products

- Hexbug Mouse Robotic Cat Toy: Battery endurance is very low; For hard floors only

- GiGwi Interactive Cat Toy Mouse: Does not work on the carpet; Not sensitive to cat touch; Battery endurance is very low; Can't control remotely

# Solution

A remote-controlled cat toy is a solution that allows more cat owners to get interactive playtime with their pets. With our design, there will be no need to get low to the ground to adjust it often as it will go over most floor surfaces and in any direction with help from a strong motor and servos that won’t break from wall or cat impact. To prevent damage to household objects it will have IR sensors and accelerometers for use in self-driving modes. The toy will be run and powered by a Bluetooth microcontroller and a strong rechargeable battery to ensure playtime for hours.

## Subsystem 1 - Infrared(IR) Sensors & Accelerometer sensor

- IR sensors work with radar technology and they both emit and receive Infrared radiation. This kind of sensor has been used widely to detect nearby objects. We will use the IR sensors to detect if the mouse is surrounded by any obstacles.

- An accelerometer sensor measures the acceleration of any object in its rest frame. This kind of sensor has been used widely to capture the intensity of physical activities. We will use this sensor to detect if cats are playing with the mouse.

## Subsystem 2 - Microcontroller(ESP32)

- ESP32 is a dual-core microcontroller with integrated Wi-Fi and Bluetooth. This MCU has 520 KB of SRAM, 34 programmable GPIOs, 802.11 Wi-Fi, Bluetooth v4.2, and much more. This powerful microcontroller enables us to develop more powerful software and hardware and provides a lot of flexibility compared to ATMegaxxx.

Components(TBD):

- Product: [https://www.digikey.com/en/products/detail/espressif-systems/ESP32-WROOM-32/8544298](url)

- Datasheet: [http://esp32.net](url)

## Subsystem 3 - App

- We will develop an App that can remotely control the mouse.

1. Control the mouse to either move forward, backward, left, or right.

1. Turn on / off / flashing the LED eyes of the mouse

1. keep the cat owner informed about the battery level of the mouse

1. Change “modes”: (a). keep running randomly without stopping; (b). the cat activates the mouse; (c). runs in cycles(runs, stops, runs, stops…) intermittently (mouse hesitates to get cat’s curiosity up); (d). Turn OFF (completely)

## Subsystem 4 - Motors and Servo

- To enable maneuverability in all directions, we are planning to use 1 servo and 2 motors to drive the robotic mouse. The servo is used to control the direction of the mouse. Wheels will be directly mounted onto motors via hubs.

Components(TBD):

- Metal Gear Motors: [https://www.adafruit.com/product/3802](url)

- L9110H H-Bridge Motor Driver: [https://www.adafruit.com/product/4489](url)

## Subsystem 5 - Power Management

- We are planning to use a high capacity (5 Ah - 10 Ah), 3.7 volts lithium polymer battery to enable the long-last usage of the robotic mouse. Also, we are using the USB lithium polymer ion charging circuit to charge the battery.

Components(TBD):

- Lithium Polymer Ion Battery: [https://www.adafruit.com/product/5035](url)

- USB Lithium Polymer Ion Charger: [https://www.adafruit.com/product/259](url)

# Criterion for Success

1. Can go on tile, wood, AND carpet and alternate

1. Has a charge that lasts more than 10 min

1. Is maneuverable in all directions(not just forward and backward)

1. Can be controlled via remote (App)

1. Has a “cat-attractor”(feathers, string, ribbon, inner catnip, etc.) either attached to it or drags it behind (attractive appearance for cats)

1. Retains signal for at least 15 ft away

1. Eyes flash

1. Goes dormant when caught/touched by the cats (or when it bumps into something), reactivates (and changes direction) after a certain amount of time

1. all the “modes” worked as intended

Project Videos