{"id":1519,"date":"2025-12-15T15:51:05","date_gmt":"2025-12-15T15:51:05","guid":{"rendered":"https:\/\/www.bleuio.com\/blog\/?p=1519"},"modified":"2025-12-15T17:43:51","modified_gmt":"2025-12-15T17:43:51","slug":"sending-ble-air-quality-data-to-arduino-cloud-using-bleuio","status":"publish","type":"post","link":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/","title":{"rendered":"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO"},"content":{"rendered":"\n<p>Bluetooth Low Energy (BLE) devices are widely used for environmental monitoring, but getting their data into the cloud often requires complex SDKs, gateways, or proprietary platforms. In this tutorial, we demonstrate a simple and flexible alternative: sending <strong>BLE advertisement data directly to Arduino Cloud<\/strong> using <strong>BleuIO<\/strong> as a USB BLE gateway.<\/p>\n\n\n\n<p>In this project, we build a lightweight data pipeline where a HibouAir air quality sensor broadcasts environmental data over BLE advertisements, BleuIO scans and captures that data, a Python script decodes the values, and the results are sent straight to <strong>Arduino Cloud<\/strong> for storage and visualization \u2014 all using free tools.<\/p>\n\n\n\n<p>This project is designed as a <strong>showcase example<\/strong> to illustrate how BLE development and cloud integration can be done quickly and transparently, without BLE SDKs or embedded firmware development.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why Arduino Cloud?<\/h2>\n\n\n\n<p>Arduino Cloud offers a convenient and reliable platform for storing and visualizing IoT data without the need to build and maintain a custom backend. Although it is often associated with Arduino hardware, the platform supports Manual Devices, which makes it suitable for gateway-based solutions where data originates from external devices such as BLE sensors. In this project, Arduino Cloud serves as a secure endpoint where decoded air quality data can be published using standard MQTT communication. Its integrated dashboards allow developers to quickly visualize sensor data, making it especially useful for prototyping, demonstrations, and proof-of-concept projects that require minimal setup.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Hardware and Software Requirements<\/h2>\n\n\n\n<h4 class=\"wp-block-heading\">Hardware<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.hibouair.com\/specifications-air-quality-monitor-co2-sensor.php\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>HibouAir<\/strong> CO2 air quality monitor <\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.bleuio.com\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>BleuIO<\/strong> Bluetooth Low Energy USB dongle<\/a><\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">Software<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Python 3.9 or later<\/li>\n\n\n\n<li><code>pyserial<\/code> Python library<\/li>\n\n\n\n<li><code>arduino-iot-cloud<\/code> Python library<\/li>\n\n\n\n<li><a href=\"https:\/\/app.arduino.cc\/dashboards\" target=\"_blank\" rel=\"noreferrer noopener\">Arduino Cloud<\/a><\/li>\n<\/ul>\n\n\n\n<p>No embedded programming or BLE SDKs are required.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How the System Works<\/h2>\n\n\n\n<p>The HibouAir device periodically broadcasts air quality data within its BLE advertisement payload. BleuIO continuously scans for nearby BLE advertisements and filters packets that match a specific device identifier. When a matching advertisement is detected, the Python gateway script extracts the raw data and applies decoding logic to convert the hexadecimal values into human-readable measurements. These decoded values are then published to Arduino Cloud using authenticated MQTT communication. The entire process runs continuously, enabling real-time data updates without establishing a persistent BLE connection to the sensor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Arduino Cloud Setup (Step by Step)<\/h2>\n\n\n\n<h4 class=\"wp-block-heading\">Step 1: Create or Log In to Arduino Cloud<\/h4>\n\n\n\n<p>Go to:<br><strong><a href=\"https:\/\/app.arduino.cc\/dashboards\">https:\/\/app.arduino.cc\/dashboards<\/a><\/strong><\/p>\n\n\n\n<p>Create a free account or log in to your existing one. After login Arduino Cloud will generate<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Device ID<\/strong><\/li>\n\n\n\n<li><strong>Secret Key<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Save these securely \u2014 they will be used in the Python script.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Step 2: Create a Device<\/h4>\n\n\n\n<p>Navigate to:<br><strong><a href=\"https:\/\/app.arduino.cc\/devices\">https:\/\/app.arduino.cc\/devices<\/a><\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Click <strong>Add Device<\/strong> from left menu<\/li>\n\n\n\n<li>Choose <strong>Manual Device<\/strong><\/li>\n\n\n\n<li>Name the device <strong>HibouAir<\/strong><\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">Step 3: Create a Thing<\/h4>\n\n\n\n<p>When prompted after creating device, create a new Thing and name it <strong>HibouAir Thing<\/strong>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Step 4: Add Cloud Variables<\/h4>\n\n\n\n<p>Add the following variables to the Thing:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Variable Name<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><code>co2_ppm<\/code><\/td><td>int<\/td><td>CO\u2082 concentration (ppm)<\/td><\/tr><tr><td><code>temperature_c<\/code><\/td><td>float<\/td><td>Temperature in \u00b0C<\/td><\/tr><tr><td><code>humidity_rh<\/code><\/td><td>float<\/td><td>Relative humidity (%)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"578\" src=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-2.png\" alt=\"\" class=\"wp-image-1520\" style=\"width:283px;height:auto\" srcset=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-2.png 758w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-2-300x229.png 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Step 5: Create a Dashboard<\/h4>\n\n\n\n<p>Go back to <strong>Dashboards<\/strong> and create a new dashboard.<\/p>\n\n\n\n<p>Add widgets such as:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Value widget for CO2<\/li>\n\n\n\n<li>Gauge widget for temperature<\/li>\n\n\n\n<li>Chart widget for humidity over time<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"522\" src=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-3-1024x522.png\" alt=\"\" class=\"wp-image-1521\" srcset=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-3-1024x522.png 1024w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-3-300x153.png 300w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-3-768x392.png 768w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-3-1536x783.png 1536w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-3-2048x1044.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Your cloud setup is now complete.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Project Source Code<\/h2>\n\n\n\n<p>Clone or download the project from GitHub:<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/smart-sensor-devices-ab\/bleuio-to-arduino-cloud\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/smart-sensor-devices-ab\/bleuio-to-arduino-cloud<\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Configure <code>secrets.py<\/code><\/h4>\n\n\n\n<p>Update the following values:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DEVICE_ID = \"YOUR_DEVICE_ID\"\nSECRET_KEY = \"YOUR_SECRET_KEY\"\nSERIAL_PORT = \"\/dev\/tty.usbmodemXXXX\"\n<\/code><\/pre>\n\n\n\n<p>Make sure the serial port matches where BleuIO is connected.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Configure <code>gateway.py<\/code><\/h4>\n\n\n\n<p>In <code>gateway.py<\/code>, update the scan command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>SCAN_CMD = \"AT+FINDSCANDATA=220069=3\"\n<\/code><\/pre>\n\n\n\n<p>In this example, <code>220069<\/code> is the <strong>HibouAir board ID<\/strong> used in the BLE advertisement.<br>If your HibouAir device uses a different ID, update this value accordingly.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Running the Project<\/h2>\n\n\n\n<p>Once the Arduino Cloud configuration and local script setup are complete, running the project requires only a single command. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python3 gateway.py<\/code><\/pre>\n\n\n\n<p>When the gateway script is executed, BleuIO is placed into dual-role mode and begins scanning for BLE advertisements that match the specified HibouAir board identifier. As advertisement packets are received, the script decodes the sensor values and immediately publishes them to Arduino Cloud. Within moments, the dashboard begins displaying live air quality data. This continuous loop allows the system to operate as a real-time BLE-to-cloud gateway with minimal overhead.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"904\" src=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-4-1024x904.png\" alt=\"\" class=\"wp-image-1528\" srcset=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-4-1024x904.png 1024w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-4-300x265.png 300w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-4-768x678.png 768w, https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/image-4.png 1318w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Customizing the Dashboard<\/h2>\n\n\n\n<p>Arduino Cloud dashboards can be customized to present air quality data in a way that best fits the user\u2019s needs. Live values can be displayed using numeric widgets, gauges can be used to visualize ranges such as CO2 concentration or temperature, and chart widgets can be added to show trends over time. By arranging and configuring these widgets, users can create a clear and informative interface for monitoring indoor air quality. This flexibility makes the dashboard suitable not only for development and testing, but also for presentations and live demonstrations.<\/p>\n\n\n\n<p>This project demonstrates how BLE advertisement data can be efficiently captured and delivered to the cloud using a minimal and transparent approach. By combining HibouAir sensors, BleuIO, a simple Python gateway, and Arduino Cloud, it is possible to create a complete end-to-end monitoring solution without relying on complex SDKs or embedded firmware development. While this tutorial focuses on air quality data, the same method can be extended to other BLE-based sensors and cloud platforms. As a showcase example, it highlights the flexibility of BleuIO as a BLE development tool and provides a solid foundation for developers who want to build and expand their own BLE-enabled cloud solutions.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bluetooth Low Energy (BLE) devices are widely used for environmental monitoring, but getting their data into the cloud often requires complex SDKs, gateways, or proprietary platforms. In this tutorial, we demonstrate a simple and flexible alternative: sending BLE advertisement data directly to Arduino Cloud using BleuIO as a USB BLE gateway. In this project, we [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1523,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,2],"tags":[],"class_list":["post-1519","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>Sending BLE Air Quality Data to Arduino Cloud Using BleuIO - 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\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO - BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"og:description\" content=\"Bluetooth Low Energy (BLE) devices are widely used for environmental monitoring, but getting their data into the cloud often requires complex SDKs, gateways, or proprietary platforms. In this tutorial, we demonstrate a simple and flexible alternative: sending BLE advertisement data directly to Arduino Cloud using BleuIO as a USB BLE gateway. In this project, we [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/\" \/>\n<meta property=\"og:site_name\" content=\"BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-15T15:51:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-15T17:43:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/bleuio-arduino-cloud.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"780\" \/>\n\t<meta property=\"og:image:height\" content=\"439\" \/>\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\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/\"},\"author\":{\"name\":\"BleuIO\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"headline\":\"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO\",\"datePublished\":\"2025-12-15T15:51:05+00:00\",\"dateModified\":\"2025-12-15T17:43:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/\"},\"wordCount\":878,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/bleuio-arduino-cloud.jpg\",\"articleSection\":[\"BleuIO\",\"BleuIO tutorial\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/\",\"name\":\"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO - BleuIO - Create Bluetooth Low Energy application\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/bleuio-arduino-cloud.jpg\",\"datePublished\":\"2025-12-15T15:51:05+00:00\",\"dateModified\":\"2025-12-15T17:43:51+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/bleuio-arduino-cloud.jpg\",\"contentUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/bleuio-arduino-cloud.jpg\",\"width\":780,\"height\":439,\"caption\":\"bleuio arduino cloud\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO\"}]},{\"@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":"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO - 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\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/","og_locale":"en_US","og_type":"article","og_title":"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO - BleuIO - Create Bluetooth Low Energy application","og_description":"Bluetooth Low Energy (BLE) devices are widely used for environmental monitoring, but getting their data into the cloud often requires complex SDKs, gateways, or proprietary platforms. In this tutorial, we demonstrate a simple and flexible alternative: sending BLE advertisement data directly to Arduino Cloud using BleuIO as a USB BLE gateway. In this project, we [&hellip;]","og_url":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/","og_site_name":"BleuIO - Create Bluetooth Low Energy application","article_published_time":"2025-12-15T15:51:05+00:00","article_modified_time":"2025-12-15T17:43:51+00:00","og_image":[{"width":780,"height":439,"url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/bleuio-arduino-cloud.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\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#article","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/"},"author":{"name":"BleuIO","@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"headline":"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO","datePublished":"2025-12-15T15:51:05+00:00","dateModified":"2025-12-15T17:43:51+00:00","mainEntityOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/"},"wordCount":878,"commentCount":0,"image":{"@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/bleuio-arduino-cloud.jpg","articleSection":["BleuIO","BleuIO tutorial"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/","url":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/","name":"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO - BleuIO - Create Bluetooth Low Energy application","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#primaryimage"},"image":{"@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/bleuio-arduino-cloud.jpg","datePublished":"2025-12-15T15:51:05+00:00","dateModified":"2025-12-15T17:43:51+00:00","author":{"@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"breadcrumb":{"@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#primaryimage","url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/bleuio-arduino-cloud.jpg","contentUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2025\/12\/bleuio-arduino-cloud.jpg","width":780,"height":439,"caption":"bleuio arduino cloud"},{"@type":"BreadcrumbList","@id":"https:\/\/www.bleuio.com\/blog\/sending-ble-air-quality-data-to-arduino-cloud-using-bleuio\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.bleuio.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Sending BLE Air Quality Data to Arduino Cloud Using BleuIO"}]},{"@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\/1519","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=1519"}],"version-history":[{"count":5,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/1519\/revisions"}],"predecessor-version":[{"id":1529,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/1519\/revisions\/1529"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media\/1523"}],"wp:attachment":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media?parent=1519"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/categories?post=1519"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/tags?post=1519"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}