Touchscreen Brewer

A great cuppa Joe

ICS helped restaurant-equipment firm design a better interface for its coffee brewers.

Creating a State-of-the-Art Coffee Dispenser

A global beverage-equipment manufacturer wanted to modernize the touchscreen user interfaces (UI) on its popular coffee dispensers, used in hotel lobbies, self-serve restaurants, company break rooms and vending machines worldwide. And they wanted to do the development work in Qt. But, their internal engineering team had relatively little Qt experience and needed guidance on architecture and Qt best practices to develop a robust and sustainable platform. So they turned to Integrated Computer Solutions, Inc. (ICS) for assistance.


The beverage equipment manufacturer faced three key challenges: creating three different UIs for coffee dispensers, which first required redesigning the framework foundation; internationalizing the coffee-dispenser UIs to support Chinese, English, French, German and Japanese; and evolving the existing design to leverage Qt best practices.


ICS helped the internal development team effectively re-architect to build more intuitive and compelling UIs. ICS ported screen-management code originally written in QML to a new view manager framework in C++, which provided a higher-quality foundation layer on which to build custom UIs. And we completely reworked the existing primary coffee UI to use a "carousel" interface, which enabled thirsty users to quickly swipe to choose their beverage selection. We also developed a new UI that included several QML widgets animating simultaneously, as well as multiple "dispense videos" playing in sequence.

To address the concerns with internationalization, ICS added a localization framework that allows the manufacturer to easily add any language it might need as its business expands. At the same time, ICS redesigned the backend data layer to accommodate important additional features, such as new hardware models, complex product filtering and multiple levels of security.


Using Qt 5, QML, QtLinguist and C++, ICS created appealing and simple-to-use UIs, as well as accelerated development time, trimmed costs and enhanced ease of testing by implementing QML Quick Reload on Linux desktop. That meant developers could reload code without restarting the application — an important time saver. It also allowed them to switch between the dispensers’ 10" landscape and 17" portrait display modes to quickly verify that any screen changes looked good in both scenarios, which significantly trimmed time spent testing. Throughout the entire project, ICS worked in tandem with the client’s own engineers to nurture their blossoming Qt development skills and showcase best practices in real-world situations.