Golf training app powered by IoT CTRL Golf
Have you ever tried to learn how to play golf with the help of a mobile app?

About CTRL Golf
CTRL Golf aims to change things and promote golf by offering a unique way of learning and improving golf skills. Our client's vision was creating a virtual personal trainer who adapts the training plan and helps to improve the skill individually for each user. Applying unique algorithms, CTRL Golf tracks each training session progress, analyzes the playing style and gives personal recommendations on how to improve the skill. The app aims to inspire users to improve their skills even if the first result is not comforting.
Our Expertise
Software Development
Scope
- Discovery phase
- App development
- QA
Vertical
Health
Key results
- NPS score 10/10
- User-friendly application
See what Altamira can do for you
01
The Challenge
If you tried to learn how to play golf, you would probably find thousands of mobile applications that do almost the same: measure your results without providing any feedback.
All of them miss several crucial things:
- They do not tell you how to improve
- They do not track your personal progress
- They benchmark you against top players versus your own result
CTRL Golf is an IoT application that connects to the sensors (developed by the CTRL Golf team) attached to the golf sleeve, which catch your wrist and shoulder movements during the swing.
CTRL Golf Team already had an iOS version of the application, which made it easier for our team to review and learn the user flows within the system and copy them into the Android application.
Some of the initial end users’ feedback was also provided, thanks to which all positive and negative experiences of customers became possible for consideration in the new iteration of application functionality and design.
02
The Solution
Regular meetings enabled development and design team to identify key goals for the project.
To improve UX/UI of the application
We created an interface that will help users to connect their sensors easily and enjoy the training. Golfers often play in the bright sun, that’s why our team developed an interface that would be easy to read in any condition.
To provide a reliable connection between sensors and the application
We ensured that connection between the app sensors worked well in any case, especially when the internet connection was poor.
To rethink features
We standardised and unified user flows, removing unused features and extending the existing ones with improvements that users requested.
Use Cases
Along with the mobile app, CTRL Golf provides the hardware package, which consists of:
A glove to attach sensors to. Sensors are connected
to the user’s smartphone to record operational data.
Bluetooth sensors – the first one is on the users` shoulder, and the second one is on the wrist

CTRL Golf sent the prototypes of sensors to our developers, using which we could execute development and testing. However, since this was only a prototype and we had only one package of sensors, the team had to transfer the device from a developer to a tester to execute the works, which led to the timeline extension.
Sensor education on personal swings
Since the devices were prototypes it was hard to execute the debugging process, the defect source could be both device and application.This was resolved later on by coordination with the Ctrl Golf team that were extremely cooperative to provide the testing on their sensors in such occasions
Training process
Based on the training statistics, the app generates detailed and highly visualized reports on the training results and general player progress. Statistics are available for all time, particular training or even just a session within a training and build data for:
- Top Feedback
- Feedback Consistency per Club, Swing, Downswing, Backswing, Tempo
Personal pocket golf trainer
In order to minimize the interaction between a golf player and smartphone, the application has two important features
- Voice Assistant that reads the feedback of each swing
- Disable the screen auto-lock to keep screen active for a golfer
During the training session of playing golf, it is convenient to check each swing result by looking at the screen of a smartphone.

Strive for excellence with Altamira
Join our community of successful customers, whom we helped to build and grow their businesses.
Design
One of the main requirements was a fundamental improvement in UI and UX. It had to be convenient, inspiring, and engaging.
- Initially, the user’s feedback was difficult to read as it looked like long charts. Instead, we used the ring concept to structure feedback and make it more readable
- Showing the short info in rings, and extended feedback and tips in sections below
- Marking parameters like backswing, downswing, and tempo by colors in rings and expanded info; thus users see what parameter responds to a particular color, and spend less time analyzing the feedback
In the app, we used the same colors as on sensors to make the use more convenient and to show that the sensors and the app are successfully connected.
We also added the calibration and scanning animations to illustrate the process of sensors and app interaction.
All illustrations and icons used in the application were drawn manually to make the app unique and to ensure that each element makes a point. Thanks to close knit work with the client’s team and the ability to get regular feedback from the real golf players during the app concept and visual elements creation, we can be sure that each app element is intuitively clear for the end-users.
To start training, users first need to set up a swing they want to practice. This is a process of three steps:
- Setting up a swing name
- Club type selection
- Ball flight selection
In order not to overload the screen with all this information, we created a wizard that is not only easy-to-navigate and helps to get more familiar with golf terminology.
Previously, game statistics were just long charts and looked unclear for users. We restructured the statistics screen into 3 tabs:
- Lifetime
- Training
- Session
Users can choose any training or a session within the training and review how they are progressing. Initially, they see the overall training rate and feedback which was added to keep a high level of users’ motivation.
Then goes more tabs where they can find average results as well as more detailed feedback displayed in a form of scalable charts and organized into tabs to avoid cluttered screens.
Technologies
The Android app is written with Kotlin and interacts with the Bluetooth sensors developed by our client. Interaction with Bluetooth devices is performed with the help of the RxAndroidBle library.
The project is based on Firebase – a cloud solution.
One of the key features of the application is advanced statistics organized into different types of charts built up with the help of MPAndroidChart library.
GoogleAuth was used to also allow the users’ sign in with Google accounts.

03
The Result
Features
- Sign In, Sign Up, User Accounts, Sing In with Google
- Sensors Connect/Disconnect, Forget the device
- Auto-lock Enable/Disable
- Training & Swing Management
- Statistics visualized as graphs and charts
- Sound Enable/Disable
At NPS questionnaire, the client evaluated our company at 10 out of 10.
It has been an absolute pleasure working with the team at Altamira. We have never been blocked or impeded by their work. They operate efficiently and quickly to get the job done.