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? We delivered a golf training app that helps players improve their unique golf style. An opportunity for a deep configuration of the swing goal, great visual support, advanced algorithms, and effective feedback makes this project a revolution for golf!

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 to create a virtual personal trainer who adapted the training plan and helped each user improve the skill individually. Applying unique algorithms, CTRL Golf tracks each training session's progress, analyses the playing style, and gives personal recommendations. The app aims to inspire users even if the first result is not comforting.

Our Expertise

Software Development


Discovery phase

App development

Quality Assurance



Key results

  • NPS score 10/10
  • User-friendly application

See what Altamira can do for you


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 progress
  • They benchmark you against top players versus your result

CTRL Golf is an IoT application that connects to the sensors (developed by the CTRL Golf team) attached to the golf sleeve, which catches 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.


The Solution

Regular meetings enabled the development and design team to identify key goals for the project.

To improve the UX/UI of the application

We created an interface to help users connect their sensors easily and enjoy the training. Golfers often play in the bright sun, so 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 the connection between the app sensors worked well, 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 that are connected to the user’s smartphone to record operational data.
  • Bluetooth sensors – the first one is on the user’s 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 work, 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 the device and the application. This was resolved later on by coordination with the Ctrl Golf team, that were highly cooperative in providing the testing on their sensors on such occasions.

Training process

Based on the training statistics, the app generates detailed and highly visualised reports on the training results and general player progress. Statistics are available for all times, particular training, or even just a session within training and build data for:

  • Top Feedback
  • Feedback Consistency per Club, Swing, Downswing, Backswing, Tempo

Personal pocket golf trainer

In order to minimise the interaction between a golf player and a smartphone, the application has two important features, namely:

  • Voice Assistant that reads the feedback of each swing
  • The screen auto-lock to keep the screen active for a golfer

During the training session 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.


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 colours in rings and expanded info; thus, users see what parameter responds to a particular colour and spend less time analysing the feedback

In the app, we used the same colours as on the 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 sensors and app interaction process.

All illustrations and icons used in the application were drawn manually to make the app unique and ensure each element makes a point. Thanks to close-knit work with the client’s team and the ability to get regular feedback from 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
To not overload the screen with all this information, we created a wizard that is easy to navigate and helps to get more familiar with golf terminology.

Previously, game statistics were just long charts and needed to be clearer for users. We restructured the statistics screen into 3 tabs:

  • Lifetime
  • Training
  • Session

Users can choose any training or 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 user motivation.

There are more tabs where they can find average results and more detailed feedback displayed in scalable charts and organised into tabs to avoid cluttered screens.

To not overload the screen with all this information, we created a wizard that is easy to navigate and helps to get more familiar with golf terminology.


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 application’s key features is advanced statistics organised into different types of charts built up with the help of the MPAndroidChart library.

GoogleAuth was also used to allow the users to sign in with Google accounts.


The Result


The client evaluated our company on the NPS questionnaire 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.

Case Studies

HealthcareWeb Development
Mobile App DevelopmentTravel