# XIDE IoT + AI Kit for Air Quality Monitoring

<figure><img src="/files/a8FRdFp8pMFWkpFgOhoL" alt="" width="563"><figcaption></figcaption></figure>

The **XIDE IoT + AI Kit** is a portable device designed for indoor air quality monitoring, capable of measuring gas resistance, barometric pressure, relative humidity, and ambient temperature. It integrates the [**X-NODE Environmental AI (BME690)**](https://docs.microside.com/en/user-manuals/xide/x-nodes/x-node-xn21-bme690-environmental-ai-sensor). The integrated sensor has a detection range of barometric pressure from 300 to 1100 hPa, relative humidity from 0 to 100%, ambient temperature from -40 to 85 °C.

Wireless connectivity enabled by Wi-Fi allows seamless acquisition of real-time information via the cloud.

## Table of contents

1. [**How does it work?**](#i.-how-does-it-work)
2. [**Installation**](#ii.-installation)
   * [**2.1 Prepare your hardware**](#id-2.1.-prepare-your-hardware)
   * [**2.2 Cloud connection**](#id-2.2.-cloud-connection)
   * [**2.3 Desktop Application**](#id-2.3-desktop-application)
   * [**2.4 Receiving notifications**](#id-2.4.-receiving-notifications-automations)
   * [**2.5 Connecting the device to a new Wi-Fi network**](#id-2.5.-connecting-the-device-to-a-new-wi-fi-network)

## I. How does it work?

The **XIDE IoT + AI Kit** for Air Quality Monitoring features Bosch’s BME690 AI-enabled gas sensor, capable of measuring volatile organic compounds (VOCs), volatile sulfur compounds (VSCs), barometric pressure, relative humidity, and ambient temperature.

The **XIDE IoT + AI Kit** runs on BSEC (**B**osch **S**ensortec **E**nvironmental **C**luster) library, to continuously perform several calculations for compensated ambient air temperature and ambient relative humidity for improved sensor accuracy, it also measures pressure, gas resistance.

<figure><img src="/files/IHZNUv5WzjBkSkMHd3h2" alt=""><figcaption></figcaption></figure>

The device also calculates the air quality **(IAQ)** level and provides a scaled output:

* **0-50:** Excellent.
* **51-100:** Good.
* **101-200:** Lightly polluted.
* **201-250:** Polluted.
* **251-351:** Severely Polluted.
* **351-500:** Extremely polluted.

**IAQ** measurements require warm-up time before yielding accurate values, at least 5 minutes for low-accuracy, up to 60 minutes for medium-accuracy and up to 24 hours for high-accuracy.

<figure><img src="/files/XWfWODiQxu3MuCL9hipO" alt=""><figcaption></figcaption></figure>

The device is based on our **XIDE** platform and includes the [**X-BOARD IIoTrainer**](https://docs.microside.com/plataforma-xide-iot/x-boards/x-board-xbi01-iiotrainer) expansion board, with 5 [**mikroBUS™**](https://www.mikroe.com/mikrobus) expansion sockets, the block-based methodology allows device functionality to be expanded even after deployment. It does not require a specialist for installation, just insert the block into an available/stackable socket\*.

{% hint style="info" %}
\*A firmware update, which can be received over the internet, is required to add functionality to your device.
{% endhint %}

The device integrates:

* [X-NODE / XN21 - BME690 Environmental AI Sensor](https://docs.microside.com/en/user-manuals/xide/x-nodes/x-node-xn21-bme690-environmental-ai-sensor)
* [X-NODE / XC01 - ESP32-S3 Wi-Fi & Bluetooth Controller](https://docs.microside.com/en/user-manuals/xide/x-nodes/xc01-mcu-wifi-ble/r5/xc01-mcu-wifi-ble-esp32-s3)
* [X-NODE / XN01 - Digital Inputs](https://docs.microside.com/en/user-manuals/xide/x-nodes/xn01-digital-inputs/a-r2/xn01-digital-inputs)
* [X-NODE / XN02 - Digital Outputs](https://docs.microside.com/en/user-manuals/xide/x-nodes/xn02-digital-outputs/a-r2/xn02-digital-outputs)
* [X-NODE / XN03 - Analog Inputs/Outputs](https://docs.microside.com/en/user-manuals/xide/x-nodes/xn03-analog-inputs-outputs/a-r2/xn03-analog-inputs-outputs)
* [X-BOARD / XB01 - IoTrainer](https://docs.microside.com/en/user-manuals/xide/x-board/xb01-iotrainer)

## II. Installation

### 2.1. Prepare Your Hardware

1. Assemble the hardware kit, place all the X-NODEs in one of the X-BOARD's [mikroBUS™](https://www.mikroe.com/mikrobus) sockets, placement order is not important, however, make sure the [XC01](https://docs.microside.com/en/user-manuals/xide/x-nodes/xc01-mcu-wifi-ble/r5/xc01-mcu-wifi-ble-esp32-s3) USB-C connector is not blocked in order to program and power the board. If you don't have an [**X-BOARD**](/en/user-manuals/xide/x-board.md) you can stack all the [**X-NODEs**](/en/user-manuals/xide/x-nodes.md) on top of one another.
2. Before powering the board, check that all [**X-NODEs**](/en/user-manuals/xide/x-nodes.md) are correctly placed. Misalignments could potentially damage the device.
3. Once the hardware is assembled, power the device through the USB cable.

<figure><img src="https://docs.microside.com/~gitbook/image?url=https%3A%2F%2F177299348-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FbyV2zAlQAiqg46a3Lr8z%252Fuploads%252F8UGQBeaMZSsFJcNFRi11%252Fuser-manual-assembly-instructions.jpg%3Falt%3Dmedia%26token%3D81e4856a-da67-4f7e-a087-5a86de45f8e9&#x26;width=400&#x26;dpr=3&#x26;quality=100&#x26;sign=c4436d38&#x26;sv=2" alt=""><figcaption></figcaption></figure>

### 2.2. Cloud connection

To connect the device to the cloud you must have a valid subscription.

{% hint style="info" %}
If you do not have a subscription, or this is the first time you have acquired a device, contact a support representative, you must provide proof of license acquisition and an email to set up an account, you can also provide an organization name and logo to customize your management platform. You will then receive an email with instructions to create a password for your account.
{% endhint %}

Download the [Blynk mobile app for iOS](https://apps.apple.com/es/app/blynk-iot/id1559317868):

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fgs1sLBtT4yELMEaSue8l%2Fblynk-app-qr-code-ios.png?alt=media&#x26;token=dabcd42c-7d03-4614-9c80-0b015b3b7b93" alt=""><figcaption></figcaption></figure>

Or for [Android](https://play.google.com/store/apps/details?id=cloud.blynk\&hl=es\&pli=1):

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FILWLahnSPeoIiLJmSm9E%2Fblynk-app-qr-code-android.png?alt=media&#x26;token=aadb7edf-5d2d-4639-a416-2ed5c13d3809" alt=""><figcaption></figcaption></figure>

Open the Blynk app, if the device has already been registered and you want to connect it to a different wireless network, see section: **Connecting the device to a new Wi-Fi network.**

If this is the first time connecting the device to the cloud, press the **+ Add new Device** button, or the **+** <mark style="color:green;background-color:green;">**(1)**</mark>**.**

Then select the **Find devices nearby** option <mark style="color:green;background-color:green;">**(2)**</mark>, the app may request permissions to scan Wi-Fi networks and search Bluetooth devices.

The app will begin scanning for the device <mark style="color:green;background-color:green;">**(3)**</mark>. If it cannot find it, press the ***BOOT*** button to apply a reset to the **device**, see section **Connecting the device to a new Wi-Fi network** for more information on this process.

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2F0gAj3YqcfvKoMpxp4hzU%2Fiot-hygrometer-user-manual-cloud-connect-step-1-to-3.jpg?alt=media&#x26;token=10220ea4-64cd-45b7-950a-7771d5eae653" alt=""><figcaption></figcaption></figure>

When a device is discovered, the app will ask if you want to set it up, you must press the **Connect** option <mark style="color:green;background-color:green;">**(4)**</mark>, wait a few seconds while the app gets the device information <mark style="color:green;background-color:green;">**(5)**</mark>, then a screen will appear where you must provide the network name and password <mark style="color:green;background-color:green;">**(6)**</mark>, press **Continue** to submit this data.

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FnhgDUItqOyhinVjyCOu2%2Fiot-hygrometer-user-manual-cloud-connect-step-4-to-6.jpg?alt=media&#x26;token=db16c0c6-e43e-411a-9583-ee5e9dfafe0f" alt=""><figcaption></figcaption></figure>

<details>

<summary>Static IP configuration and Hidden Wi-Fi Network</summary>

If your wireless network does not have a DHCP server, or you want to assign a static IP to the device, you must press the **IP Address Settings** button <mark style="color:green;background-color:green;">**(6-1)**</mark>, enable the **Use static IP address** option <mark style="color:green;background-color:green;">**(6-2)**</mark>, then fill in the **IP address**, **subnet mask**, **gateway** and **DNS servers** fields <mark style="color:green;background-color:green;">**(6-3)**</mark>.

To connect to a **Hidden Wi-Fi Network**, press the Wi-Fi Network field and manually edit the network name. **Note:** Pressing the (⌄) button will display nearby available networks.

</details>

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FZKEEH8n3QlDEKZLmH6nL%2Fiot-hygrometer-user-manual-cloud-connect-step-6_1-to-6_3.jpg?alt=media&#x26;token=7857d502-72d0-480c-88d6-c8ae5014e127" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
The device is compatible with **802.11b/g/n wireless networks at 2.4GHz** with **WEP/WPA-TKIP/WPA2-CCMP** security keys, with **DHCP or static IP** servers. If you have problems connecting the device, consult with the network administrator to ensure the wireless configuration is correct.
{% endhint %}

If the cloud connection is successful, a page will appear where you can name the device <mark style="color:green;background-color:green;">**(7)**</mark>, press the **Set Up Device** button, a summary of the device will be displayed <mark style="color:green;background-color:green;">**(8)**</mark>, press **Finish** to continue.

{% hint style="info" %}
The information in **Set Up Device** is optional, you can edit this information at any time through the desktop and mobile app.
{% endhint %}

Upon completion, the mobile dashboard will be displayed where you can observe real-time variables <mark style="color:green;background-color:green;">**(9)**</mark>.

<figure><img src="/files/xlb9Rry9edd0uBtK6xNA" alt=""><figcaption></figcaption></figure>

### 2.3 Desktop application

[**Blynk.Console**](https://blynk.cloud/) ([http://blynk.cloud](https://blynk.cloud/)) is a desktop browser application. To access this version of the application you must log in with a user account with a valid subscription. In addition to the mobile version functions, the desktop application allows you to manage users, sub-organizations, and also download reports of data collected by your devices.

{% hint style="info" %}
If you do not have a subscription, or this is the first time you have acquired a device, contact a support representative, you must provide proof of license acquisition and an email to set up an account, you can also provide an organization name and logo to customize your management platform. You will then receive an email with instructions to create a password for your account.
{% endhint %}

### 2.3.1 Downloading reports

Reports contain the information captured by your devices and the events (connections, disconnections, failures) that were recorded during a time period that can be up to 3 or 6 months (depending on the subscription type). To generate a report, first click on the device from which you want to obtain information in the **Devices** section.

<figure><img src="/files/qrqfOUAuw43vXw7CCxwl" alt=""><figcaption><p><strong>Devices</strong> section in <strong>Blynk.Console</strong></p></figcaption></figure>

Then click on the **Download report** button ![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fxoh5hM9Lby9QZKFC0Edr%2Fiot-hygrometer-user-manual-cloud-desktop-step-2.jpg?alt=media\&token=7e37c6d8-63fc-4c6a-bb6a-2c75434da9e8) located under the device name. Configure the time period and variables of interest for the report. You can decide whether to include events (connections, disconnections, failures). If you enable the **Send a link to e-mail** option, you can send the report download link to an email, the **RECIPIENTS** field allows you to select a destination email. Finally, in advanced options you can use **aggregation functions**, for very long time periods you can show data by minutes, hours or days, using average, minimum, maximum, sum and count, if you are not sure omit this configuration. You can also edit the time zone for reports and date and time format. Press the **Generate Report** button to finalize.

{% hint style="warning" %}
You can only generate up to 10 reports per device per day.
{% endhint %}

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fn08MaoSQ1eJmb526TKrW%2Fiot-hygrometer-user-manual-cloud-desktop-step-3.jpeg?alt=media&#x26;token=0a4f70a5-431b-4599-a732-da04aea708f0" alt=""><figcaption></figcaption></figure>

### 2.4. Receiving notifications (automations)

The mobile app allows you to receive notifications based on the status of measured variables, to configure it press the **automations** button (1), then press the + **Create Automation / +**, select the type of automation **Device State**, select the device from which you want to receive notifications, then select the variable that should generate the notification:

* **Schedule:** Useful automation for controlling devices based on routines and schedules.
* **Sunset/Sunrise:** Time zone based automation, activated based on sunrise and sunset.
* **Device state:** Automation generated based on a variable's status.
* **Scene:** Automation that must be activated by some user within the organization.

<figure><img src="/files/OcBuMFA5cdENBEhTxHTr" alt=""><figcaption></figcaption></figure>

Select the condition and values (if applicable) that will generate the notification (4):

* **is greater than:** When the variable exceeds a defined value.
* **is greater than or equal to:** When the variable is equal to or greater than a defined value.
* **is less than:** When the variable falls below a defined value.
* **is less than or equal to:** When the variable is less than or equal to a defined value.
* **is equal to...:** Only when the variable is exactly equal to a defined value.
* **is not equal to:** When the variable is not exactly equal to a defined value.
* **is between ... and ...:** When the variable is between a defined range between two values.
* **is not between ... and ...:** When the variable is not between a defined range between two values.
* **has changed:** Every time the variable changes value.
* **is any:** Every time information is received from the variable, even when it has not changed value.

In the **Do this** section choose the automation type (5), you can select more than one by pressing the **(+)** button:

* **Control device:** If you have a device that allows it, you can control actuators with this automation.
* **Send e-mail:** Send an email automatically to one of the emails of the accounts in your organization.
* **Send app notification:** Sends a notification to your smartphone, make sure to enable Blynk app notifications in your phone's settings for this option to work correctly.
* **Wait then do something:** If you want to wait a time before executing an automation.
* **Update device data:** Send the value of the variable that generated the automation to another device.

In the **Settings** section customize the automation name (5) and select a time limit before this automation can be triggered again, if you choose very short times you may, for example, receive hundreds of notifications in a few minutes, select a limit that is appropriate for your application.

Once the configuration is finalized, your automation is ready, you can disable it at any time by pressing the sliding button (6).

<figure><img src="/files/jih8NdlfMmmn4UNdoa79" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
For notifications to work you must **allow** receiving notifications from the **Blynk IoT** app in your phone's settings. In the Mobile App only the user who created the notification will receive it, use the desktop version to customize recipients.
{% endhint %}

### 2.4.1 Creating notifications (automations) from the desktop application

The desktop application cannot receive notifications, however, it can create them and customize additional parameters, for example, recipients. To create an automation click on the **Automations** tab in [**Blynk.Console**](https://blynk.cloud/), select the **Device State** automation type.

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FkTiTy1WlJprBlqUwXiOg%2Fiot-hygrometer-user-manual-automation-config-desktop-step-1.jpg?alt=media&#x26;token=ebfd4e59-6a8a-4495-abbc-0263e039e4f1" alt=""><figcaption></figcaption></figure>

Assign a name to the automation and using the drop-down lists select the **device** from which you want to receive notifications, the **variable** and the **condition** that will generate the notification. In the **Do this** section choose the automation type, you can select more than one by pressing the **(+) Add next action** button. In the desktop version you can also choose the **Recipients**, that is, the users in your organization who will receive the notification. Also, in the message you can drag automatically generated fields when the automation is triggered:

* **Organization name:** Organization name, organizations can have sub-organizations for administration and control purposes, this field allows you to know the organization where the automation was generated.
* **Timestamp:** Date and time when the automation was generated.
* **Trigger value:** The value of the variable when the automation was generated.
* **Device owner:** In organizations with multiple users you can assign an *owner* to each device, this value refers to the *owner* of the device when the automation was generated.
* **Template name:** The product model.
* **Device name:** Name of the device assigned during configuration.

<figure><img src="/files/cpNxAIEVqoKPHbJELYWH" alt=""><figcaption></figcaption></figure>

With the configuration button <img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FnTrHyBqtGZd6k5oPqO8o%2Fiot-hygrometer-user-manual-automation-config-desktop-step-3.jpg?alt=media&#x26;token=4c7ce620-40ff-4c47-bbf1-f1ab372cafd3" alt="" data-size="line"> you can edit a time limit (**LIMIT PERIOD**) before this automation can be triggered again, if you choose very short times you may, for example, receive hundreds of notifications in a few minutes, select a limit that is appropriate for your application.

<figure><img src="/files/LsTIeRWunAGu6xS9RhyM" alt=""><figcaption></figcaption></figure>

### 2.5. Connecting the device to a new Wi-Fi network

If the Wi-Fi network name or password changed, or if you want to change the device location you must reconfigure the network name. With the device connected and turned on, you must press and hold the **boot push button** for approximately **15 seconds**. Upon releasing the button, wait approximately **5 seconds** while the configuration resets, then turn off then on the device, when turning on the device it will be ready to configure a new network name and Wi-Fi password.

In the Blynk Mobile App select the device you want to reconfigure, then press the **device information** button, finally press the (°°°) to display additional options, there select **Reconfigure**, upon doing so **Nearby device search** will be displayed. Follow the instructions in the [**Cloud connection**](#id-2.2.-cloud-connection) section from point 4.

<figure><img src="/files/whFsB34KTZYXP2Fgg8PL" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
If when reconfiguring a device you use the **(+) Add Device** option instead of **Reconfigure**, the device will be added as a new device. However, depending on the number of licenses in your subscription, the previous device **may be deleted** within 24 hours and with it all information captured in that period for report generation purposes. If by mistake you performed this operation and want to preserve the data, contact a support representative immediately to avoid data loss.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.microside.com/en/user-manuals/products/xide-based-products/xide-iot-+-ai-kit-for-air-quality-monitoring.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
