Smart Kettlebell with App

Project attribution: Project done in collaboration with Jop Geraets and Koen Giesen.
Source: The project’s source code is available here.
Short description: Smart kettlebell with supporting Android app that gamifies exercising and points out exercising mistakes.
Technologies: Java, Android, Arduino, Firebase, MediaPipe.
What I did: the Android app with all its features.

We went from ideation to prototyping and then to marketing of a smart kettlebell accompanied by an Android app. We called the project Luditech. Luditech would be a company of home fitness equipment whose aim is to create a smart kettlebell that gamifies fitness as their first product. With this device one can play videogames using the kettlebell as the controller and their phone as a screen.

The Luditech app was written in Java for Android. It features authentication support, a leaderboard where users can see the highest score, BLE connection with the kettlebell, pose detection so they can adjust their pose. It uses Firebase for the database and authentication aspects, and Google’s MediaPipe library for the pose detection algorithms.

Image 1 Image 2
The kettlebell from the front and the circuit inside the kettlebell.
Image 1 Image 2 Image 3 Image 1 Image 2
Luditech app's pages. From left to right: Registration page, Login page, Pose detection page, BLE connection page, Leaderboard page.
Image 1 Image 2 Image 3
Posture detection trials.
Scores of users stored in Firebase.
Account database in Firebase.
Architecture of the system.
Datastream through the system.
Sequence diagram of the sytem.