Big Black Friday / Cyber Monday Super-Deal Shop Early

Winter Webinars 2024 with Ian Barker Save Your Seat

RAD Studio 12.2 Now Available! 了解更多信息

Ready to take your apps to the next level? Upgrade to Enterprise today. 联系销售人员

See What's New in RAD Studio 12.2 Athens Watch the Replay

Delphi 12 and C++Builder 12 Community Editions Released! 了解更多信息

InterBase 2020 Update 6, released! 了解更多信息

Discover The Getit Page

Deep discounts available on InterBase 2020 for OEM or VARs – 联系销售人员

Renew your Update Subscription license now Read more

Indoor Training UG

Delphi and FireMonkey Success Story
Indoor Training UG

Indoor Training UG

Applications

icTrainer App
Indoor Cycling Software

Formats Tools Used
  • DelphiDelphi
  • FireMonkeyFireMonkey
Challenges

Nowadays, many cyclists and triathletes rely on interactive roller trainers, into which their own bikes are clamped or partially converted and directly connected. The company Indoor Training UG offers a subscription-based software developed in Delphi and FireMonkey at a fraction of the cost of comparable offers on the market.

Results

The icTrainer app is a lightweight application for roller trainers and other fitness equipment with customizable options and the connection to countless training devices. It supports heart rate monitors, cadence monitors or speed monitors via Bluetooth BLE or ANT+. The multi-platform app runs on Windows PCs, macOS computers, iOS tablets/iPads and Android tablets.

Indoor Cycling Software for Roller Trainers

From a small idea that grew during his work break during the coronavirus pandemic, Philipp Hofmann founded the startup Indoor Training UG and developed with Delphi an indoor cycling app with countless training options. The company has been growing ever since and offers the software on a subscription basis, although the costs are a fraction of comparable offers on the market.

Challenge

Parallel to normal cycling, indoor bike training offers a complement, especially with the advantages of being able to train all year round and simulate routes and riding modes that you may not have in your immediate environment. The most common is the use of classic spinning bikes or ergometers, both for the gym and for use at home.

Increasingly, however, cyclists and triathletes are now turning to interactive roller trainers into which their own bikes are clamped or partially converted and directly connected. The prices of these so-called roller trainers vary between $350 and $1,100 (or up to $3,000 for complete smart bikes that even perfectly simulate the climbing angle of a course).

The roller trainer can be controlled with software and simulates speed, rolling resistance, and incline. Established systems often offer very elaborate virtual worlds and visual track layouts. In addition, these are only available online and are often proprietary, so you can't add your own content.

With the icTrainer app, a lightweight alternative was created using the Delphi development environment and the FireMonkey framework, offering countless connectivity options and customizable options.


The Application

Calling the icTrainer app an interface monster is not an exaggeration, because a significant part of the application developed in Delphi and FireMonkey relates to the connection of the countless training devices via Bluetooth BLE. These are integrated partly via standard interfaces and partly via proprietary extensions.

Using the example of a roller trainer, these are the parameters:

  • Target resistance in watts (writing)
  • Gradient simulation (writing)
  • Power meter (reading)
  • Cadence meter (reading)
  • Heart rate monitor (reading)


In fact, the integration of ANT+, a power-saving connection interface originally developed by Garmin, caused some headaches during the development. In order to address heart rate monitors with this technology, C++ SDKs had to be compiled and integrated, some devices had to be additionally extended with suitable ANT+ USB sticks, and these also had to be adapted for Windows and macOS.


FireMonkey is a powerful tool for porting 90% of the functionality to all platforms very easily. However, the last 10% should not be underestimated, where it is mainly about the authorization concepts of macOS, iOS and Android and where there is also a lot of movement on the part of the manufacturers.

Philipp Hofmann, CEO, Indoor Training UG


The integrated browsers for any websites are very popular in the app during training. Thus, music, cycling videos, and Netflix and other services can be streamed in parallel during training. Currently, there are small restrictions because not all platforms support video streaming services in the embedded browser, as the table shows.



Windows macOS iOS Android FireOS
YouTube
Netflix
AmazonPrime


Users like to use the playback of a real bike video during training. For this, the playback speed must be dynamically adapted to the training. Currently, the development team has integrated the FFMPEG player from Flash AV Software for FireMonkey and uses it to control the appropriate streams. Meanwhile, users can select from a large list of cycling track videos in the app that ideally support the training. These are usually recorded with a GoPro camera and can be selected individually.



The interface of the icTrainer app can be individually configured in many ways. The training values can be displayed or changed on the fly, and the browser for the multimedia stream can be displayed or, if desired, outsourced to a separate monitor.


icTraner Bike Tour

The icTrainer App Home Page



In addition to the training application, the team used Delphi to develop a smartphone remote control for iOS and Android so users can control the essential functions even when the application is running somewhat remotely on a large monitor. Here, too, there were technical hurdles to overcome, which were solved with IP-based tethering.

Conclusion

The icTrainer application is a successful, modern application that perfectly demonstrates the advantages of the multiplatform development of Delphi and the possibilities of the FireMonkey framework, as well as the integration of external components. The extensive connection to various interfaces makes the icTrainer application phenomenal from a software engineering point of view and shows how the flexible use of APIs can work within a world of heterogeneous hardware.

Of course, according to Indoor Training UG, the development of the software is far from over. Extensions are still planned, including the possibility to set up a video chat and to save the results in (binary) FIT format, as this format has a higher level of detail (e.g., left/right distribution of power).

In general, the Indoor Cycling app has very low hardware requirements and communicates with all current roller trainers, heart rate monitors, cadence monitors, speed meters, external power meters, as well as other fitness equipment like kayak, rowing, and swimming ergometers and, soon, also treadmills.

The app runs on Windows PCs, macOS computers, iOS tablets/iPads, and Android tablets. Unfortunately, a Delphi BluetoothLE implementation is still missing for Linux support.


Of course, we have competitors who are worth billions. But many customers love our app because we deliberately take a different approach and avoid gamification and virtual worlds, instead focusing on flexibility during training, music, and real cycling videos.

Philipp Hofmann, CEO, Indoor Training UG



Further information, tutorials, FAQs, and prices for icTrainer are available at https://ictrainer.de or directly at 该邮件地址已受到反垃圾邮件插件保护。要显示它需要在浏览器中启用 JavaScript。.

YouTube video about the development of the icTrainer app:
https://youtu.be/KaOYDrY5Tf4

YouTube videos for icTrainer app with tutorials and help:
https://www.youtube.com/channel/UCA8JtIJrsuwIuYdXJupFuHQ/videos