Disc Golf RPM Tracker

by clerval in Outside > Sports

13 Views, 0 Favorites, 0 Comments

Disc Golf RPM Tracker

IMG_5409.jpg

One of the most important metrics when it comes to throwing a disc is how fast it spins at release. This device attaches to the bottom of a disc and connects to the Adafruit bluetooth app to display the RPM and release angle of the throw.

Supplies

Circuit Playgroud Bluefruit

Adafruit LSM6DSOX + LIS3MDL

STEMMA QT Cable

Power Supply

Casing

Disc/Frisbee

Tape

Casing

FT8EDW9MACISBVE.jpg

For this prototype, I laser cut a birch casing to hold all of the components. It consists of layered rings with a cap piece on top that is taped down. This is the biggest area of improvement as there is a lot of empty space inside the current casing. Using a 3D printed design could allow it to be more compact and lighter. To hold all components inside of the casing, there is double sided tape to hold the gyroscope still.

Wiring

IMG_5408.jpg

The wiring for this is very simple. The STEMMA QT cable connects from the gyroscope into the Ground, 3.3V, SDA, and SCL ports on the Bluefruit. I cut the cables to be and screwed them into the ports to keep the design as compact as possible. The battery is plugged into the Bluefruit's power port.

Code

IMG_5407.PNG

The code starts by installing the time, math, board, busio libraries as well as libraries needed for the gyroscope and bluetooth app. It then sets up the gyroscope sensor and bluetooth in the device. Once the device connects to your device through the Bluefruit Connect App, it starts collecting gyroscope and angle data from the disc. It creates a function that uses the Pythagorean theorem to turn the raw x, y, and z data into one comprehensive number for both the angle and spin. To start the program, enter "1" into the UArt terminal. The program then starts a 3 second timer over which it starts to track the position of the disc, giving you three seconds to throw the disc. It keeps the highest measured RPM and the angle at that point. After the 3 seconds are over, it will print the pair that it has stored from that throw.

Downloads