{"id":620,"date":"2024-04-05T16:59:55","date_gmt":"2024-04-05T16:59:55","guid":{"rendered":"https:\/\/www.bleuio.com\/blog\/?p=620"},"modified":"2024-04-05T17:06:24","modified_gmt":"2024-04-05T17:06:24","slug":"using-bleuio-for-ble-application-development-with-c","status":"publish","type":"post","link":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/","title":{"rendered":"Using BleuIO for BLE Application Development with C++"},"content":{"rendered":"\n<p>In this tutorial, we will explore how to use BleuIO, a Bluetooth Low Energy (BLE) USB dongle, for developing BLE applications with C++. We&#8217;ll demonstrate how to connect to BleuIO via a serial port, send AT commands, and receive responses. Additionally, we&#8217;ll discuss the benefits of using BleuIO and provide some use cases for BLE application development with C++.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introduction to BleuIO<\/h2>\n\n\n\n<p>BleuIO is a BLE USB dongle designed to simplify and accelerate the development of BLE applications. It provides a set of AT commands that allow developers to interact with BLE devices and services without having to write extensive code. By leveraging these AT commands, developers can quickly prototype and develop BLE applications with minimal effort.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Prerequisites<\/h2>\n\n\n\n<p>Before getting started, ensure you have the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/bleuio.com\/\">BleuIO BLE USB dongle<\/a><\/li>\n\n\n\n<li>Serial communication library for C++ (e.g., <code>&lt;iostream><\/code>, <code>&lt;unistd.h><\/code>, <code>&lt;fcntl.h><\/code>, <code>&lt;termios.h><\/code>)<\/li>\n\n\n\n<li>Basic knowledge of C++ programming<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Setting Up the Environment<\/h2>\n\n\n\n<p>First, connect the BleuIO dongle to your computer via USB. Then, (for MAC operating system) determine the serial port assigned to the dongle using the <code>ls \/dev\/cu.*<\/code> command in the terminal. Note down the serial port name (e.g., <code>\/dev\/cu.usbmodem4048FDE52DAF1<\/code>) as we&#8217;ll need it to establish a serial connection.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Writing the C++ Program<\/h2>\n\n\n\n<p>Below is a C++ program that connects to BleuIO, sends an AT command, and retrieves the response.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;iostream>\n#include &lt;string>\n#include &lt;unistd.h>\n#include &lt;fcntl.h>\n#include &lt;termios.h>\n#include &lt;chrono>\n#include &lt;thread>\n\nint main() {\n    \/\/ Open the serial port\n    const char* portname = \"\/dev\/cu.usbmodem4048FDE52DAF1\"; \/\/ Change this to match your serial port\n    int serial_port = open(portname, O_RDWR);\n    if (serial_port &lt; 0) {\n        std::cerr &lt;&lt; \"Error opening serial port\" &lt;&lt; std::endl;\n        return 1;\n    }\n\n    \/\/ Configure the serial port settings\n    struct termios tty;\n    tcgetattr(serial_port, &amp;tty);\n    cfsetospeed(&amp;tty, B9600); \/\/ Set baud rate to 9600\n    cfsetispeed(&amp;tty, B9600);\n    tty.c_cflag &amp;= ~PARENB; \/\/ No parity\n    tty.c_cflag &amp;= ~CSTOPB; \/\/ 1 stop bit\n    tty.c_cflag &amp;= ~CSIZE;\n    tty.c_cflag |= CS8; \/\/ 8 bits per byte\n    tty.c_cflag &amp;= ~CRTSCTS; \/\/ Disable hardware flow control\n    tty.c_cflag |= CREAD | CLOCAL; \/\/ Enable reading and ignore control lines\n    tty.c_lflag &amp;= ~(ICANON | ECHO | ECHOE | ISIG); \/\/ Raw input\n\n    tcsetattr(serial_port, TCSANOW, &amp;tty);\n\n    \/\/ Write data to the serial port to put the dongle in central role\n    const char* m1 = \"AT+CENTRAL\\r\";\n    write(serial_port, m1, strlen(m1));\n\n    \/\/ Wait for 1 second to receive the response\n    std::this_thread::sleep_for(std::chrono::seconds(1));\n\n    \/\/ Write data to the serial port to scan for nearby device for three seconds\n    const char* m2 = \"AT+GAPSCAN=3\\r\";\n    write(serial_port, m2, strlen(m2));\n\n    \/\/ Wait for 1 second to receive the response\n    std::this_thread::sleep_for(std::chrono::seconds(1));\n\n    \/\/ Read response from the serial port with timeout\n    char buf&#91;1024];\n    std::string response;\n    int nbytes;\n    fd_set fds;\n    struct timeval timeout;\n    FD_ZERO(&amp;fds);\n    FD_SET(serial_port, &amp;fds);\n    timeout.tv_sec = 3; \/\/ Timeout after 3 second\n    timeout.tv_usec = 0;\n    while (select(serial_port + 1, &amp;fds, NULL, NULL, &amp;timeout) > 0) {\n        nbytes = read(serial_port, buf, sizeof(buf));\n        if (nbytes &lt; 0) {\n            std::cerr &lt;&lt; \"Error reading from serial port\" &lt;&lt; std::endl;\n            close(serial_port);\n            return 1;\n        }\n        if (nbytes > 0) {\n            response.append(buf, nbytes);\n        }\n    }\n\n    \/\/ Display the response\n    std::cout &lt;&lt; \"Response: \" &lt;&lt; response &lt;&lt; std::endl;\n\n    \/\/ Close the serial port\n    close(serial_port);\n\n    return 0;\n}\n\n\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Understanding the Code<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>We start by opening the serial port corresponding to BleuIO.<\/li>\n\n\n\n<li>Next, we configure the serial port settings (baud rate, parity, stop bits, etc.) to match BleuIO&#8217;s communication parameters.<\/li>\n\n\n\n<li>We then send the <code>AT<\/code>+CENTRAL command to BleuIO, which puts the dongle into central role.<\/li>\n\n\n\n<li>After sending the command, we wait for 1 second to receive the response.<\/li>\n\n\n\n<li>Then we send AT+GAPSCAN=3 to scan for nearby BLE devices for 3 seconds.<\/li>\n\n\n\n<li>We read the response from the serial port with a timeout of 3 second.<\/li>\n\n\n\n<li>Finally, we display the response received from BleuIO and close the serial port.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Output<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"818\" src=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-05-at-18.05.08-1024x818.png\" alt=\"\" class=\"wp-image-624\" srcset=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-05-at-18.05.08-1024x818.png 1024w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-05-at-18.05.08-300x240.png 300w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-05-at-18.05.08-768x614.png 768w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-05-at-18.05.08-1536x1228.png 1536w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-05-at-18.05.08.png 1554w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Use Cases<\/h2>\n\n\n\n<p>BleuIO, with its AT command interface, presents an excellent starting point for developers looking to delve into Bluetooth Low Energy (BLE) application development with C++ across various domains.<\/p>\n\n\n\n<p><strong>Embedded Systems Development<\/strong>: BleuIO simplifies BLE application development in C++ for embedded systems. Developers can quickly prototype IoT devices, smart sensors, and wearables with BleuIO&#8217;s AT command interface, enabling features like remote control and wireless connectivity.<\/p>\n\n\n\n<p><strong>Cross-Platform Mobile Applications<\/strong>: Integrating BLE features into C++ mobile apps becomes seamless with BleuIO. Developers using frameworks like Qt or cross-platform tools can leverage BleuIO&#8217;s AT commands for device discovery, data exchange, and configuration across different platforms.<\/p>\n\n\n\n<p><strong>Industrial Automation and Control<\/strong>: C++ developers in industrial settings can enhance control systems and monitoring tools with BLE connectivity using BleuIO. Its AT command support enables communication with BLE-enabled equipment for tasks like remote monitoring and real-time data acquisition.<\/p>\n\n\n\n<p><strong>Educational Projects and Prototyping<\/strong>: BleuIO serves as an accessible platform for learning BLE technology with C++. Students and hobbyists can experiment with Bluetooth communication, protocol implementation, and IoT development, turning ideas into reality with minimal overhead.<\/p>\n\n\n\n<p>In this tutorial, we&#8217;ve demonstrated how to use BleuIO for BLE application development with C++. By leveraging BleuIO&#8217;s AT commands, developers can streamline the development process and accelerate time-to-market for BLE-enabled projects. With the provided code and insights, you can now begin exploring BLE application development using BleuIO and C++ in your own projects.<\/p>\n\n\n\n<p>For more information about BleuIO and its capabilities, refer to the <strong><a href=\"https:\/\/www.bleuio.com\/getting_started\/\">official documentation and resources<\/a><\/strong>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, we will explore how to use BleuIO, a Bluetooth Low Energy (BLE) USB dongle, for developing BLE applications with C++. We&#8217;ll demonstrate how to connect to BleuIO via a serial port, send AT commands, and receive responses. Additionally, we&#8217;ll discuss the benefits of using BleuIO and provide some use cases for BLE [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":622,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,2],"tags":[],"class_list":["post-620","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bleuio","category-bleuio-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Using BleuIO for BLE Application Development with C++ - BleuIO - Create Bluetooth Low Energy application<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using BleuIO for BLE Application Development with C++ - BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, we will explore how to use BleuIO, a Bluetooth Low Energy (BLE) USB dongle, for developing BLE applications with C++. We&#8217;ll demonstrate how to connect to BleuIO via a serial port, send AT commands, and receive responses. Additionally, we&#8217;ll discuss the benefits of using BleuIO and provide some use cases for BLE [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/\" \/>\n<meta property=\"og:site_name\" content=\"BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"article:published_time\" content=\"2024-04-05T16:59:55+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-05T17:06:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/c-bluetooth-application.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"465\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"BleuIO\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/\"},\"author\":{\"name\":\"BleuIO\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"headline\":\"Using BleuIO for BLE Application Development with C++\",\"datePublished\":\"2024-04-05T16:59:55+00:00\",\"dateModified\":\"2024-04-05T17:06:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/\"},\"wordCount\":574,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/c-bluetooth-application.jpg\",\"articleSection\":[\"BleuIO\",\"BleuIO tutorial\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/\",\"name\":\"Using BleuIO for BLE Application Development with C++ - BleuIO - Create Bluetooth Low Energy application\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/c-bluetooth-application.jpg\",\"datePublished\":\"2024-04-05T16:59:55+00:00\",\"dateModified\":\"2024-04-05T17:06:24+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/c-bluetooth-application.jpg\",\"contentUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/c-bluetooth-application.jpg\",\"width\":800,\"height\":465,\"caption\":\"c++ bluetooth application\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/using-bleuio-for-ble-application-development-with-c\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using BleuIO for BLE Application Development with C++\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/\",\"name\":\"BleuIO - Create Bluetooth Low Energy application\",\"description\":\"Learn Bluetooth Low Energy programming and build Bluetooth Low Energy Application\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\",\"name\":\"BleuIO\",\"sameAs\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\"],\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/author\\\/biadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using BleuIO for BLE Application Development with C++ - BleuIO - Create Bluetooth Low Energy application","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/","og_locale":"en_US","og_type":"article","og_title":"Using BleuIO for BLE Application Development with C++ - BleuIO - Create Bluetooth Low Energy application","og_description":"In this tutorial, we will explore how to use BleuIO, a Bluetooth Low Energy (BLE) USB dongle, for developing BLE applications with C++. We&#8217;ll demonstrate how to connect to BleuIO via a serial port, send AT commands, and receive responses. Additionally, we&#8217;ll discuss the benefits of using BleuIO and provide some use cases for BLE [&hellip;]","og_url":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/","og_site_name":"BleuIO - Create Bluetooth Low Energy application","article_published_time":"2024-04-05T16:59:55+00:00","article_modified_time":"2024-04-05T17:06:24+00:00","og_image":[{"width":800,"height":465,"url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/c-bluetooth-application.jpg","type":"image\/jpeg"}],"author":"BleuIO","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#article","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/"},"author":{"name":"BleuIO","@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"headline":"Using BleuIO for BLE Application Development with C++","datePublished":"2024-04-05T16:59:55+00:00","dateModified":"2024-04-05T17:06:24+00:00","mainEntityOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/"},"wordCount":574,"commentCount":0,"image":{"@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/c-bluetooth-application.jpg","articleSection":["BleuIO","BleuIO tutorial"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/","url":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/","name":"Using BleuIO for BLE Application Development with C++ - BleuIO - Create Bluetooth Low Energy application","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#primaryimage"},"image":{"@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/c-bluetooth-application.jpg","datePublished":"2024-04-05T16:59:55+00:00","dateModified":"2024-04-05T17:06:24+00:00","author":{"@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"breadcrumb":{"@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#primaryimage","url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/c-bluetooth-application.jpg","contentUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/04\/c-bluetooth-application.jpg","width":800,"height":465,"caption":"c++ bluetooth application"},{"@type":"BreadcrumbList","@id":"https:\/\/www.bleuio.com\/blog\/using-bleuio-for-ble-application-development-with-c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.bleuio.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Using BleuIO for BLE Application Development with C++"}]},{"@type":"WebSite","@id":"https:\/\/www.bleuio.com\/blog\/#website","url":"https:\/\/www.bleuio.com\/blog\/","name":"BleuIO - Create Bluetooth Low Energy application","description":"Learn Bluetooth Low Energy programming and build Bluetooth Low Energy Application","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.bleuio.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80","name":"BleuIO","sameAs":["https:\/\/www.bleuio.com\/blog"],"url":"https:\/\/www.bleuio.com\/blog\/author\/biadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/620","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/comments?post=620"}],"version-history":[{"count":2,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/620\/revisions"}],"predecessor-version":[{"id":625,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/620\/revisions\/625"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media\/622"}],"wp:attachment":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media?parent=620"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/categories?post=620"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/tags?post=620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}