Boulder-IMU
This project is being reworked at the moment. Progress is slowed down because 1. I’m still mostly in the research phase, and 2. the IMU I received is not the one I expected :/ I’m working on it in my free time whenever I’m not buried in studies or work.
What is Boulder-IMU?
Boulder-IMU is an experimental project. I aim to develop a tracking system for 3D movement, particularly bouldering, using conventional IMUs and video data. The project consists of two distinct parts:
-
A User interface which allows one to visualize the recorded data and gather various metrics for recorded climbs.
-
Wearable IMU’s, which serve to record or broadcast movement data with 9-DoF.
and a ton of code which glues everything together :D

Current State
As of now, a UI is implemented in Odin using Raylib, a simple graphics library built on top of OpenGL.
The demo above shows the basic functionality already implemented in the Odin based version:
- 3D rendering
- point selection
- file imports
So far, the focus has primarily been on IMU-based tracking. However, pure IMU-based tracking runs into the well-known drifting problem when trying to reconstruct 3D trajectories from acceleration data.
Future changes
The project is currently being redesigned with a hybrid tracking approach in mind. Instead of relying solely on IMUs, I plan to combine:
- camera-based pose estimation
- wearable 9-DoF IMUs
- a state-space model for the underlying dynamical system and sensor fusion
The idea is that the vision system provides global body position data, while the IMUs contribute motion information. This could/should reduce drift and allow more stable 3D trajectory reconstruction. On the implementation side, I also plan to move the project fully to Python, integrating:
- pose estimation
- 3D trajectory rendering
- plotting
- custom IMU firmware and streaming
using DearPyGui, Raylib Python and Google’s Mediapipe. The long-term goal is to support:
- live tracking in addition to pre-recorded file imports
- drift-corrected 3D trajectory reconstruction and
- comparison between different climbs and climbers