Degree Name

BS in Electrical Engineering


Electrical Engineering Department


Tina Smilkstein


The goal of this project is to design and implement weights which can record and analyze work out patterns. Motivation for this project stems from the high cost of personal training. The hope is that this device will provide many of the benefits a user receives from personal training at only a fraction of the cost. The Smart Weight is designed with an on-board Inertial Measurement Unit providing acceleration, gyroscope, and magnetometer data. A microcontroller records and analyzes changes in motion, feeding this data into Multiplicative Recurrent Neural Network (MRNN) for exercise classification. A Raspberry Pi was chosen as the microcontroller, along with a Polulu Minimu-9 V2 for the IMU. These were attached to a five pound free-weight, where the motion of an exercise could be accurately recorded. The IMU communicates with the Raspberry Pi via the i2c protocol, and provides roughly 50 data points per second. Code was written to preprocess and feed data from the IMU into the MRNN, where the type of exercise can then be determined. The MRNN was trained on graphics processing units (GPUs) with the help of Ersatz Labs, a company that specializes in training Neural Networks. The prototype Smart Weight is able to classify one exercise (the bicep curl) with an accuracy of over 90%, but many more exercises will be added in the future.