{"id":1868,"date":"2017-10-20T21:00:18","date_gmt":"2017-10-20T15:30:18","guid":{"rendered":"http:\/\/localhost:8081\/system-on-module-som\/?p=1868"},"modified":"2025-03-26T13:31:34","modified_gmt":"2025-03-26T08:01:34","slug":"qt-beyond-ux-use-esomimx6-rdk-ankaa","status":"publish","type":"post","link":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/qt-beyond-ux-use-esomimx6-rdk-ankaa\/","title":{"rendered":"Qt Beyond UX &#8211; Use eSOMiMX6 RDK Ankaa"},"content":{"rendered":"<p class=\"western\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">One thing I am tired of hearing about, is that people think Qt is only for developing rich GUI applications.<\/span><\/span><\/span><\/p>\n<div style=\"width: 100%; float: left;\">\n<!--\n\n\n<div style=\"width: 50%; float: left;\">--><\/p>\n<p class=\"western\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">If you think Qt is only about building a UI, it\u2019s not \u2014 there are plenty of Qt libraries for internationalization, strings, threads, XML, and JSON parsing, databases, sockets, Bluetooth, sensors, NFC, event management, and more. <\/span><\/span><\/span><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">It is even possible to develop command-line tools and consoles for servers.<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">Lets consider a use case to prove that Qt is beyond UX. Suppose you would like to build a bluetooth connectivity module o<\/span><\/span><\/span><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">n your embedded product <\/span><\/span><\/span><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">which can scan and connect to other bluetooth devices. W<\/span><\/span><\/span><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">hat does Qt offer? Lets see the details below. <\/span><\/span><\/span><\/p>\n<p><!--<\/div>\n\n\n\n\n<div style=\"width: 50%; float: right;\">\n\n\n<table style=\"width: 400px; margin: 0px auto; border: 1px solid #FFBC7D;\" align=\"center\">\n\n\n<tbody>\n\n\n<tr style=\"border: 1px solid #FFBC7D;\">\n\n\n<td align=\"center\" width=\"24%\"><img decoding=\"async\" loading=\"lazy\" style=\"vertical-align: middle;\" src=\"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-content\/uploads\/2018\/01\/QT-Series.jpg\" alt=\"Adobe Spark\" width=\"100\" height=\"125\" \/><\/td>\n\n\n\n\n<td width=\"1%\"><\/td>\n\n\n\n\n<td style=\"text-align: center; background: #FF7D01; margin: 0px auto; border-spacing: 0px; color: #ffffff; font-size: 18px;\" align=\"center\" width=\"75%\"><strong>Try Bluetooth Scanning Qt Application On eSOMiMX6<\/strong><\/td>\n\n\n<\/tr>\n\n\n\n\n<tr style=\"width: 100%; height: 25px; text-align: left; background: #FFBC7D; margin: 0px auto; border-spacing: 0px; color: #000000; font-size: 15px;\">\n\n\n<td colspan=\"3\" align=\"left\"><a href=\"https:\/\/developer.e-consystems.com\/Downloads?key=eHXS6SCPs08yz6FWgn2e22vNnDqXmUZLghhHOqh3DfwQO6V41%2FXOD%2FdtS5N0DrvNNWdZmFc2fjtRGxNLjlbOTLCwE5BC7rtPsZnIakApMzLh3ucPRMNmpc2Mz%2FFbGVzJbmKM7cs0M4s9bNuynaxYIIW96HbgXyP5HYbmHJgCJUd6Sd1aooKKCTmTVwss6z3BRbcjSDvD%2Bm%2FtaGrQTbODlpSvXhkVvHrdnF93m50aXjRMd%2BFPvn3V0MwGO9bEtuDBhOf8FsHrplrs2dmABhAiG4MWW7E5qsR8ZW5dH8Jto7EWUFewvQqDOBTk5Sd2KQe%2B\" target=\"_blank\" rel=\"noopener noreferrer\"> Qt-QML-Setup-Qt-Creator-Steps Application Guide<\/a><\/td>\n\n\n<\/tr>\n\n\n\n\n<tr style=\"width: 100%; height: 25px; text-align: left; background: #FFFFFF; margin: 0px auto; border-spacing: 0px; color: #000000; font-size: 15px;\">\n\n\n<td colspan=\"3\" align=\"left\"><a href=\"https:\/\/developer.e-consystems.com\/Downloads?key=eHXS6SCPs08yz6FWgn2e20Xf3vIoDl0vF4Tatb58piPNfwvSz7rS%2BQiDBbcpL5f3CmFYnTh6ph9mKmjGFQAz1rQgeVBBjvs%2BwhbO53BpzZ3ofbLkq6YQJYkh%2FWo7eQsqYfQwTf04BBq8B4J11tKjBaqu%2BhfivyEG59ifa1o0xJHhXKt4hhv66zKcMRAnlXtRBcRIhm5XoEkE3tpQFG4b4lH8WjS1AZsEH9BcvIPJkDvPc6gkyvrJHsu%2BzTCaigjWRtZMelOdlrh3Dg2v2m8ZzwvHKkYMGP4PGUFyYNZ0plyuYC%2FCGRYj%2FxU7PegEkZEZ\" target=\"_blank\" rel=\"noopener noreferrer\"> Qt-QML-Build-Deploy-Run-Steps Application Guide<\/a><\/td>\n\n\n<\/tr>\n\n\n\n\n<tr style=\"width: 100%; height: 25px; text-align: left; background: #FFBC7D; margin: 0px auto; border-spacing: 0px; color: #000000; font-size: 15px;\">\n\n\n<td colspan=\"3\" align=\"left\"><a href=\"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/qt-vs-gtk-vs-wxwidgets-a-comparative-study\/\" target=\"_blank\" rel=\"noopener noreferrer\"> Qt Basics Samples Package Containing Poky Toolchain<\/a><\/td>\n\n\n<\/tr>\n\n\n\n\n<tr style=\"width: 100%; height: 25px; text-align: left; background: #FFFFFF; margin: 0px auto; border-spacing: 0px; color: #000000; font-size: 15px;\">\n\n\n<td colspan=\"3\" align=\"left\"><a href=\"https:\/\/developer.e-consystems.com\/Downloads?key=eHXS6SCPs08yz6FWgn2e27aXrUKsRClbddUo2e45jXheKzLHJRrl2lvYvTpFybxJr7cNbhTDNl%2F%2BKdEEr1nuZtxUGqCVPGlQUUTRF5ZyeUhJDENhqzcDA1Flt%2FNXf27iuSD15p2LY%2Bk%2FT7mjgBbeX95dW7Kq%2FhJT2BuaVkhj%2FdjGee53N9b14v2Mw3WZyeHWC2%2BJApcYXxw5K3atuvunEOc%2F4bkM58Kd%2B9nKESjBDYhMQQuAj0QGh7m6kQRBZRSS46uQNZ8q%2FBCkkHiaLnwGef8DzIrHjHQEei%2FLYxfRBqg%3D\" target=\"_blank\" rel=\"noopener noreferrer\"> Qt-Intermediate Samples Package Containing Bluetooth Scanning Application<\/a><\/td>\n\n\n<\/tr>\n\n\n<\/tbody>\n\n\n<\/table>\n\n\n<\/div>\n\n\n--><\/div>\n<p class=\"western\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">This article guides you to build a Qt application to scan bluetooth devices in range by making use of e-con Systems\u2122\u2019 <a href=\"https:\/\/www.e-consystems.com\/iMX6-som-system-on-module.asp\">eSOMiMX6<\/a> based development kit <a href=\"https:\/\/www.e-consystems.com\/iMX6-development-board.asp\">Ankaa<\/a>.<br \/>\n<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">Over the years, <\/span><\/span><\/span><strong><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">Bluetooth<\/span><\/span><\/span><\/strong><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\"> has become a popular technology allowing electronic devices to communicate wirelessly. It is basically a method for data communication that uses short-range radio links to replace cables between computers and their connected units. <\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">Qt provides its own API to use Bluetooth and enables connectivity between Bluetooth enabled devices which enables basic Bluetooth operations like scanning for devices and connecting them.<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">The Bluetooth API provides connectivity between Bluetooth enabled devices. This is typically used for scanning the device ,pairing with device , transferring the data between the devices.<\/span><\/span><\/span><\/p>\n<p class=\"western\">QML uses a model, <strong>BluetoothDiscoveryModel<\/strong> which has the details of all scanned devices. This provides a model of connectable devices. This model is filled based on the enumeration set to <em>discoverymode<\/em> property. Here as we are interested to scan devices we use <strong>BluetoothDiscoveryModel<\/strong>.<strong>DeviceDiscovery<\/strong>.<\/p>\n<p class=\"western\">This model has following roles:<\/p>\n<ul>\n<li>\n<p class=\"western\">name \u2013 The devices name and address<\/p>\n<\/li>\n<li>\n<p class=\"western\">deviceName \u2013 The name of the device<\/p>\n<\/li>\n<li>\n<p class=\"western\">remoteAddress \u2013 The address of the discovered device.<\/p>\n<\/li>\n<\/ul>\n<p class=\"western\">Using these three roles we can get the name and address of the device.<\/p>\n<p class=\"western\">The demo video shows that our <span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/iMX6-micro-som-system-on-module.asp\">eSOMiMX6<\/a><\/u><\/span> device scans for remote devices within the bluetooth range and displays list of devices with name and its address using Qt bluetooth module.<\/p>\n<p><iframe loading=\"lazy\" title=\"Scanning Bluetooth Devices Using QML | e-con Systems\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/4ZP_86pYY0Y?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe><\/p>\n<p class=\"western\">We strongly support Qt on our embedded platforms.<\/p>\n<p class=\"western\">Are you looking to quickly develop an application using Qt? Then, the e-con Systems\u2122 <span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/iMX6-micro-som-system-on-module.asp\">eSOMiMX6<\/a><\/u><\/span><\/span> based Ankaa kit might be a good solution for you.<\/p>\n<p class=\"western\">Please visit our <span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/auth\/Account\/login\">developer website<\/a><\/u><\/span><\/span> to download various articles and supporting sample programs on Qt.<\/p>\n<p class=\"western\" align=\"left\"><span style=\"color: #00000a;\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">For further assistance and queries please get in touch with <\/span><\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"mailto:sales@e-consystems.com\"><span style=\"font-size: medium;\"><span lang=\"en-IN\">sales@e-consystems.com<\/span><\/span><\/a><\/u><\/span><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>One thing I am tired of hearing about, is that people think Qt is only&#8230;<\/p>\n","protected":false},"author":17,"featured_media":745,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[193,212,127],"tags":[134,133,207,121],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts\/1868"}],"collection":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/comments?post=1868"}],"version-history":[{"count":10,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts\/1868\/revisions"}],"predecessor-version":[{"id":3071,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts\/1868\/revisions\/3071"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/media\/745"}],"wp:attachment":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/media?parent=1868"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/categories?post=1868"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/tags?post=1868"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}