# X-NODE / XC01 – ESP32 WROOM Controlador WiFi & Bluetooth R4

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FDdntTAeMQOwj5mBo8ojA%2Fuser-manual-product-image.webp?alt=media&#x26;token=3066340d-6d1f-4254-a110-9f305bc25055" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Este producto ya no se encuentra a la venta. Revisa nuestra versión actualizada:

[XC01 - R5](https://docs.microside.com/plataforma-xide-iot/x-nodes/xc01-controlador-wifi-and-bluetooth/r5/x-node-xc01-esp32-s3-controlador-wifi-and-bluetooth)
{% endhint %}

El **X-NODE MCU WIFI BLE (ESP32-WROOM-32)** integra un módulo de conectividad inalámbrica [**ESP32-WROOM-32**](https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf) de [**Espressif Systems®**](https://www.espressif.com/en) conformado por Bluetooth/BLE y Wi-Fi de 2.4 GHz, dos modos de funcionamiento para usarlo como un X-NODE (Esclavo) o como una X-BOARD (Maestro) y compatible con protocolos I2C, UART y SPI. Cuenta con múltiples modos de potencia y escalado de potencia dinámico, contribuyendo así a un equilibrio óptimo entre el rango de comunicación, la velocidad de datos y el consumo de energía. Es ideal para aplicaciones de baja potencia, aplicaciones móviles, electrónica portátil e Internet de las cosas (IoT) como interactuar con un sensor, actuador o hasta un sistema de domótica, con monitoreo y control desde una computadora o servicio en la nube.

### **TABLA DE CONTENIDO**

1. [**¿Cómo funciona?**](#i.-como-funciona)
2. [**Descripción del hardware**](#ii.-descripcion-del-hardware)
3. [**Especificaciones**](#iii.-especificaciones)
4. [**Pinout**](#iv.-pinout)
5. [**Configuración para su uso**](#v.-configuracion-para-su-uso)
6. [**Descargas**](#vi.-descargas)
   * [**Esquemático**](https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fw0qzt2DAbXQkaOAQ0qyv%2FSCHEMATIC%20XC01%20-%20MCU%20WIFI%20BLE%20\(ESP32-WROOM-32\).pdf?alt=media\&token=109f57e7-8902-43bc-af7e-8a10d8a8aa3f)
   * [**Dimensiones**](https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FY5HyRWPLPz3m5NzwPza0%2FDIMENSIONS%20XC01%20-%20MCU%20WIFI%20BLE%20\(ESP32-WROOM-32\).pdf?alt=media\&token=e26e6631-9fb7-4c44-84d9-00cb6eb189a6)

## **I. ¿Cómo funciona?**

El módulo **X-NODE MCU WIFI BLE (ESP32-WROOM-32)** cuenta con un conector micro USB tipo B con el cual es posible establecer una comunicación y programarlo de manera sencilla, de esta forma se podrá usar en proyectos para brindar una comunicación inalámbrica WiFi o Bluetooth y así lograr una conexión hacia un dispositivo móvil o servicio en la nube, esto permite que el X-NODE sea compatible con cualquier sistema basado en un microcontrolador, microprocesador o equipos industriales

**X-NODE MCU WIFI BLE (ESP32-WROOM-32)** es compatible con el estándar [**mikroBUS™**](https://www.mikroe.com/mikrobus) de [**Mikroe®**](https://www.mikroe.com/) para un uso fácil con un gran ecosistema de kits para desarrollo de hardware, también posee conectores JST compatibles con el estándar [**Qwiic®**](https://www.sparkfun.com/qwiic) de [**SparkFun®**](https://www.sparkfun.com/) para una comunicación entre diversos módulos y tarjetas de desarrollo por medio del protocolo I2C de manera rápida y sencilla.

### **II. Descripción del hardware** <a href="#ii.-descripcion-del-hardware" id="ii.-descripcion-del-hardware"></a>

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Ffy0mvqym0rDg5UHXMWW8%2Fuser-manual-hardware-description.jpg?alt=media&#x26;token=5920a52c-0b98-4e4a-aea0-a63b9d000573" alt=""><figcaption></figcaption></figure>

1. SoC [**ESP32-WROOM-32**](https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf) de [**Espressif Systems®**](https://www.espressif.com/en)
2. Push button para entrar en modo bootloader y push button conectado al pin RESET
3. Conectores JST compatibles con [**Qwiic®**](https://www.sparkfun.com/qwiic)
4. Conector micro USB tipo B para comunicación y alimentación
5. Puertos de comunicación UART <> I2C
6. Modelo de X-NODE
7. Tipo de X-NODE
8. Ranura para tarjeta microSD
9. Jumpers para selección de modo X-NODE (Esclavo) <> X-BOARD (Maestro)
10. Conectores estándar [**mikroBUS™**](https://www.mikroe.com/mikrobus)
11. Jumpers para brindar voltaje de 3.3V y 5V en los pines [**mikroBUS™**](https://www.mikroe.com/mikrobus)
12. Versión del hardware: R4
13. Número de parte del componente principal en el X-NODE

## **III. Especificaciones**

<table data-header-hidden><thead><tr><th width="148"></th><th></th></tr></thead><tbody><tr><td><strong>Tipo</strong></td><td>BLE + WiFi</td></tr><tr><td><strong>Aplicaciones</strong></td><td>Ideal para aplicaciones de baja potencia, aplicaciones móviles, electrónica portátil, aplicaciones de (IoT), hogar inteligente, robótica avanzada, entre otros.</td></tr><tr><td><strong>Módulo</strong></td><td>SoC ESP32-WROOM-32</td></tr><tr><td><strong>Fabricante</strong></td><td>Espressif Systems®</td></tr><tr><td><strong>Características</strong></td><td>Compatible con protocolo Wi-Fi(2.4GHz) 802.11 b/g/n/e/i (802.11n hasta 150 Mbps). Bluetooth: v4.2 BR/EDR y BLE, Seguridad IEEE 802.11 WFA, WPA/WPA2 y WAPI, Encriptación AES, SHA-2, RSA, ECC y RNG.</td></tr><tr><td><strong>Interfaz</strong></td><td>UART, I2C, SPI, GPIO, USB</td></tr><tr><td><strong>Compatibilidad</strong></td><td>Estándar <a href="https://www.mikroe.com/mikrobus">mikroBUS™ y</a> estándar <a href="https://www.sparkfun.com/qwiic">Qwiic®</a></td></tr><tr><td><strong>Tamaño</strong></td><td>71.83 x 25.4 x 20.5 mm</td></tr><tr><td><strong>Voltaje</strong></td><td>3.3 V</td></tr></tbody></table>

{% hint style="info" %}
Para la información técnica completa, puedes descargar las especificaciones del fabricante en el siguiente link: [Datos Técnicos](https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf)
{% endhint %}

## **IV. Pinout**

La siguiente tabla muestra el pinout del **X-NODE MCU WIFI BLE (ESP32-WROOM-32)** con respecto al estándar  [**mikroBUS™**](https://www.mikroe.com/mikrobus) (este último se encuentra en las dos columnas del centro).

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FWyEYkDjeibZEjwltKhGa%2Fuser-manual-mikrobus-pinout-table.jpg?alt=media&#x26;token=6dc0a5ff-7e95-4b31-8917-0771a62043b0" alt=""><figcaption></figcaption></figure>

## **V. Configuración para su uso**

Para un uso práctico del X-NODE se utiliza el módulo ESP32-WROOM-32 de forma directa, por ello es posible interactuar con sus pines nativos y brindar una conectividad inalámbrica a otros X-NODE o tarjetas de desarrollo a través de diferentes protocolos de comunicación como UART o I2C, utilizando el entorno de desarrollo de tu preferencia.

Conecta tu módulo **X-NODE MCU WIFI BLE (ESP32-WROOM-32)** a la computadora por medio del cable micro USB y configúralo dependiendo de tu sistema operativo, para los siguientes ejemplos se utiliza Windows.

{% hint style="warning" %}
En caso de que el módulo **NO** sea reconocido, instala el driver USB Silicon Labs:

[Instalar driver USB Silicon Labs](https://docs.microside.com/ambientes-de-programacion-ides/platformio-ide-visual-studio-code#instalar-driver-usb-silicon-labs)
{% endhint %}

<details>

<summary>Configuración para PlatformIO en VS Code</summary>

**1**.- Descarga e instala Visual Studio Code.

&#x20;       <https://code.visualstudio.com/>

**2**.- Ejecuta VS Code, dirígete al apartado de ***"Extensiones"***, busca **PlatformIO IDE** e instálalo.

![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FpT2xUYLN9KuTksopI53g%2Fuser-manual-pio-step-2.jpg?alt=media\&token=3badc0b8-f7f8-4c6f-bb12-257a8231a991)

**3**.- Dirígete al gestor de proyectos y da clic en "Create New Project".

![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FP06sT7kaSKkO1S7H5b5c%2Fuser-manual-pio-step-3.jpg?alt=media\&token=5158e0bc-5cbd-4fa8-ba37-953a02cd5498)

**4**.- Completa **Project Wizard** con los siguientes datos y da clic en ***"Finish"***.

![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2F2RKjc4HzsesRHbDdm1ua%2Fuser-manual-pio-step-4.jpg?alt=media\&token=a9ce7465-9e06-482b-84b6-757406e6f6a8)

**5**.- Este proceso descarga las herramientas necesarias para el módulo ESP32 y puede llevar un poco de tiempo.

![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FLuK8R3UFj2jrNotJOpCW%2Fuser-manual-pio-step-5.jpg?alt=media\&token=13d94a72-ed30-497b-9350-059d7388f718)

**6**.- Por último, se muestra la siguiente estructura en VS Code y estará listo para su uso.

![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2F4tFNY2Dz6EzMnLtnwSj3%2Fuser-manual-pio-step-6.jpg?alt=media\&token=b3edae8e-2943-48e0-a99e-5cd10ee64fb5)&#x20;

</details>

<details>

<summary>Configuración para Arduino® IDE</summary>

**1**.- Descarga e instala Arduino® IDE.

&#x20;       <https://www.arduino.cc/en/software>

**2**.- Ejecuta Arduino® IDE y da clic en “Inicio” > “Preferencias”.

<img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FrulvAKYZoH1227T4VicV%2Fuser-manual-arduino-step-2.png?alt=media&#x26;token=27e8e6a9-43e6-4e58-86b2-af9872d37383" alt="" data-size="original">

**3**.- Inserta el siguiente enlace en el campo de URLs:

```
https://dl.espressif.com/dl/package_esp32_index.json
```

![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FH3HfhRqY4sJUooNUXLKn%2Fuser-manual-arduino-step-3.png?alt=media\&token=8c83007b-6f40-492d-b145-14f6e93634e3)

**4**.- Posteriormente da clic en “Herramientas” > “Placa” > “Gestor de tarjetas”.

![](https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FxctNjYm9vXuds65BzZKu%2Fuser-manual-arduino-step-4.png?alt=media\&token=eb650678-c7a3-4109-954f-363d5b5b884c)

**5**.- En el gestor de tarjetas, busca el paquete "ESP32" e instálalo.

<img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FRnztINlFtswQfiCH8SBa%2Fuser-manual-arduino-step-5.png?alt=media&#x26;token=bb8decef-a158-42a4-8c80-4d30f2227b76" alt="" data-size="original">

**6**.- Da clic en “Herramientas” > “Placa” > "ESP32 Arduino" y selecciona la tarjeta **ESP32 Dev Module**.

<img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FLxPtnYwQCmzd7WqC1g72%2Fuser-manual-arduino-step-6.png?alt=media&#x26;token=126feb71-a99a-45ad-b9f3-f50725880437" alt="" data-size="original">

**7**.- Por último, selecciona el puerto asignado por el módulo y estará listo para usarse.

<img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FDC407grruJWEtVBo1Bef%2Fuser-manual-arduino-step-7.png?alt=media&#x26;token=a5992741-6b85-4f6c-8bce-d5d945edcac2" alt="" data-size="original">

</details>

## **VI. Descargas**

<table data-card-size="large" data-view="cards"><thead><tr><th align="center"></th><th data-hidden data-type="content-ref"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td align="center"><mark style="color:green;"><strong>Esquemático</strong></mark></td><td><a href="https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fw0qzt2DAbXQkaOAQ0qyv%2FSCHEMATIC%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=109f57e7-8902-43bc-af7e-8a10d8a8aa3f">https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fw0qzt2DAbXQkaOAQ0qyv%2FSCHEMATIC%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=109f57e7-8902-43bc-af7e-8a10d8a8aa3f</a></td><td><a href="https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fw0qzt2DAbXQkaOAQ0qyv%2FSCHEMATIC%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=109f57e7-8902-43bc-af7e-8a10d8a8aa3f">https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2Fw0qzt2DAbXQkaOAQ0qyv%2FSCHEMATIC%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=109f57e7-8902-43bc-af7e-8a10d8a8aa3f</a></td></tr><tr><td align="center"><mark style="color:green;"><strong>Dimensiones</strong></mark></td><td><a href="https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FY5HyRWPLPz3m5NzwPza0%2FDIMENSIONS%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=e26e6631-9fb7-4c44-84d9-00cb6eb189a6">https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FY5HyRWPLPz3m5NzwPza0%2FDIMENSIONS%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=e26e6631-9fb7-4c44-84d9-00cb6eb189a6</a></td><td><a href="https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FY5HyRWPLPz3m5NzwPza0%2FDIMENSIONS%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=e26e6631-9fb7-4c44-84d9-00cb6eb189a6">https://2111342482-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FY5HyRWPLPz3m5NzwPza0%2FDIMENSIONS%20XC01%20-%20MCU%20WIFI%20BLE%20(ESP32-WROOM-32).pdf?alt=media&#x26;token=e26e6631-9fb7-4c44-84d9-00cb6eb189a6</a></td></tr></tbody></table>


---

# 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/plataforma-xide-iot/x-nodes/xc01-controlador-wifi-and-bluetooth/r4/x-node-xc01-esp32-wroom-controlador-wifi-and-bluetooth-r4.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.
