Introduction
Stellar user experience in modern products is paramount in a competitive market and is crucial to overall product success. In today’s landscape, the user expects products to deliver interfaces on par with Android and iOS. This requirement can feel next to impossible when considering the BOM cost of a product. Qt and QML solve this problem by enabling rich and responsive user interfaces for various processors, including MCUs. They provide GUI libraries that are highly efficient and offer access to user interfaces on par with smartphones.
The Challenge
When a product enters the design phase, the harsh reality of hardware and software costs often erodes the initially planned feature list, and the user interface is usually called to this proverbial chopping block.
A user interface can appear as an exponentially growing pyramid of costs. At the top is the price of a screen, with a capacitive touchscreen, if needed, and a processor with the power to drive all those pixels. A deluge of software costs follows, from the low-level drivers and the OS support to implementing the design, handling translations, and supporting different product variants. Finally, many possible solutions exist, as they are often customary in software problems. Exploring these solutions is costly regarding person hours but risky since choosing a solution has long-term implications that can become expensive to change.
From Design to Implementation
Implementing a powerful user interface on a new embedded product has been tackled multiple times at Orthogone.
The best-case scenario for a product is still in the design phase. Choosing the proper hardware and software to develop a product with a user interface is an iterative process based on the following:
- Feature set
- BOM cost
- Product variants
- Predecessors to this product
- Technology preferences
- Multiple language support
In many projects where Orthogone implemented a user interface from the ground up, the system design process would go through a variant of the following design process.
From a rich graphical user interface standpoint, helpful information comes from identifying the most constrained product variant. The reasoning is that using multiple technologies to implement the desired user interface on different product variants is rarely cost-effective. The feature set can take some time to nail down, but often, a rough version will paint a good picture of the class of processor required. This feature set and the targeted BOM cost further narrow this selection. In challenging BOM cost situations, Qt allows even the use of low-cost ARM Cortex-M4 processors. Orthogone also encountered situations where more powerful Cortex-A7-powered chips were used, such as i.MX-6, and needed careful implementation consideration. Qt remains a contender when disc space is low, RAM is limited, or CPU usage is contended.
Once Qt is chosen for a project, Orthogone can begin implementation without needing access to the hardware. Qt offers cross-platform support, which means the initial UI can run on a desktop computer or a development kit. This allows our partners to fast-track other parts of their development by providing early simulators to product owners and backend developers. With experience from multiple projects deployed in the field, Orthogone can further accelerate development by ensuring the application is compatible with features such as internationalization, white labeling, and custom themes.
Final Rendering
Orthogone always strives to find the right tool for the right job. Embedded products with rich graphical user interfaces can seem like an impossible task, reserved only for very high-end products. Orthogone has the experience to identify when Qt can overcome these limits and deliver a product with a head-turning user experience.
Contact Orthogone to explore how our expertise can elevate your project.