Enabling Connectivity in Your Embedded Product

Building embedded products today, regardless of the targeted market, not only involves creating a nice, user-friendly interface, but often requires interoperability and connectivity. Mixing web technologies with native content has come a long way and can now easily produce attractive and powerful applications.

When bringing connectivity to embedded products, some existing web technologies can be paired with a framework, such as Qt, to create best-in-class applications.

HTML5 technology is now standardized, well adapted for touch-screen navigation, and mature enough to run on embedded devices. Qt offers support for this through its WebEngine web content rendering engine based on Chromium. Mixed content is also possible, allowing users to write a typical application using QML and have dedicated HTML5 content as part of the solution.

Mobile and remote access

If there is a requirement to remotely access a device while providing the same or at least a subset of the embedded user interface, this is possible using HTML5 content within a Qt application. The result is that a team can develop and design an interface once and have it available on a myriad of devices.

Adeneo has used the i.MX6 SoloX to demonstrate this concept: an accelerometer sensor is sampled and an HTML5 graph displaying the different acceleration components is rendered within a Qt application. That same graph is also advertised remotely, accessible from any browser, allowing real-time view via tablets, mobile phones, regular computers or even other embedded devices.

https://www.youtube.com/watch?v=JeUQyGG2mOY

Taking advantage of node.js

Node.js is a JavaScript runtime built on Chrome's V8 JavaScript and, when paired with other frameworks such as MongoDB, Express.js, and Angular.js, it provides a powerful, lightweight, and proven web stack. If you are interested in linking your embedded product with the Cloud, node.js is a popular cross-platform choice and is backed by services such as Microsoft Azure and Amazon AWS.

Qt can also be combined with 3D rendering techniques using technologies such as OpenGLES. A favorite example of mine is the Heart Rate Monitor demonstration Adeneo developed on the Renesas RZ/G1E Starter Kit, showing a real-time 3D model of a heart rendered with advanced shaders on the platform using Qt 5.4. This application works jointly with a node.js backend, and displays the heart rate pulse via HTML5 to clients connected to the device remotely through Web Sockets. This illustrates how Qt can easily be used in conjunction with such technologies, helping to create an all-in-one connected solution.

https://www.youtube.com/watch?v=aXKcE0HbQoI

The latest flavors of Qt provide an optimized web engine and web view tandem. This provides developers with a cross-platform, all-in-one solution for building advanced web applications with minimal risk and development time. Producing hybrid applications is made possible through integration between these web-oriented components and the QML language, which can significantly reduce overall project costs as well as simplifying development.

Learn more about Adeneo's Qt expertise here: http://www.adeneo-embedded.com/OS-Technologies/Qt


Blog Topics:

Comments