diff --git a/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Buletooth_Usage.md b/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Bluetooth_Usage.md similarity index 66% rename from sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Buletooth_Usage.md rename to sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Bluetooth_Usage.md index f8c3db53adc142..bc92a24e1a8cf7 100644 --- a/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Buletooth_Usage.md +++ b/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Bluetooth_Usage.md @@ -4,16 +4,16 @@ description: Uso de Bluetooth con Seeed Studio XIAO ESP32-C5 keywords: - xiao - esp32c5 - - buletooth + - bluetooth image: https://files.seeedstudio.com/wiki/XIAO_ESP32C5/Getting_started/Seeed-Studio-XIAO-ESP32C5_1.webp -slug: /xiao_esp32c5_buletooth_usage +slug: /xiao_esp32c5_bluetooth_usage sidebar_class_name: hidden last_update: date: 01/06/2026 author: Zeller createdAt: '2026-01-06' updatedAt: '2026-01-19' -url: https://wiki.seeedstudio.com/es/xiao_esp32c5_buletooth_usage/ +url: https://wiki.seeedstudio.com/es/xiao_esp32c5_bluetooth_usage/ --- # Uso de Bluetooth con Seeed Studio XIAO ESP32-C5 @@ -30,27 +30,27 @@ url: https://wiki.seeedstudio.com/es/xiao_esp32c5_buletooth_usage/
- Obtener Uno Ahora 🖱️ + Consigue uno ahora 🖱️
-El Seeed Studio XIAO ESP32-C5 es una placa de desarrollo potente que soporta Bluetooth 5, BLE y redes Mesh, lo que la convierte en una opción ideal para una amplia gama de aplicaciones IoT que requieren conectividad inalámbrica. Con su rendimiento RF excepcional, el XIAO ESP32-C5 puede proporcionar comunicación inalámbrica confiable y de alta velocidad a través de una variedad de distancias, convirtiéndolo en una solución versátil tanto para aplicaciones inalámbricas de corto como de largo alcance. En este tutorial, nos enfocaremos en las características básicas de las capacidades Bluetooth del XIAO ESP32-C5, como cómo escanear dispositivos Bluetooth cercanos, cómo establecer una conexión Bluetooth y cómo transmitir y recibir datos a través de una conexión Bluetooth. +El Seeed Studio XIAO ESP32-C5 es una potente placa de desarrollo que soporta Bluetooth 5, BLE y redes Mesh, lo que la convierte en una opción ideal para una amplia gama de aplicaciones IoT que requieren conectividad inalámbrica. Con su excelente rendimiento de RF, el XIAO ESP32-C5 puede proporcionar una comunicación inalámbrica fiable y de alta velocidad a diversas distancias, lo que lo convierte en una solución versátil tanto para aplicaciones inalámbricas de corto como de largo alcance. En este tutorial, nos centraremos en las funciones básicas de las capacidades Bluetooth del XIAO ESP32-C5, como cómo escanear dispositivos Bluetooth cercanos, cómo establecer una conexión Bluetooth y cómo transmitir y recibir datos a través de una conexión Bluetooth. ## Introducción -### Instalación de Antena +### Instalación de la antena -Dentro del empaque del Seeed Studio XIAO ESP32-C5, hay un **conector de antena Wi-Fi/BT** dedicado. Para una intensidad de señal WiFi/Bluetooth óptima, necesitas sacar la antena incluida en el paquete y conectarla al conector.
-:::tip -Si quieres lograr un efecto de ganancia de señal más fuerte, puedes comprar e instalar una **Antena Externa 2.4G/5G con Conector RP-SMA Macho** — ¡proporciona una ganancia mucho mayor que la Antena FPC incorporada incluida en el paquete! +Dentro del embalaje del Seeed Studio XIAO ESP32-C5, hay un **conector de antena Wi-Fi/BT** dedicado. Para obtener una intensidad de señal WiFi/Bluetooth óptima, debes sacar la antena incluida en el paquete y conectarla al conector.
+ ## Uso de Bluetooth Low Energy (BLE) -Bluetooth Low Energy, BLE para abreviar, es una variante de Bluetooth que conserva energía. La aplicación principal de BLE es la transmisión de corta distancia de pequeñas cantidades de datos (ancho de banda bajo). A diferencia del Bluetooth que siempre está encendido, BLE permanece en modo de suspensión constantemente excepto cuando se inicia una conexión. +Bluetooth Low Energy, BLE para abreviar, es una variante de Bluetooth que ahorra energía. La aplicación principal de BLE es la transmisión a corta distancia de pequeñas cantidades de datos (bajo ancho de banda). A diferencia de Bluetooth, que está siempre encendido, BLE permanece constantemente en modo de suspensión excepto cuando se inicia una conexión. :::tip ESP32-C5 solo soporta BLE y no soporta Bluetooth Classic ::: -Debido a sus propiedades, BLE es adecuado para aplicaciones que necesitan intercambiar pequeñas cantidades de datos periódicamente funcionando con una pila de botón. Por ejemplo, BLE es de gran utilidad en las industrias de salud, fitness, seguimiento, balizas, seguridad y automatización del hogar. +Debido a sus propiedades, BLE es adecuado para aplicaciones que necesitan intercambiar pequeñas cantidades de datos periódicamente funcionando con una pila tipo moneda. Por ejemplo, BLE es de gran utilidad en las industrias de salud, fitness, rastreo, balizas, seguridad y automatización del hogar. Esto hace que consuma muy poca energía. BLE consume aproximadamente 100 veces menos energía que Bluetooth (dependiendo del caso de uso). -Sobre la parte BLE del XIAO ESP32-C5, introduciremos su uso en las siguientes tres secciones. +En cuanto a la parte BLE del XIAO ESP32-C5, presentaremos su uso en las siguientes tres secciones. -- [Algunos conceptos fundamentales](#algunos-conceptos-fundamentales) -- Primero conoceremos algunos conceptos que pueden usarse frecuentemente en BLE para ayudarnos a entender el proceso de ejecución y el pensamiento de los programas BLE. -- [Escáner BLE](#escáner-BLE) -- Esta sección explicará cómo buscar dispositivos Bluetooth cercanos e imprimirlos en el monitor serie. -- [Servidor/cliente BLE](#servidor-cliente-BLE) -- Esta sección explicará cómo usar XIAO ESP32-C5 como Servidor y Cliente para enviar y recibir mensajes de datos especificados. También se usará para recibir o enviar mensajes desde el teléfono a XIAO. +- [Algunos conceptos fundamentales](#Algunos-conceptos-fundamentales) -- Primero conoceremos algunos conceptos que pueden usarse con frecuencia en BLE para ayudarnos a entender el proceso de ejecución y el pensamiento de los programas BLE. +- [Escáner BLE](#BLE-escáner) -- Esta sección explicará cómo buscar dispositivos Bluetooth cercanos e imprimirlos en el monitor serie. +- [Servidor/cliente BLE](#Servidorcliente-BLE) -- Esta sección explicará cómo usar el XIAO ESP32-C5 como servidor y cliente para enviar y recibir mensajes de datos específicos. También se utilizará para recibir o enviar mensajes desde el teléfono al XIAO. ### Algunos conceptos fundamentales -#### Servidor y Cliente +#### Servidor y cliente Con Bluetooth Low Energy, hay dos tipos de dispositivos: el servidor y el cliente. El XIAO ESP32-C5 puede actuar como cliente o como servidor. -El servidor anuncia su existencia, para que pueda ser encontrado por otros dispositivos, y contiene los datos que el cliente puede leer. El cliente escanea los dispositivos cercanos, y cuando encuentra el servidor que está buscando, establece una conexión y escucha los datos entrantes. Esto se llama comunicación punto a punto. +El servidor anuncia su existencia, de modo que pueda ser encontrado por otros dispositivos, y contiene los datos que el cliente puede leer. El cliente escanea los dispositivos cercanos y, cuando encuentra el servidor que busca, establece una conexión y escucha los datos entrantes. A esto se le llama comunicación punto a punto.
#### Atributo -Atributo es en realidad un fragmento de datos. Cada dispositivo Bluetooth se usa para proporcionar un servicio, y el servicio es una colección de datos, la colección puede llamarse una base de datos, cada entrada en la base de datos es un Atributo, así que aquí traduzco Atributo como entradas de datos. Puedes imaginar un dispositivo Bluetooth como una tabla, cada fila dentro de la tabla es un Atributo. +Un atributo es en realidad un fragmento de datos. Cada dispositivo Bluetooth se utiliza para proporcionar un servicio, y el servicio es una colección de datos; a la colección se le puede llamar base de datos, y cada entrada en la base de datos es un atributo, así que aquí traduzco Attribute como entradas de datos. Puedes imaginar un dispositivo Bluetooth como una tabla, y cada fila dentro de la tabla es un atributo.
#### GATT -Cuando dos dispositivos Bluetooth establecen una conexión, necesitan un protocolo para determinar cómo comunicarse. GATT (Generic Attribute Profile) es tal protocolo que define cómo se transmiten los datos entre dispositivos Bluetooth. +Cuando dos dispositivos Bluetooth establecen una conexión, necesitan un protocolo para determinar cómo comunicarse. GATT (Generic Attribute Profile) es dicho protocolo que define cómo se transmiten los datos entre dispositivos Bluetooth. -En el protocolo GATT, las funciones y propiedades de un dispositivo se organizan en estructuras llamadas servicios, características y descriptores. Un servicio representa un conjunto de funciones y características relacionadas proporcionadas por un dispositivo. Cada servicio puede incluir múltiples características, que definen una cierta propiedad o comportamiento del servicio, como datos de sensores o comandos de control. Cada característica tiene un identificador único y un valor, que puede ser leído o escrito para comunicarse. Los descriptores se usan para describir metadatos de características, como formato y permiso de acceso de valores de características. +En el protocolo GATT, las funciones y propiedades de un dispositivo se organizan en estructuras llamadas servicios, características y descriptores. Un servicio representa un conjunto de funciones y características relacionadas proporcionadas por un dispositivo. Cada servicio puede incluir múltiples características, que definen cierta propiedad o comportamiento del servicio, como datos de sensores o comandos de control. Cada característica tiene un identificador único y un valor, que se pueden leer o escribir para comunicarse. Los descriptores se utilizan para describir los metadatos de las características, como el formato y el permiso de acceso de los valores de las características. -Al usar el protocolo GATT, los dispositivos Bluetooth pueden comunicarse en diferentes escenarios de aplicación, como transmitir datos de sensores o controlar dispositivos remotos. +Mediante el uso del protocolo GATT, los dispositivos Bluetooth pueden comunicarse en diferentes escenarios de aplicación, como transmitir datos de sensores o controlar dispositivos remotos. #### Característica BLE -ATT significa Attribute Protocol. Es el mecanismo subyacente para el intercambio de datos en BLE. ATT se basa en un conjunto de comandos, como Requests, Responses, Notifications e Indications. En la Pila de Protocolos Bluetooth, ATT es la capa responsable de transportar datos, convirtiéndolo en el enfoque principal al analizar paquetes de datos Bluetooth. +ATT significa Attribute Protocol. Es el mecanismo subyacente para el intercambio de datos en BLE. ATT se basa en un conjunto de comandos, como Requests, Responses, Notifications e Indications. En la pila de protocolos Bluetooth, ATT es la capa responsable de transportar los datos, por lo que es el foco principal al analizar paquetes de datos Bluetooth. -Comando ATT, formalmente conocido como ATT PDU (Protocol Data Unit). Incluye 4 categorías: read, write, notify e indicate. Estos comandos pueden dividirse en dos tipos: Operaciones como **Write Request** e **Indication** requieren un reconocimiento del par, mientras que **Write Command** y **Notification** no. +El comando ATT, conocido formalmente como ATT PDU (Protocol Data Unit). Incluye 4 categorías: leer, escribir, notificar e indicar. Estos comandos se pueden dividir en dos tipos: Operaciones como **Write Request** e **Indication** requieren un acuse de recibo del par, mientras que **Write Command** y **Notification** no lo requieren. -Service y Characteristic se definen en la capa GATT. El lado Service proporciona el Service, el Service son los datos, y los datos son el atributo, y el Service y Characteristic son la presentación lógica de los datos, o los datos que el usuario puede ver se transforman eventualmente en Service y Characteristic. +Service y Characteristic se definen en la capa GATT. El lado del servicio proporciona el servicio, el servicio es el dato, y el dato es el atributo, y el servicio y la característica son la presentación lógica de los datos, o los datos que el usuario puede ver finalmente se transforman en servicio y característica. -Echemos un vistazo a cómo se ven el servicio y la característica desde una perspectiva móvil. nRF Connect es una aplicación que nos muestra muy visualmente cómo debería verse cada paquete. +Echemos un vistazo a cómo se ven el servicio y la característica desde la perspectiva de un dispositivo móvil. nRF Connect es una aplicación que nos muestra de forma muy visual cómo debería verse cada paquete.
-Como puedes ver, en la especificación Bluetooth, cada aplicación Bluetooth específica está compuesta por múltiples Services, y cada Service está compuesto por múltiples Characteristics. Una Characteristic consiste en un UUID, Properties y un Value. +Como puedes ver, en la especificación Bluetooth, cada aplicación Bluetooth específica se compone de múltiples servicios, y cada servicio se compone de múltiples características. Una característica consta de un UUID, propiedades y un valor.
-Properties se usan para describir los tipos y permisos de operaciones en una característica, como si soporta read, write, notify, etc. Esto es similar a las cuatro categorías incluidas en un ATT PDU. +Las propiedades se utilizan para describir los tipos y permisos de las operaciones sobre una característica, como si admite lectura, escritura, notificación, etc. Esto es similar a las cuatro categorías incluidas en una ATT PDU.
#### UUID -Cada servicio, característica y descriptor tienen un UUID (Universally Unique Identifier). Un UUID es un número único de 128 bits (16 bytes). Por ejemplo: +Cada servicio, característica y descriptor tiene un UUID (Universally Unique Identifier). Un UUID es un número único de 128 bits (16 bytes). Por ejemplo: ``` ea094cbd-3695-4205-b32d-70c1dea93c35 ``` -Hay UUIDs abreviados para todos los tipos, servicios y perfiles especificados en el [SIG (Bluetooth Special Interest Group)](https://www.bluetooth.com/specifications/gatt/services). Pero si tu aplicación necesita su propio UUID, puedes generarlo usando este [sitio web generador de UUID](https://www.uuidgenerator.net/). +Existen UUID abreviados para todos los tipos, servicios y perfiles especificados en el [SIG (Bluetooth Special Interest Group)](https://www.bluetooth.com/specifications/gatt/services). Pero si tu aplicación necesita su propio UUID, puedes generarlo usando este [sitio web generador de UUID](https://www.uuidgenerator.net/). -### Ejemplos de Uso de BLE +### Ejemplos de uso de BLE -A continuación, introduciremos cómo usar **Bluetooth Low Energy (BLE)** en el XIAO ESP32-C5 a través de varios ejemplos prácticos.
+A continuación, presentaremos cómo usar **Bluetooth Low Energy (BLE)** en el XIAO ESP32-C5 a través de varios ejemplos prácticos.
-Los ejemplos a continuación están implementados basados en el **Arduino IDE**. Si no has usado el Arduino IDE antes, por favor visita: [Introducción con Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/es/xiao_esp32c5_getting_started/) +Los ejemplos siguientes se implementan basados en el **Arduino IDE**. Si no has usado Arduino IDE antes, visita: [Primeros pasos con Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/es/xiao_esp32c5_getting_started/) #### Escáner BLE -En **modo Escáner BLE**, el XIAO ESP32-C5 actúa como **Central** u **Observer**. En lugar de establecer una conexión, **escucha** paquetes de Advertising transmitidos por otros dispositivos en el área circundante. +En el **modo Escáner BLE**, el XIAO ESP32-C5 actúa como **Central** o como **Observer**. En lugar de establecer una conexión, **escucha** los paquetes de Advertising emitidos por otros dispositivos en el área circundante. ##### Programa -- A continuación hay un fragmento de código de referencia que demuestra cómo usar el modo Escáner BLE en el XIAO ESP32-C5. +- A continuación se muestra un fragmento de código de referencia que demuestra cómo usar el modo Escáner BLE en el XIAO ESP32-C5. ```cpp #include @@ -194,22 +194,22 @@ void loop() { } ``` -##### Presentación del Efecto +##### Presentación del efecto -- Sube el código y abre el Monitor Serie; el XIAO ESP32-C5 escaneará dispositivos Bluetooth en el entorno circundante e imprimirá la información relevante. +- Sube el código y abre el Monitor Serie; el XIAO ESP32-C5 escaneará los dispositivos Bluetooth en el entorno cercano e imprimirá la información correspondiente.
#### Servidor/Cliente BLE -En modo Servidor BLE, crea un Servicio y Característica, transmite su presencia y espera a que otros dispositivos se conecten para leer y escribir datos.
-En modo Cliente BLE, el Cliente escanea un UUID de Servicio específico, inicia una conexión después de encontrar el Servidor, y lee o escribe los valores de las características del Servidor. +En el modo Servidor BLE, crea un Service y un Characteristic, transmite su presencia y espera a que otros dispositivos se conecten para leer y escribir datos.
+En el modo Cliente BLE, el Client escanea un Service UUID específico, inicia una conexión después de encontrar el Server y lee o escribe los valores de las características del Server. -##### Programa Servidor BLE +##### Programa de Servidor BLE A continuación, se utilizará un ejemplo de código para demostrar cómo configurar un Servidor BLE en el XIAO ESP32-C5. -- Código de Referencia +- Código de referencia ```cpp #include @@ -270,16 +270,16 @@ void loop() { } ``` -##### Presentación del Efecto +##### Presentación del efecto -- Sube el código, luego descarga la aplicación nRF Connect, escanea y descubre el dispositivo BLE (llamado **XIAO_ESP32C5_Server** como se mencionó anteriormente), y selecciónalo para establecer una conexión. +- Sube el código, luego descarga la app nRF Connect, escanea y descubre el dispositivo BLE (llamado **XIAO_ESP32C5_Server** como se mencionó anteriormente) y selecciónalo para establecer una conexión. -Mientras tanto, puedes buscar y descargar la aplicación **nRF Connect** en las principales tiendas de aplicaciones móviles, que permite a tu teléfono buscar y conectarse a dispositivos Bluetooth. +Mientras tanto, puedes buscar y descargar la app **nRF Connect** en las principales tiendas de aplicaciones móviles, lo que permite que tu teléfono busque y se conecte a dispositivos Bluetooth. - Android: [nRF Connect](https://play.google.com/store/apps/details?id=no.nordicsemi.android.mcp&hl=en) - IOS: [nRF Connect](https://apps.apple.com/us/app/nrf-connect-for-mobile/id1054362403) -Después de descargar el software, sigue los pasos mostrados a continuación para buscar y conectar el XIAO ESP32-C5, y verás el anuncio **Hello World from XIAO**. +Después de descargar el software, sigue los pasos que se muestran a continuación para buscar y conectar el XIAO ESP32-C5, y verás el mensaje anunciado **Hello World from XIAO**. @@ -290,12 +290,12 @@ Después de descargar el software, sigue los pasos mostrados a continuación par
-##### Programa Cliente BLE +##### Programa de Cliente BLE -A continuación, se utilizará un ejemplo de código para demostrar cómo configurar un Cliente BLE en el XIAO ESP32-C5. Para usar la funcionalidad de cliente, necesitas al menos dos dispositivos XIAO habilitados para Bluetooth: uno actuando como servidor para enviar datos, y el otro como cliente para recibir datos. +A continuación, se utilizará un ejemplo de código para demostrar cómo configurar un Cliente BLE en el XIAO ESP32-C5. Para usar la funcionalidad de cliente, necesitas al menos dos dispositivos XIAO con Bluetooth: uno actuando como servidor para enviar datos y el otro como cliente para recibirlos.
-Código de Referencia +Código de referencia ```cpp #include @@ -436,27 +436,27 @@ void scanAndConnect() {
-##### Presentación del Efecto +##### Presentación del efecto -- Sube el código, luego abre el Monitor Serie para observar — recibirás los datos Bluetooth enviados por el servidor. +- Sube el código y luego abre el Monitor Serie para observar: recibirás los datos Bluetooth enviados por el servidor.
:::tip -Al verificar la funcionalidad del cliente, necesitas cargar el programa del servidor a otro dispositivo XIAO con anticipación; de lo contrario, la verificación fallará. +Al verificar la funcionalidad del cliente, necesitas flashear previamente el programa del servidor en otro dispositivo XIAO; de lo contrario, la verificación fallará. ::: #### NimBLE-Arduino -La biblioteca nativa Arduino BLEDevice está basada en la pila de protocolos Bluedroid; ofrece funcionalidad completa pero consume una cantidad significativa de Flash y RAM. NimBLE es una pila de protocolos BLE completamente reescrita (derivada de Apache Mynewt), que presenta las siguientes ventajas: +La biblioteca nativa Arduino BLEDevice se basa en la pila de protocolos Bluedroid; ofrece funcionalidad completa pero consume una cantidad significativa de Flash y RAM. NimBLE es una pila de protocolos BLE completamente reescrita (derivada de Apache Mynewt), que presenta las siguientes ventajas: 1. Huella de memoria extremadamente baja (uso de RAM reducido en más del 50%). -2. Velocidad de conexión más rápida. +2. Mayor velocidad de conexión. -3. Compatibilidad de API: Está diseñada para ser casi completamente compatible con la sintaxis de la biblioteca BLE nativa de Arduino, requiriendo solo modificaciones en archivos de cabecera y ajustes menores de tipos. +3. Compatibilidad con la API: está diseñada para ser casi totalmente compatible con la sintaxis de la biblioteca BLE nativa de Arduino, requiriendo solo modificaciones en los archivos de cabecera y pequeños ajustes de tipos. -Puedes visitar el repositorio GitHub del autor: [NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino/tree/master) para más detalles.
+Puedes visitar el repositorio de GitHub del autor: [NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino/tree/master) para más detalles.
A continuación, implementaremos una función de escaneo Bluetooth basada en la biblioteca NimBLE-Arduino. @@ -468,7 +468,7 @@ A continuación, implementaremos una función de escaneo Bluetooth basada en la
-Código de Referencia +Código de referencia ```CPP #include @@ -567,23 +567,23 @@ void loop() {
-##### Presentación del Efecto +##### Presentación del efecto - Sube el código y abre el Monitor Serie para observar. También implementa la función de escaneo Bluetooth, pero con una velocidad de escaneo más rápida.
-#### Ejemplo: Conectando a Home Assistant +#### Ejemplo: Conexión a Home Assistant -En este punto, deberías haber obtenido una comprensión básica de los modos BLE del XIAO ESP32-C5. -A continuación, podemos poner manos a la obra en un proyecto más práctico: hacer que el XIAO ESP32-C5 simule un sensor de temperatura y humedad (o un simple interruptor de botón), y transmita periódicamente datos del sensor o estado a través de BLE. Home Assistant descubrirá automáticamente este dispositivo BLE y mostrará directamente los valores actuales de temperatura y humedad (o estado del botón) en la interfaz, sin necesidad de configuraciones de integración adicionales complejas.
-Este ejemplo simple demuestra completamente el gran potencial del ESP32-C5 en los campos del Internet de las Cosas (IoT) y hogares inteligentes: su bajo consumo de energía, facilidad de desarrollo y soporte listo para usar para dispositivos BLE pasivos permiten a cualquiera construir rápidamente su propia red de sensores inteligentes.
+Hasta este punto, deberías haber adquirido una comprensión básica de los modos BLE del XIAO ESP32-C5. +A continuación, podemos poner manos a la obra con un proyecto más práctico: hacer que el XIAO ESP32-C5 simule un sensor de temperatura y humedad (o un simple interruptor de botón) y transmita periódicamente datos del sensor o estados a través de BLE. Home Assistant descubrirá automáticamente este dispositivo BLE y mostrará directamente en la interfaz los valores actuales de temperatura y humedad (o el estado del botón), sin necesidad de configuraciones de integración complejas adicionales.
+Este sencillo ejemplo demuestra plenamente el gran potencial del ESP32-C5 en los campos del Internet de las Cosas (IoT) y los hogares inteligentes: su bajo consumo de energía, facilidad de desarrollo y compatibilidad lista para usar con dispositivos BLE pasivos permiten que cualquiera construya rápidamente su propia red de sensores inteligentes.
:::tip -Si nunca has usado Home Assistant, puedes visitar: [Conectando XIAO ESP32-C5 a Home Assistant](https://wiki.seeedstudio.com/es/xiao_esp32c5_homeassistant/) +Si nunca has usado Home Assistant, puedes visitar: [Conectar XIAO ESP32-C5 a Home Assistant](https://wiki.seeedstudio.com/es/xiao_esp32c5_homeassistant/) ::: -- Código de Referencia +- Código de referencia ```cpp #include @@ -652,13 +652,13 @@ void loop() { } ``` -- Sube el código y abre la plataforma Home Assistant. Puedes encontrar el dispositivo BTHome en **Settings** -> **Devices & Services** y agregarlo al panel de control. +- Sube el código y abre la plataforma Home Assistant. Puedes encontrar el dispositivo BTHome en **Settings** -> **Devices & Services** y añadirlo al panel.
-## Soporte Técnico y Discusión de Productos +## Soporte técnico y debate sobre el producto -¡Gracias por elegir nuestros productos! Estamos aquí para brindarte diferentes tipos de soporte para asegurar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades. +Gracias por elegir nuestros productos. Estamos aquí para ofrecerte diferentes tipos de soporte y garantizar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para adaptarnos a diferentes preferencias y necesidades.
diff --git a/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_WiFi_Usage.md b/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_WiFi_Usage.md index c260e616515641..c8b9aba2d8f4ce 100644 --- a/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_WiFi_Usage.md +++ b/sites/es/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_WiFi_Usage.md @@ -30,28 +30,28 @@ url: https://wiki.seeedstudio.com/es/xiao_esp32c5_wifi_usage/
-El Seeed Studio XIAO ESP32-C5 soporta Wi-Fi de banda dual 2.4 GHz y 5 GHz, con una radio Wi-Fi 6 (802.11ax) de banda dual con compatibilidad hacia atrás para los estándares 802.11a/b/g/n/ac. Además, esta placa de desarrollo soporta conectividad de antena U.FL, que está diseñada para mejorar el rendimiento de conexión inalámbrica del XIAO ESP32-C5. En este tutorial, exploraremos cómo aprovechar la funcionalidad Wi-Fi del XIAO ESP32-C5 para conectarse a una red Wi-Fi y realizar tareas básicas de red.
-El siguiente tutorial utiliza el Arduino IDE para compilación y carga. Si aún no tienes experiencia con el Arduino IDE, por favor visita [Introducción a Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/es/xiao_esp32c5_getting_started/).
+El Seeed Studio XIAO ESP32-C5 es compatible con Wi-Fi de doble banda de 2,4 GHz y 5 GHz, e incorpora una radio Wi-Fi 6 (802.11ax) de doble banda con compatibilidad retroactiva con los estándares 802.11a/b/g/n/ac. Además, esta placa de desarrollo admite conectividad de antena U.FL, diseñada para mejorar el rendimiento de la conexión inalámbrica del XIAO ESP32-C5. En este tutorial, exploraremos cómo aprovechar la funcionalidad Wi-Fi del XIAO ESP32-C5 para conectarse a una red Wi-Fi y realizar tareas básicas de red.
+El siguiente tutorial utiliza el Arduino IDE para la compilación y la carga. Si aún no tienes experiencia con el Arduino IDE, visita [Getting Started with Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/es/xiao_esp32c5_getting_started/).
## Introducción -### Instalación de Antena +### Instalación de la antena -Dentro del empaque del Seeed Studio XIAO ESP32-C5, hay un **conector de antena Wi-Fi/BT** dedicado. Para una intensidad óptima de señal WiFi/Bluetooth, necesitas sacar la antena incluida en el paquete y conectarla al conector.
-:::tip -Si quieres lograr un efecto de ganancia de señal más fuerte, puedes comprar e instalar **Antena Externa 2.4G/5G con Conector RP-SMA Macho** — ¡ofrece mucha mayor ganancia que la Antena FPC incorporada incluida en el paquete! +Dentro del embalaje del Seeed Studio XIAO ESP32-C5, hay un **conector de antena Wi-Fi/BT** dedicado. Para obtener una intensidad óptima de la señal WiFi/Bluetooth, debes sacar la antena incluida en el paquete y conectarla al conector.
+ -## Las interfaces comunes de la biblioteca WiFi +## Interfaces comunes de la biblioteca WiFi -- XIAO ESP32-C5 proporciona una amplia gama de funciones de red Wi-Fi. Generalmente, podemos ver las funciones de la biblioteca WiFi en el paquete incorporado del ESP32 y elegir la función correspondiente para lograr la funcionalidad deseada. A continuación, listaremos algunas interfaces comúnmente utilizadas e introduciremos su uso. +- XIAO ESP32-C5 proporciona una amplia gama de funciones de red Wi-Fi. En general, podemos consultar las funciones de la biblioteca WiFi en el paquete integrado del ESP32 y elegir la función correspondiente para lograr la funcionalidad deseada. A continuación, enumeraremos algunas interfaces de uso común e introduciremos su uso. :::tip -Si quieres comenzar directamente el tutorial de uso de Wi-Fi, puedes saltar a [Ejemplos de Uso de WiFi](#ejemplos-de-uso-de-wifi). +Si deseas comenzar directamente con el tutorial de uso de Wi-Fi, puedes saltar a [WiFi Usage Examples](#WiFi-Usage-Examples). ::: -### Función WiFi genérica +### Función genérica de WiFi -- `WiFiGenericClass::getHostname()` -- Es una función en la biblioteca WiFi para ESP32 que devuelve el nombre de host del dispositivo como una cadena. El nombre de host es un nombre único que identifica el dispositivo en la red. Esta función recupera el nombre de host que fue previamente establecido usando `WiFiGenericClass::setHostname()`. Si no se ha establecido ningún nombre de host, se devolverá el nombre de host predeterminado. +- `WiFiGenericClass::getHostname()` -- Es una función de la biblioteca WiFi para ESP32 que devuelve el nombre de host del dispositivo como una cadena. El nombre de host es un nombre único que identifica el dispositivo en la red. Esta función recupera el nombre de host que se estableció previamente usando `WiFiGenericClass::setHostname()`. Si no se ha establecido ningún nombre de host, se devolverá el nombre de host predeterminado. -- `WiFiGenericClass::persistent(bool persistent)` -- Es un método que se utiliza para habilitar o deshabilitar el modo persistente de la biblioteca WiFi ESP32. Cuando el modo persistente está habilitado, la configuración Wi-Fi se almacena en memoria no volátil (NVM) y se retiene incluso después de un ciclo de energía o reinicio. Cuando el modo persistente está deshabilitado, la configuración se almacena en RAM y se pierde después de un ciclo de energía o reinicio. +- `WiFiGenericClass::persistent(bool persistent)` -- Es un método que se utiliza para habilitar o deshabilitar el modo persistente de la biblioteca WiFi del ESP32. Cuando el modo persistente está habilitado, la configuración de Wi-Fi se almacena en memoria no volátil (NVM) y se conserva incluso después de un ciclo de alimentación o un reinicio. Cuando el modo persistente está deshabilitado, la configuración se almacena en la RAM y se pierde después de un ciclo de alimentación o un reinicio. - - **Parámetros de Entrada** - - **persistent**: Si el argumento es true, el modo persistente está habilitado. Si el argumento es false, el modo persistente está deshabilitado. + - **Parámetros de entrada** + - **persistent**: Si el argumento es true, el modo persistente se habilita. Si el argumento es false, el modo persistente se deshabilita. -- `WiFiGenericClass::enableLongRange(bool enable)` -- La función se utiliza para habilitar o deshabilitar la característica de Largo Alcance (LR) del módulo WiFi. Cuando está habilitada, la característica LR permite al módulo conectarse a redes WiFi que están más lejos de lo usual, pero con velocidades de datos más bajas. +- `WiFiGenericClass::enableLongRange(bool enable)` -- La función se utiliza para habilitar o deshabilitar la función de largo alcance (Long Range, LR) del módulo WiFi. Cuando está habilitada, la función LR permite que el módulo se conecte a redes WiFi que están más alejadas de lo habitual, pero con menores velocidades de datos. - - **Parámetros de Entrada** - - **enable**: El parámetro debe establecerse en true para habilitar la característica y false para deshabilitarla. + - **Parámetros de entrada** + - **enable**: El parámetro debe establecerse en true para habilitar la función y en false para deshabilitarla. - `WiFiGenericClass::mode(wifi_mode_t m)` -- La función se utiliza para establecer el modo WiFi del dispositivo. - - **Parámetros de Entrada** - - **m**: El parámetro m especifica el modo a establecer, que puede ser una de las siguientes constantes definidas en el enum wifi_mode_t: - - **WIFI_MODE_NULL**: Deshabilita tanto el modo estación WiFi como el modo punto de acceso. + - **Parámetros de entrada** + - **m**: El parámetro m especifica el modo a configurar, que puede ser una de las siguientes constantes definidas en el enum wifi_mode_t: + - **WIFI_MODE_NULL**: Desactiva tanto el modo estación WiFi como el modo punto de acceso. - **WIFI_MODE_STA**: Habilita el modo estación WiFi para conectarse a una red WiFi existente. - **WIFI_MODE_AP**: Habilita el modo punto de acceso para crear una nueva red WiFi. - **WIFI_MODE_APSTA**: Habilita tanto el modo estación WiFi como el modo punto de acceso. - `WiFiGenericClass::setSleep(wifi_ps_type_t sleepType)` -- La función establece el modo de ahorro de energía para el módulo WiFi. - - **Parámetros de Entrada** - - **sleepType**: El parámetro sleepType es un tipo enumerado que especifica el tipo de modo de ahorro de energía a usar. Hay tres tipos de suspensión posibles: - - **WIFI_PS_NONE**: Este es el modo de suspensión predeterminado, en el cual el módulo WiFi no entra en modo de ahorro de energía. - - **WIFI_PS_MIN_MODEM**: En este modo, el módulo WiFi apaga su módem mientras mantiene la conexión al punto de acceso (AP). - - **WIFI_PS_MAX_MODEM**: Habilita el modo de ahorro de energía Wi-Fi más agresivo. Puede aumentar significativamente el tiempo de suspensión, pero puede introducir mayor latencia y rendimiento reducido, y en algunas redes puede afectar la estabilidad de la conexión. + - **Parámetros de entrada** + - **sleepType**: El parámetro sleepType es un tipo enumerado que especifica el tipo de modo de ahorro de energía que se va a utilizar. Hay tres tipos de suspensión posibles: + - **WIFI_PS_NONE**: Este es el modo de suspensión predeterminado, en el que el módulo WiFi no entra en modo de ahorro de energía. + - **WIFI_PS_MIN_MODEM**: En este modo, el módulo WiFi apaga su módem mientras mantiene la conexión con el punto de acceso (AP). + - **WIFI_PS_MAX_MODEM**: Habilita el modo de ahorro de energía Wi-Fi más agresivo. Puede aumentar significativamente el tiempo de suspensión, pero puede introducir mayor latencia y menor rendimiento, y en algunas redes puede afectar a la estabilidad de la conexión. ### Funciones STA -- `WiFiSTAClass::status()` -- Devuelve el estado de conexión. +- `WiFiSTAClass::status()` -- Devuelve el estado de la conexión. - **Salida**: uno de los valores definidos en wl_status_t. - **WL_NO_SHIELD**: Este código de estado indica que el módulo Wi-Fi no está presente. - **WL_IDLE_STATUS**: Este código de estado indica que el módulo Wi-Fi no está realizando ninguna operación. - **WL_NO_SSID_AVAIL**: Este código de estado indica que no se encontraron redes Wi-Fi durante el escaneo. - - **WL_SCAN_COMPLETED**: Este código de estado indica que el escaneo Wi-Fi se ha completado exitosamente. - - **WL_CONNECTED**: Este código de estado indica que el ESP32 está conectado exitosamente a una red Wi-Fi. + - **WL_SCAN_COMPLETED**: Este código de estado indica que el escaneo Wi-Fi se ha completado correctamente. + - **WL_CONNECTED**: Este código de estado indica que el ESP32 está conectado correctamente a una red Wi-Fi. - **WL_CONNECT_FAILED**: Este código de estado indica que la conexión a la red Wi-Fi falló. - - **WL_CONNECTION_LOST**: Este código de estado indica que la conexión a la red Wi-Fi se perdió. + - **WL_CONNECTION_LOST**: Este código de estado indica que se perdió la conexión con la red Wi-Fi. - **WL_DISCONNECTED**: Este código de estado indica que el ESP32 estaba previamente conectado a una red Wi-Fi, pero actualmente no está conectado a ninguna red. -- `WiFiSTAClass::begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity, const char* wpa2_username, const char *wpa2_password, const char* ca_pem, const char* client_crt, const char* client_key, int32_t channel, const uint8_t* bssid, bool connect)` -- Iniciar conexión Wifi con un AP WPA2 Enterprise. +- `WiFiSTAClass::begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity, const char* wpa2_username, const char *wpa2_password, const char* ca_pem, const char* client_crt, const char* client_key, int32_t channel, const uint8_t* bssid, bool connect)` -- Inicia la conexión WiFi con un punto de acceso WPA2 Enterprise. - - **Parámetros de Entrada** (Opcional) + - **Parámetros de entrada** (Opcionales) - **ssid**: Puntero a la cadena SSID. - **method**: El método de autenticación de WPA2 (WPA2_AUTH_TLS, WPA2_AUTH_PEAP, WPA2_AUTH_TTLS) - - **wpa2_identity**: Puntero a la entidad - - **wpa2_username**: Puntero al nombre de usuario + - **wpa2_identity**: Puntero a la entidad. + - **wpa2_username**: Puntero al nombre de usuario. - **wpa2_password**: Puntero a la contraseña. - - **ca_pem**: Puntero a una cadena con el contenido de un archivo .pem con certificado CA - - **client_crt**: Puntero a una cadena con el contenido de un archivo .crt con certificado de cliente - - **client_key**: Puntero a una cadena con el contenido de un archivo .key con clave de cliente - - **channel**: Opcional. Canal del AP - - **bssid**: Opcional. BSSID / MAC del AP - - **connect**: Opcional. llamar connect + - **ca_pem**: Puntero a una cadena con el contenido de un archivo .pem con el certificado de la CA. + - **client_crt**: Puntero a una cadena con el contenido de un archivo .crt con el certificado de cliente. + - **client_key**: Puntero a una cadena con el contenido de un archivo .key con la clave de cliente. + - **channel**: Opcional. Canal del AP. + - **bssid**: Opcional. BSSID / MAC del AP. + - **connect**: Opcional. Llamar a connect. - `WiFiSTAClass::reconnect()` -- Forzará una desconexión y luego comenzará a reconectarse al AP. - **Salida**: True/False. -- `WiFiSTAClass::disconnect(bool wifioff, bool eraseap)` -- Desconectar de la red. +- `WiFiSTAClass::disconnect(bool wifioff, bool eraseap)` -- Desconectarse de la red. - - **Parámetros de Entrada** + - **Parámetros de entrada** - **wifioff**: wifioff `true` para apagar la radio Wi-Fi. - **eraseap**: eraseap `true` para borrar la configuración del AP de la memoria NVS. - **Salida**: True/False. -- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- Cambiar configuraciones de IP deshabilitando el cliente dhcp. +- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- Cambia la configuración de IP deshabilitando el cliente DHCP. - - **Parámetros de Entrada** - - **local_ip**: Configuración de ip estática. + - **Parámetros de entrada** + - **local_ip**: Configuración de IP estática. - **gateway**: Configuración de puerta de enlace estática. - **subnet**: Máscara de subred estática. - **dns1**: Servidor DNS estático 1. - **dns2**: Servidor DNS estático 2. -- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- Obsoleto. Configurar la estación ESP32 para conectarse al AP (que está registrado) automáticamente o no cuando se enciende. Habilitar auto-conexión por defecto. +- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- Obsoleto. Configura la estación ESP32 para conectarse automáticamente o no al AP (que está registrado) cuando se enciende. La auto-conexión está habilitada de forma predeterminada. - - **Parámetros de Entrada** - - **autoConnect**: autoConnect bool. + - **Parámetros de entrada** + - **autoConnect**: Booleano autoConnect. - **Salida**: False. -- `WiFiSTAClass::waitForConnectResult(unsigned long timeoutLength)` -- Esperar a que la conexión WiFi alcance un resultado. +- `WiFiSTAClass::waitForConnectResult(unsigned long timeoutLength)` -- Espera a que la conexión WiFi alcance un resultado. - - **Parámetros de Entrada** - - **timeoutLength**: El parámetro especifica la cantidad máxima de tiempo a esperar para que se establezca una conexión, en milisegundos. + - **Parámetros de entrada** + - **timeoutLength**: El parámetro especifica la cantidad máxima de tiempo de espera para que se establezca una conexión, en milisegundos. - **Salida**: uno de los valores definidos en wl_status_t. -- `WiFiSTAClass::localIP()` -- Obtener la dirección IP de la interfaz de estación. +- `WiFiSTAClass::localIP()` -- Obtiene la dirección IP de la interfaz de estación. - - **Salida**: IPAddress IP de estación. + - **Salida**: IPAddress de la IP de la estación. -- `WiFiSTAClass::macAddress(uint8_t* mac)` -- Obtener la dirección MAC de la interfaz de estación. +- `WiFiSTAClass::macAddress(uint8_t* mac)` -- Obtiene la dirección MAC de la interfaz de estación. - - **Parámetros de Entrada** - - **mac** (Opcional): Puntero a array uint8_t con longitud WL_MAC_ADDR_LENGTH. + - **Parámetros de entrada** + - **mac** (Opcional): Puntero a un array uint8_t con longitud WL_MAC_ADDR_LENGTH. - **Salida**: Puntero a uint8_t *. - `WiFiSTAClass::SSID()` -- Devuelve el SSID actual asociado con la red. - - **Salida**: SSID. + - **Output**: SSID. - `WiFiSTAClass::RSSI(void)` -- Devuelve el RSSI actual de la red. - - **Salida**: RSSI. + - **Output**: RSSI. -### Funciones AP +### Funciones de AP -- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- Esta es una función en la biblioteca WiFi del XIAO ESP32-C5. Se utiliza para configurar un SoftAP (Punto de acceso programático), que permite a otros dispositivos conectarse al XIAO ESP32-C5 y acceder a sus recursos. +- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- Esta es una función de la biblioteca WiFi de XIAO ESP32-C5. Se utiliza para configurar un SoftAP (punto de acceso programado), que permite que otros dispositivos se conecten al XIAO ESP32-C5 y accedan a sus recursos. - - **Parámetros de Entrada** + - **Input Parameters** - **ssid**: Puntero al SSID (máx. 63 caracteres). - **passphrase**: (Para WPA2 mín. 8 caracteres, para abierto usar NULL). - **channel**: Número de canal WiFi, 1 - 13. - - **ssid_hidden**: Ocultación de red (0 = transmitir SSID, 1 = ocultar SSID). + - **ssid_hidden**: Enmascaramiento de red (0 = difundir SSID, 1 = ocultar SSID). - **max_connection**: Máximo de clientes conectados simultáneamente, 1 - 4. - - **Salida**: True/False. + - **Output**: True/False. -- `WiFiAPClass::softAPgetStationNum()` -- Obtiene el recuento de las estaciones/clientes que están conectados a la interfaz softAP. +- `WiFiAPClass::softAPgetStationNum()` -- Obtiene el número de estaciones / clientes que están conectados a la interfaz softAP. - - **Salida**: Recuento de estaciones. + - **Output**: Conteo de estaciones. -- `WiFiAPClass::softAPConfig(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dhcp_lease_start)` -- Una función para configurar SoftAP. +- `WiFiAPClass::softAPConfig(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dhcp_lease_start)` -- Una función para configurar el SoftAP. - - **Parámetros de Entrada** + - **Input Parameters** - **local_ip**: IP del punto de acceso. - **gateway**: IP de la puerta de enlace. - **subnet**: Máscara de subred. - - **Salida**: True/False. + - **Output**: True/False. - `WiFiAPClass::softAPIP()` -- Obtiene la dirección IP de la interfaz softAP. - - **Salida**: IPAddress IP del softAP. + - **Output**: IPAddress IP del softAP. - `WiFiAPClass::softAPmacAddress(uint8_t* mac)` -- Obtiene la dirección MAC de la interfaz softAP. - - **Parámetros de Entrada** - - **mac** (Opcional): Puntero a array uint8_t con longitud WL_MAC_ADDR_LENGTH. + - **Input Parameters** + - **mac** (Optional): Puntero a un array de uint8_t con longitud WL_MAC_ADDR_LENGTH. - - **Salida**: Puntero a uint8_t* o String mac. + - **Output**: Puntero a uint8_t* o String mac. -### Función de Escaneo WiFi +### Función de escaneo WiFi -- `WiFiScanClass::scanNetworks(bool async, bool show_hidden, bool passive, uint32_t max_ms_per_chan, uint8_t channel, const char * ssid, const uint8_t * bssid)` -- Inicia el escaneo de redes WiFi disponibles. +- `WiFiScanClass::scanNetworks(bool async, bool show_hidden, bool passive, uint32_t max_ms_per_chan, uint8_t channel, const char * ssid, const uint8_t * bssid)` -- Inicia el escaneo de las redes WiFi disponibles. - - **Parámetros de Entrada** - - **async**: El parámetro es un valor booleano que determina si el escaneo debe realizarse de forma asíncrona. Si se establece en true, la función regresa inmediatamente y los resultados del escaneo se pueden obtener más tarde llamando a la función getScanResults(). Si se establece en false, la función se bloqueará hasta que el escaneo esté completo. + - **Input Parameters** + - **async**: El parámetro es un valor booleano que determina si el escaneo debe realizarse de forma asíncrona. Si se establece en true, la función devuelve inmediatamente y los resultados del escaneo se pueden obtener más tarde llamando a la función getScanResults(). Si se establece en false, la función se bloqueará hasta que el escaneo se complete. - **show_hidden**: El parámetro es un valor booleano que determina si la función debe incluir redes ocultas en los resultados del escaneo. - - **passive**: El parámetro es un valor booleano que determina si la función debe realizar un escaneo pasivo. Si se establece en true, la función no transmitirá ningún paquete durante el escaneo, lo que puede tomar más tiempo pero puede ser útil en ciertas situaciones. - - **max_ms_per_chan**: El parámetro es el tiempo máximo para gastar escaneando cada canal en milisegundos. - - **channel**: El parámetro es el canal Wi-Fi a escanear. Si se establece en 0, la función escaneará todos los canales disponibles. + - **passive**: El parámetro es un valor booleano que determina si la función debe realizar un escaneo pasivo. Si se establece en true, la función no transmitirá ningún paquete durante el escaneo, lo que puede tardar más pero puede ser útil en ciertas situaciones. + - **max_ms_per_chan**: El parámetro es el tiempo máximo que se dedicará a escanear cada canal en milisegundos. + - **channel**: El parámetro es el canal Wi-Fi que se va a escanear. Si se establece en 0, la función escaneará todos los canales disponibles. - **ssid**: El parámetro es un puntero a una cadena terminada en null que contiene el SSID de la red a buscar. Si se establece en nullptr, la función escaneará todas las redes disponibles. - **bssid**: El parámetro es un puntero a un array de 6 bytes que contiene la dirección MAC del punto de acceso a buscar. Si se establece en nullptr, la función escaneará todos los puntos de acceso. - - **Salida**: El valor de retorno de esta función es un entero que indica el número de redes escaneadas. + - **Output**: El valor de retorno de esta función es un entero que indica el número de redes escaneadas. -- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- Carga toda la información de una red wifi escaneada en los parámetros ptr. +- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- Carga toda la información de una red WiFi escaneada en los parámetros puntero. - - **Parámetros de Entrada** - - **i**: La función se utiliza para recuperar información sobre una red escaneada en un índice especificado i. + - **Input Parameters** + - **i**: La función se utiliza para obtener información sobre una red escaneada en el índice i especificado. - **ssid**: El parámetro ssid es una referencia a una variable String donde la función almacena el SSID de la red. - - **encType**: El parámetro encType es una referencia a una variable uint8_t donde la función almacena el tipo de cifrado de la red (0 = abierto, 1 = WEP, 2 = WPA_PSK, 3 = WPA2_PSK, 4 = WPA_WPA2_PSK). - - **rssi**: El parámetro rssi es una referencia a una variable int32_t donde la función almacena la indicación de intensidad de señal recibida (RSSI) de la red. + - **encType**: El parámetro encType es una referencia a una variable uint8_t donde la función almacena el tipo de cifrado de la red (0 = abierta, 1 = WEP, 2 = WPA_PSK, 3 = WPA2_PSK, 4 = WPA_WPA2_PSK). + - **rssi**: El parámetro rssi es una referencia a una variable int32_t donde la función almacena la intensidad de la señal recibida (RSSI) de la red. - **bssid**: El parámetro bssid es una referencia a un puntero uint8_t* donde la función almacena el BSSID (dirección MAC) de la red. - **channel**: El parámetro channel es una referencia a una variable int32_t donde la función almacena el número de canal de la red. - - **Salida**: True/False. + - **Output**: True/False. -- `WiFiScanClass::SSID(uint8_t i)` -- Devuelve el SSID descubierto durante el escaneo de red. +- `WiFiScanClass::SSID(uint8_t i)` -- Devuelve el SSID descubierto durante el escaneo de la red. - - **Parámetros de Entrada** - - **i**: Especifica de qué elemento de red se quiere obtener la información. + - **Input Parameters** + - **i**: Especifica de qué elemento de red se desea obtener la información. - - **Salida**: Cadena SSID del elemento especificado en la lista de redes escaneadas. + - **Output**: Cadena SSID del elemento especificado en la lista de redes escaneadas. - `WiFiScanClass::RSSI(uint8_t i)` -- Devuelve el RSSI de las redes descubiertas durante el scanNetworks. - - **Parámetros de Entrada** - - **i**: Especifica de qué elemento de red se quiere obtener la información. + - **Input Parameters** + - **i**: Especifica de qué elemento de red se desea obtener la información. - - **Salida**: Valor con signo del RSSI del elemento especificado en la lista de redes escaneadas. + - **Output**: Valor con signo del RSSI del elemento especificado en la lista de redes escaneadas. -### Funciones de Cliente WiFi +### Funciones de cliente WiFi -- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- Esta función se utiliza en la biblioteca WiFiClient para conectarse a una dirección IP remota y puerto con un valor de tiempo de espera especificado. +- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- Esta función se utiliza en la biblioteca WiFiClient para conectarse a una dirección IP y puerto remotos con un valor de tiempo de espera especificado. - - **Parámetros de Entrada** + - **Input Parameters** - **ip**: La dirección IP del servidor al que conectarse. - **port**: El número de puerto del servidor al que conectarse. - - **timeout** (Opcional): El tiempo máximo para esperar a que se establezca la conexión, en milisegundos. Si la conexión no se establece dentro de este tiempo, la función devolverá un error. Si timeout se establece en 0, la función esperará indefinidamente a que se establezca la conexión. + - **timeout** (Optional): El tiempo máximo de espera para que se establezca la conexión, en milisegundos. Si la conexión no se establece dentro de este tiempo, la función devolverá un error. Si timeout se establece en 0, la función esperará indefinidamente a que se establezca la conexión. -- `WiFiClient::stop()` -- La función se utiliza para desconectar el cliente del servidor y liberar el socket/puerto utilizado por el cliente. Una vez que se llama a la función, el cliente ya no puede enviar o recibir datos. +- `WiFiClient::stop()` -- La función se utiliza para desconectar el cliente del servidor y liberar el socket/puerto utilizado por el cliente. Una vez que se llama a la función, el cliente ya no puede enviar ni recibir datos. -- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- La función establece el número máximo de milisegundos que el cliente esperará para que se establezca una conexión o se reciban datos. Si la conexión o transferencia de datos toma más tiempo que el tiempo de espera especificado, la conexión se cerrará. +- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- La función establece el número máximo de milisegundos que el cliente esperará a que se establezca una conexión o se reciban datos. Si la conexión o la transferencia de datos tarda más que el tiempo de espera especificado, la conexión se cerrará. - - **Parámetros de Entrada** + - **Input Parameters** - **timeout_ms**: El número de milisegundos para el tiempo de espera. -- `WiFiClient::write(uint8_t data)` -- Escribe un solo byte de datos al servidor conectado a través de la instancia WiFiClient. O `WiFiClient::write(const uint8_t *buf, size_t size)`. +- `WiFiClient::write(uint8_t data)` -- Escribe un solo byte de datos en el servidor conectado a través de la instancia WiFiClient. O `WiFiClient::write(const uint8_t *buf, size_t size)`. - - **Parámetros de Entrada** - - **data**: Es un solo byte de datos que necesita ser enviado a través de la conexión de red establecida. + - **Input Parameters** + - **data**: Es un solo byte de datos que debe enviarse a través de la conexión de red establecida. -- `WiFiClient::read()` -- La función lee un solo byte de datos entrantes del servidor conectado. Devuelve el byte leído como un valor entero. Si no hay datos disponibles, devuelve -1. O `read(uint8_t *buf, size_t size)`. +- `WiFiClient::read()` -- La función lee un solo byte de datos entrantes desde el servidor conectado. Devuelve el byte leído como un valor entero. Si no hay datos disponibles, devuelve -1. O `read(uint8_t *buf, size_t size)`. - - **Salida**: Un valor entero que indica el número de bytes recibidos. Si el valor de retorno es 0, significa que el servidor ha cerrado la conexión. + - **Output**: Un valor entero que indica el número de bytes recibidos. Si el valor de retorno es 0, significa que el servidor ha cerrado la conexión. -- `WiFiClient::peek()` -- La función se utiliza para verificar si hay datos disponibles para ser leídos del servidor sin realmente leerlos. +- `WiFiClient::peek()` -- La función se utiliza para comprobar si hay datos disponibles para ser leídos desde el servidor sin leerlos realmente. - - **Salida**: Devuelve el siguiente byte de datos entrantes sin eliminarlo del búfer de recepción. Si no hay datos disponibles, devuelve -1. + - **Output**: Devuelve el siguiente byte de datos entrantes sin eliminarlo del búfer de recepción. Si no hay datos disponibles, devuelve -1. -- `WiFiClient::available()` -- La función se utiliza para verificar cuántos bytes de datos están disponibles para ser leídos del servidor. +- `WiFiClient::available()` -- La función se utiliza para comprobar cuántos bytes de datos están disponibles para ser leídos desde el servidor. - - **Salida**: Devuelve un valor entero que representa el número de bytes disponibles para ser leídos. + - **Output**: Devuelve un valor entero que representa el número de bytes disponibles para leer. -### Función de Servidor WiFi +### Función de servidor WiFi -- `WiFiServer::stopAll()` -- Esta función es un método de la clase WiFiServer en la biblioteca WiFi de Arduino. Este método detiene todas las instancias de servidor que se crean usando la clase WiFiServer. Es útil cuando quieres detener todos los servidores a la vez en lugar de llamar al método `stop()` para cada instancia individualmente. +- `WiFiServer::stopAll()` -- Esta función es un método de la clase WiFiServer en la biblioteca WiFi de Arduino. Este método detiene todas las instancias de servidor que se han creado usando la clase WiFiServer. Es útil cuando se desea detener todos los servidores a la vez en lugar de llamar al método `stop()` para cada instancia individualmente. -- `WiFiServer::begin(uint16_t port, int enable)` -- La función se utiliza para iniciar un servidor en el puerto especificado. El servidor escuchará las conexiones de clientes entrantes. +- `WiFiServer::begin(uint16_t port, int enable)` -- La función se utiliza para iniciar un servidor en el puerto especificado. El servidor escuchará conexiones de clientes entrantes. - - **Parámetros de Entrada** + - **Input Parameters** - **port**: El número de puerto en el que escuchar. - - **enable** (Opcional): Una bandera para indicar si el servidor debe habilitarse inmediatamente después de iniciarse. Esta bandera se establece en true por defecto. + - **enable** (Optional): Una marca para indicar si el servidor debe habilitarse inmediatamente después de iniciarse. Esta marca se establece en true de forma predeterminada. -- `WiFiServer::hasClient()` -- La función se utiliza para verificar si hay conexiones de clientes entrantes disponibles en el servidor. Esta función se puede usar en un bucle para verificar continuamente nuevas conexiones. +- `WiFiServer::hasClient()` -- La función se utiliza para comprobar si hay conexiones de clientes entrantes disponibles en el servidor. Esta función se puede utilizar en un bucle para comprobar continuamente si hay nuevas conexiones. - - **Salida**: Devuelve un objeto WiFiClient si un cliente se ha conectado o un puntero NULL si no hay clientes esperando conectarse. + - **Output**: Devuelve un objeto WiFiClient si un cliente se ha conectado o un puntero NULL si no hay clientes esperando para conectarse. - `WiFiServer::end()` -- La función se utiliza para detener el servidor y liberar los recursos asociados. Una vez llamada, el servidor ya no puede aceptar nuevas conexiones de clientes. Cualquier conexión de cliente existente permanecerá abierta hasta que sea cerrada por el cliente o el servidor. `WiFiServer::close()` y `WiFiServer::stop()` tienen la misma función. -### Funciones WiFi Múltiples +### Funciones WiFi múltiples -- `WiFiMulti::addAP(const char* ssid, const char *passphrase)` -- Se utiliza para agregar un nuevo punto de acceso (AP) a la lista de APs disponibles a los que el objeto WiFiMulti intentará conectarse. +- `WiFiMulti::addAP(const char* ssid, const char *passphrase)` -- Se utiliza para añadir un nuevo punto de acceso (AP) a la lista de AP disponibles a los que el objeto WiFiMulti intentará conectarse. - - **Parámetros de Entrada** + - **Input Parameters** - **ssid**: Puntero al SSID (máx. 63 caracteres). - **passphrase**: (para WPA2 mín. 8 caracteres, para abierto usar NULL). - - **Salida**: True/False + - **Output**: True/False -- `WiFiMulti::run(uint32_t connectTimeout)` -- La función intenta conectarse a uno de los puntos de acceso guardados en orden secuencial hasta que se conecta exitosamente a uno. +- `WiFiMulti::run(uint32_t connectTimeout)` -- La función intenta conectarse a uno de los puntos de acceso guardados en orden secuencial hasta que se conecte correctamente a uno. - - **Parámetros de Entrada** - - **connectTimeout**: El parámetro especifica la cantidad máxima de tiempo para esperar una conexión en milisegundos. Si connectTimeout se establece en 0, la función no tendrá tiempo de espera e intentará conectarse indefinidamente. + - **Input Parameters** + - **connectTimeout**: El parámetro especifica la cantidad máxima de tiempo de espera para una conexión en milisegundos. Si connectTimeout se establece en 0, la función no expirará y tratará de conectarse indefinidamente. - - **Salida**: estado + - **Output**: estado -## Ejemplos de Uso de WiFi +## Ejemplos de uso de WiFi -A continuación, utilizaremos el XIAO ESP32-C5 para demostrar cómo usar algunas funciones básicas de Wi-Fi. +A continuación, usaremos el XIAO ESP32-C5 para demostrar cómo utilizar algunas funciones básicas de Wi-Fi. -### Escanear Red +### Escanear red -El XIAO ESP32-C5 soporta Wi-Fi de banda dual 2.4 GHz y 5 GHz, y puede escanear redes Wi-Fi circundantes de 2.4 GHz y 5 GHz así como sus intensidades de señal en modo de escaneo. +El XIAO ESP32-C5 es compatible con Wi-Fi de doble banda de 2.4 GHz y 5 GHz, y puede escanear las redes Wi-Fi de 2.4 GHz y 5 GHz circundantes, así como sus intensidades de señal en modo de escaneo. #### Programa -A continuación se muestra un programa de ejemplo para mostrar cómo el XIAO ESP32-C5 escanea redes Wi-Fi circundantes. +A continuación se muestra un programa de ejemplo para mostrarte cómo el XIAO ESP32-C5 escanea las redes Wi-Fi circundantes. -- Código de Referencia +- Código de referencia
@@ -439,25 +439,25 @@ void loop() {
-#### Presentación del Efecto +#### Presentación del efecto -- Después de cargar el programa, abre el Monitor Serie del IDE de Arduino, y se mostrará la información de Wi-Fi escaneada. +- Después de cargar el programa, abre el Monitor Serie del Arduino IDE y se mostrará la información de las redes Wi-Fi escaneadas.
-### Conectarse a una Red Wi-Fi +### Conexión a una red Wi-Fi -Dentro de la cobertura Wi-Fi, puedes conectarte a una red Wi-Fi específica a través del modo STA soportado por el XIAO ESP32-C5, siempre que conozcas el SSID y la CONTRASEÑA de la red Wi-Fi objetivo. +Dentro de la cobertura Wi-Fi, puedes conectarte a una red Wi-Fi específica mediante el modo STA compatible con el XIAO ESP32-C5, siempre que conozcas el SSID y la PASSWORD de la red Wi-Fi de destino. #### Programa -A continuación, se proporciona un programa de ejemplo para mostrar cómo el XIAO ESP32-C5 se conecta a una red Wi-Fi especificada. +A continuación se proporciona un programa de ejemplo para mostrarte cómo el XIAO ESP32-C5 se conecta a una red Wi-Fi especificada. :::tip -XIAO ESP32-C5 soporta Wi-Fi de banda dual (2.4 GHz y 5 GHz), permitiéndote elegir la conexión basada en tu red doméstica. +XIAO ESP32-C5 es compatible con Wi-Fi de doble banda (2.4 GHz y 5 GHz), lo que te permite elegir la conexión según tu red doméstica. ::: -- Código de Referencia +- Código de referencia ```cpp #include @@ -511,24 +511,24 @@ void loop() { } ``` -#### Presentación del Efecto +#### Presentación del efecto -- Después de cargar el programa, abre el Monitor Serie del IDE de Arduino, y se mostrará información como la dirección IP de la red Wi-Fi conectada. +- Después de cargar el programa, abre el Monitor Serie del Arduino IDE y se mostrará información como la dirección IP de la red Wi-Fi conectada. - Estoy conectado a la red de 5 GHz en mi entorno.
### Modo AP -El XIAO ESP32-C5 puede funcionar como un punto de acceso para que otros dispositivos se conecten a él. En otras palabras, puedes usar dispositivos habilitados para Wi-Fi para conectarte al XIAO ESP32-C5 sin conectarte a tu router. +El XIAO ESP32-C5 puede funcionar como un punto de acceso para que otros dispositivos se conecten. En otras palabras, puedes usar dispositivos con Wi-Fi para conectarte al XIAO ESP32-C5 sin conectarte a tu router. -En términos simples, cuando configuras el XIAO ESP32-C5 como un punto de acceso, creas su propia red Wi-Fi independiente, a la cual los dispositivos Wi-Fi cercanos (estaciones) pueden conectarse (como tu smartphone o computadora). +En pocas palabras, cuando configuras el XIAO ESP32-C5 como un punto de acceso, creas su propia red Wi-Fi independiente, a la que los dispositivos Wi-Fi cercanos (estaciones) pueden conectarse (como tu smartphone o tu ordenador). #### Programa -A continuación, se presenta un programa de ejemplo para mostrar cómo el XIAO ESP32-C5 crea un punto de acceso y permite que otros dispositivos se conecten a él. +A continuación se presenta un programa de ejemplo para mostrarte cómo el XIAO ESP32-C5 crea un punto de acceso y permite que otros dispositivos se conecten a él. -- Código de Referencia +- Código de referencia ```cpp #include @@ -586,29 +586,29 @@ void loop() { } ``` -#### Presentación del Efecto +#### Presentación del efecto -- Después de compilar y cargar el programa, puedes descubrir el punto de acceso AP a través de la función WLAN. +- Después de compilar y cargar el programa, puedes descubrir el punto de acceso AP mediante la función WLAN.
-- Al conectarse exitosamente, el Monitor Serie imprimirá la dirección IP, y el LED USER a bordo se encenderá simultáneamente. +- Tras una conexión correcta, el Monitor Serie imprimirá la dirección IP y el LED USER integrado se encenderá simultáneamente.
### Uso de WiFi y MQTT -El protocolo MQTT es ampliamente utilizado en dispositivos IoT, y el XIAO ESP32-C5 soporta este protocolo — lo que significa que puedes usar el XIAO ESP32-C5 para desarrollar muchos proyectos IoT interesantes. +El protocolo MQTT se utiliza ampliamente en dispositivos IoT, y el XIAO ESP32-C5 es compatible con este protocolo, lo que significa que puedes usar el XIAO ESP32-C5 para desarrollar muchos proyectos IoT interesantes. #### Programa -A continuación, se presentará un programa de referencia para mostrar cómo usar el protocolo MQTT con el XIAO ESP32-C5. +A continuación se presentará un programa de referencia para mostrarte cómo usar el protocolo MQTT con el XIAO ESP32-C5. -- Instala la librería `PubSubClient` +- Instala la biblioteca `PubSubClient`
-- Código de Referencia +- Código de referencia ```cpp #include @@ -688,43 +688,43 @@ void loop() { } ``` -#### Presentación del Efecto +#### Presentación del efecto -- Descarga cualquier software que soporte el cliente broker MQTTX; aquí se usa MQTTX [MQTTx](https://mqttx.app/downloads) +- Descarga cualquier software que sea compatible con el cliente broker MQTTX; aquí se utiliza MQTTX [MQTTx](https://mqttx.app/downloads) -- Abre MQTTX y agrega la información del cliente. Aquí se usa la dirección de cliente predeterminada, por lo que solo necesitas agregar el ID del cliente `ESP32C5Client` y establecer el nombre del cliente de prueba; el resto de las configuraciones pueden mantenerse como predeterminadas. +- Abre MQTTX y añade la información del cliente. Aquí se utiliza la dirección de cliente predeterminada, por lo que solo necesitas añadir el ID de cliente `ESP32C5Client` y establecer el nombre del cliente de prueba; el resto de las configuraciones se pueden mantener por defecto.

-- Sube el código y conéctate usando MQTTX. Después de una conexión exitosa, haz clic en `New Subscription` en el lado izquierdo para agregar una suscripción. +- Sube el código y conéctate usando MQTTX. Después de una conexión exitosa, haz clic en `New Subscription` en el lado izquierdo para añadir una suscripción.

-- Configura la información de suscripción: ingresa `esp32c5/test/topic` y selecciona 0 o 1 para QoS. +- Configura la información de la suscripción: introduce `esp32c5/test/topic` y selecciona 0 o 1 para QoS.

-- Después de la configuración exitosa, puedes ver los mensajes publicados por el XIAO ESP32-C5 (actuando como cliente) cada 2 segundos. También puedes enviar mensajes al cliente después de seleccionar un tema, y el cliente los publicará al recibirlos. +- Después de una configuración exitosa, podrás ver los mensajes publicados por el XIAO ESP32-C5 (actuando como cliente) cada 2 segundos. También puedes enviar mensajes al cliente después de seleccionar un tema, y el cliente los publicará al recibirlos.

:::tip -broker.emqx.io es un broker público compartido por todos los usuarios. Cualquiera que se suscriba al mismo tema puede ver tus mensajes. Está destinado solo para propósitos de prueba y no es adecuado para transmitir datos sensibles. +broker.emqx.io es un broker público compartido por todos los usuarios. Cualquiera que se suscriba al mismo tema puede ver tus mensajes. Está destinado solo a fines de prueba y no es adecuado para transmitir datos sensibles. ::: -### WiFi & HTTP /HTTPS +### WiFi y HTTP /HTTPS -- Puedes consultar el ejemplo que escribimos para el XIAO ESP32C3 para acceder a ChatGPT, que detalla cómo usar WiFiClient y HTTPClient: [Aprende a usar WiFiClient y HTTPClient en XIAO ESP32C3 - XIAO ESP32C3 & ChatGPT en acción](https://wiki.seeedstudio.com/es/xiaoesp32c3-chatgpt/) +- Puedes consultar el ejemplo que escribimos para el XIAO ESP32C3 para acceder a ChatGPT, que detalla cómo usar WiFiClient y HTTPClient: [Aprende a usar WiFiClient y HTTPClient en XIAO ESP32C3 - XIAO ESP32C3 y ChatGPT en acción](https://wiki.seeedstudio.com/es/xiaoesp32c3-chatgpt/) -- Si solo quieres explorar el uso simple de HTTP, también puedes seguir los pasos a continuación para pruebas y verificación. +- Si solo quieres explorar el uso sencillo de HTTP, también puedes seguir los pasos siguientes para realizar pruebas y verificación. #### Programa -- Instala la librería `HTTPClient` +- Instala la biblioteca `HTTPClient`

-- Código de Referencia +- Código de referencia ```cpp #include @@ -796,40 +796,40 @@ void loop() { } ``` -#### Presentación del Efecto +#### Presentación del efecto :::tip -`https://jsonplaceholder.typicode.com` es un servicio gratuito de prueba de API REST simulada diseñado específicamente para propósitos de desarrollo y prueba. No soporta la modificación permanente o persistencia de datos reales. +`https://jsonplaceholder.typicode.com` es un servicio gratuito de prueba de API REST simulada, diseñado específicamente para fines de desarrollo y prueba. No admite la modificación permanente ni la persistencia de datos reales. ::: -- Sube el código, luego puedes abrir `https://jsonplaceholder.typicode.com/todos/1` y la herramienta Serial Monitor en el IDE de Arduino para verificar si la información es consistente. +- Sube el código, luego puedes abrir `https://jsonplaceholder.typicode.com/todos/1` y la herramienta Serial Monitor en el IDE de Arduino para comprobar si la información es consistente.
### WiFi-Mesh -La siguiente es la introducción oficial de **ESP-WIFI-MESH** por Espressif Systems: +A continuación se muestra la introducción oficial de **ESP-WIFI-MESH** por parte de Espressif Systems: -ESP-WIFI-MESH es una red de comunicación inalámbrica con nodos organizados en una topología de malla usando la característica simultánea AP-STA en los SoCs de Espressif. Proporciona una red auto-formativa y auto-reparadora, con facilidad de despliegue. La topología de red de ESP-WIFI-MESH puede escalar hasta 1000 nodos en áreas grandes, sin requerir ningún soporte específico de infraestructura Wi-Fi. ESP-WIFI-MESH también puede usarse para cubrir puntos ciegos de Wi-Fi en escenarios de despliegue doméstico donde la señal Wi-Fi no puede alcanzar. +ESP-WIFI-MESH es una red de comunicación inalámbrica con nodos organizados en una topología de malla utilizando la función AP-STA simultánea en los SoC de Espressif. Proporciona una red de autoformación y autorreparación, con facilidad de despliegue. La topología de red de ESP-WIFI-MESH puede escalar hasta 1000 nodos en áreas grandes, sin requerir ningún soporte específico de infraestructura Wi-Fi. ESP-WIFI-MESH también se puede utilizar para cubrir puntos ciegos de Wi-Fi en escenarios de despliegue doméstico donde la señal Wi-Fi no puede llegar. -Para información más detallada, consulta el enlace oficial de Espressif Systems: +Para obtener información más detallada, consulta el enlace oficial de Espressif Systems: - [ESP-Wi-Fi-MESH](https://www.espressif.com/en/products/sdks/esp-wifi-mesh/overview) -- [Guía de Programación ESP-IDF](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/esp-wifi-mesh.html) +- [ESP-IDF Programming Guide](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/esp-wifi-mesh.html) A continuación, te mostraré un ejemplo de ESP-Mesh, y para este ejemplo, necesitas preparar al menos dos dispositivos ESP32. #### Programa -- Instala la librería `Alteriom PainlessMesh` +- Instala la biblioteca `Alteriom PainlessMesh`
-- Instala la librería `AsyncTCP` +- Instala la biblioteca `AsyncTCP`
-- Código de Referencia +- Código de referencia ```cpp #include "painlessMesh.h" @@ -899,31 +899,31 @@ void loop() { } ``` -#### Presentación del Efecto +#### Presentación del efecto -- Sube el código a dos dispositivos XIAO ESP32-C5 y abre cualquier herramienta de puerto serie para verificar los resultados. +- Sube el código a dos dispositivos XIAO ESP32-C5 y abre cualquier herramienta de puerto serie para comprobar los resultados. -El Dispositivo 1 XIAO ESP32-C5 inicia la formación de red y envía mensajes. +El dispositivo 1 de XIAO ESP32-C5 inicia la formación de la red y envía mensajes.

-El Dispositivo 2 XIAO ESP32-C5 se une a la red y recibe mensajes enviados desde el Dispositivo 1. +El dispositivo 2 de XIAO ESP32-C5 se une a la red y recibe los mensajes enviados desde el dispositivo 1.
-### Ejemplo: Hub de Hogar Inteligente IoT +### Ejemplo: Concentrador doméstico inteligente IoT -A partir de los ejemplos de Wi-Fi anteriores, debes haber dominado cómo usar Wi-Fi en el XIAO ESP32-C5. A continuación, se presentará un ejemplo para mostrarte cómo implementar un hub de control de hogar inteligente usando el modo AP de Wi-Fi y servicios de red HTTP — específicamente, cómo usar el XIAO ESP32-C5 como un hub de control de hogar inteligente para monitorear el estado de tu hogar. +A partir de los ejemplos de Wi-Fi anteriores, ya debes haber dominado cómo usar Wi-Fi en el XIAO ESP32-C5. A continuación, se presentará un ejemplo para mostrarte cómo implementar un concentrador de control de hogar inteligente utilizando el modo Wi-Fi AP y servicios de red HTTP — específicamente, cómo usar el XIAO ESP32-C5 como un concentrador de control de hogar inteligente para monitorizar el estado de tu hogar. -- Instala la librería `ESPAsyncWebServer` +- Instala la biblioteca `ESPAsyncWebServer`

-- Sube el código y conéctate al hotspot `XIAO ESP32-C5`. +- Sube el código y conéctate al punto de acceso `XIAO ESP32-C5`.
-Código de Referencia +Código de referencia ```cpp #include @@ -1293,23 +1293,23 @@ void loop() {

-- Ingresa la dirección IP para saltar a la página web. +- Introduce la dirección IP para ir a la página web.

:::tip -Los controles y sensores mostrados en la página web son personalizables. Puedes agregar nuevos y modificar la página web generada según tus necesidades específicas. Para referencia: [ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) +Los controles y sensores que se muestran en la página web son personalizables. Puedes añadir otros nuevos y modificar la página web generada según tus necesidades específicas. Para referencia: [ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) ::: :::tip -El punto de acceso AP generado por el XIAO ESP32-C5 no puede conectarse a internet por defecto. Si se requiere conectividad a internet, puedes adoptar cualquiera de los siguientes dos métodos:
-Método 1: Conectar el XIAO ESP32-C5 a Home Assistant. Para referencia: [Conectando XIAO ESP32-C5 a Home Assistant](https://wiki.seeedstudio.com/es/xiao_esp32c5_homeassistant/)
-Método 2: Usar un servicio MQTT para subir datos a un servidor en la nube. Ten en cuenta que este método puede requerir comprar una cierta cantidad de créditos de servicio. Para referencia: [Google Cloud](https://cloud.google.com/)
+El punto de acceso (AP) generado por la XIAO ESP32-C5 no puede conectarse a Internet de forma predeterminada. Si se requiere conectividad a Internet, puedes adoptar cualquiera de los dos métodos siguientes:
+Método 1: Conecta la XIAO ESP32-C5 a Home Assistant. Para referencia: [Connecting XIAO ESP32-C5 to Home Assistant](https://wiki.seeedstudio.com/es/xiao_esp32c5_homeassistant/)
+Método 2: Utiliza un servicio MQTT para subir datos a un servidor en la nube. Ten en cuenta que este método puede requerir la compra de una cierta cantidad de créditos de servicio. Para referencia: [Goole Cloud](https://cloud.google.com/)
::: -## Soporte Técnico y Discusión de Productos +## Soporte técnico y debate sobre el producto -¡Gracias por elegir nuestros productos! Estamos aquí para brindarte diferentes tipos de soporte para asegurar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades. +Gracias por elegir nuestros productos. Estamos aquí para ofrecerte diferentes tipos de soporte y garantizar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para adaptarnos a diferentes preferencias y necesidades.
diff --git a/sites/es/sidebars.js b/sites/es/sidebars.js index 5f38b927cf47bd..f15c6b639fa387 100644 --- a/sites/es/sidebars.js +++ b/sites/es/sidebars.js @@ -1317,7 +1317,7 @@ const sidebars = { label: 'Conexión Inalámbrica', items: [ 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_WiFi_Usage', - 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Buletooth_Usage', + 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/es_XIAO_ESP32C5_Bluetooth_Usage', ], }, { diff --git a/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Buletooth_Usage.md b/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Bluetooth_Usage.md similarity index 58% rename from sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Buletooth_Usage.md rename to sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Bluetooth_Usage.md index 77ae1108169732..07b61d41358573 100644 --- a/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Buletooth_Usage.md +++ b/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Bluetooth_Usage.md @@ -1,22 +1,22 @@ --- -title: Bluetooth 使用方法 -description: Seeed Studio XIAO ESP32-C5 での Bluetooth 使用方法 +title: Bluetooth の使用 +description: Seeed Studio XIAO ESP32-C5 による Bluetooth の使用方法 keywords: - xiao - esp32c5 - - buletooth + - bluetooth image: https://files.seeedstudio.com/wiki/XIAO_ESP32C5/Getting_started/Seeed-Studio-XIAO-ESP32C5_1.webp -slug: /xiao_esp32c5_buletooth_usage +slug: /xiao_esp32c5_bluetooth_usage sidebar_class_name: hidden last_update: date: 01/06/2026 author: Zeller createdAt: '2026-01-06' updatedAt: '2026-01-19' -url: https://wiki.seeedstudio.com/ja/xiao_esp32c5_buletooth_usage/ +url: https://wiki.seeedstudio.com/ja/xiao_esp32c5_bluetooth_usage/ --- -# Seeed Studio XIAO ESP32-C5 での Bluetooth 使用方法 +# Seeed Studio XIAO ESP32-C5 による Bluetooth の使用
@@ -37,20 +37,20 @@ url: https://wiki.seeedstudio.com/ja/xiao_esp32c5_buletooth_usage/
-Seeed Studio XIAO ESP32-C5 は、Bluetooth 5、BLE、およびメッシュネットワーキングをサポートする強力な開発ボードで、ワイヤレス接続を必要とする幅広い IoT アプリケーションに最適な選択肢です。優れた RF 性能により、XIAO ESP32-C5 は様々な距離で信頼性の高い高速ワイヤレス通信を提供でき、短距離および長距離ワイヤレスアプリケーションの両方に対応する汎用的なソリューションとなっています。このチュートリアルでは、近くの Bluetooth デバイスをスキャンする方法、Bluetooth 接続を確立する方法、Bluetooth 接続を介してデータを送受信する方法など、XIAO ESP32-C5 の Bluetooth 機能の基本的な機能に焦点を当てます。 +Seeed Studio XIAO ESP32-C5 は、Bluetooth 5、BLE、および Mesh ネットワーキングをサポートする高性能な開発ボードであり、ワイヤレス接続を必要とする幅広い IoT アプリケーションに最適な選択肢です。優れた RF 性能により、XIAO ESP32-C5 はさまざまな距離で信頼性が高く高速なワイヤレス通信を提供でき、短距離および長距離の両方のワイヤレスアプリケーションに対応できる汎用的なソリューションとなります。本チュートリアルでは、XIAO ESP32-C5 の Bluetooth 機能の基本的な特徴に焦点を当て、近くの Bluetooth デバイスをスキャンする方法、Bluetooth 接続を確立する方法、そして Bluetooth 接続を介してデータを送受信する方法について説明します。 ## 入門ガイド ### アンテナの取り付け -Seeed Studio XIAO ESP32-C5 のパッケージ内には、専用の **Wi-Fi/BT アンテナコネクタ**があります。最適な WiFi/Bluetooth 信号強度を得るには、パッケージに含まれているアンテナを取り出してコネクタに接続する必要があります。
-:::tip -より強い信号ゲイン効果を得たい場合は、**RP-SMA オスコネクタ付き 2.4G/5G 外部アンテナ**を購入して取り付けることができます — パッケージに含まれている内蔵 FPC アンテナよりもはるかに高いゲインを提供します! +Seeed Studio XIAO ESP32-C5 のパッケージの中には、専用の **Wi-Fi/BT アンテナコネクタ** が含まれています。WiFi/Bluetooth の信号強度を最適化するには、同梱されているアンテナを取り出し、コネクタに取り付ける必要があります。
+ -## Bluetooth Low Energy (BLE) の使用方法 +## Bluetooth Low Energy (BLE) の使用 -Bluetooth Low Energy(略して BLE)は、Bluetooth の省電力版です。BLE の主な用途は、少量のデータ(低帯域幅)の短距離伝送です。常時オンの Bluetooth とは異なり、BLE は接続が開始される場合を除いて、常にスリープモードを維持します。 +Bluetooth Low Energy、略して BLE は、省電力型の Bluetooth 規格です。BLE の主な用途は、短距離で少量のデータ(低帯域幅)を送信することです。常時オンである Bluetooth とは異なり、BLE は接続が開始されるとき以外は常にスリープモードのままです。 :::tip -ESP32-C5 は BLE のみをサポートし、Bluetooth Classic はサポートしていません +ESP32-C5 は BLE のみをサポートし、Bluetooth Classic には対応していません ::: -その特性により、BLE はコイン電池で動作し、定期的に少量のデータを交換する必要があるアプリケーションに適しています。例えば、BLE はヘルスケア、フィットネス、トラッキング、ビーコン、セキュリティ、ホームオートメーション業界で大いに活用されています。 +このような特性から、BLE はボタン電池で動作し、定期的に少量のデータをやり取りする必要があるアプリケーションに適しています。例えば、ヘルスケア、フィットネス、トラッキング、ビーコン、セキュリティ、ホームオートメーションといった分野で BLE は大いに役立ちます。 -これにより、非常に低い電力消費を実現します。BLE は Bluetooth と比較して約 100 分の 1 の電力を消費します(使用ケースによって異なります)。 +これにより、消費電力を非常に低く抑えることができます。BLE の消費電力は、使用状況にもよりますが、Bluetooth と比べておよそ 100 倍も少なくなります。 -XIAO ESP32-C5 の BLE 部分について、以下の 3 つのセクションでその使用方法を紹介します。 +XIAO ESP32-C5 の BLE 機能については、次の 3 つのセクションでその使い方を紹介します。 -- [基本的な概念](#基本的な概念) -- BLE プログラムの実行プロセスと考え方を理解するために、BLE で頻繁に使用される可能性のある概念をまず理解します。 -- [BLE スキャナ](#BLE-スキャナ) -- このセクションでは、近くの Bluetooth デバイスを検索してシリアルモニターに出力する方法を説明します。 -- [BLE サーバー/クライアント](#BLE-サーバークライアント) -- このセクションでは、XIAO ESP32-C5 をサーバーおよびクライアントとして使用して、指定されたデータメッセージを送受信する方法を説明します。また、電話から XIAO へのメッセージの受信や送信にも使用します。 +- [いくつかの基本概念](#いくつかの基本概念) -- まず、BLE で頻繁に使われる可能性のある概念を理解し、BLE プログラムの実行プロセスや考え方を理解しやすくします。 +- [BLE スキャナ](#BLE-スキャナ) -- このセクションでは、近くの Bluetooth デバイスを検索し、それらをシリアルモニタに出力する方法を説明します。 +- [BLE サーバー/クライアント](#BLE-サーバークライアント) -- このセクションでは、XIAO ESP32-C5 をサーバーおよびクライアントとして使用し、指定したデータメッセージを送受信する方法を説明します。また、スマートフォンから XIAO へのメッセージの送受信にも使用します。 -### 基本的な概念 +### いくつかの基本概念 #### サーバーとクライアント -Bluetooth Low Energy では、サーバーとクライアントの 2 種類のデバイスがあります。XIAO ESP32-C5 はクライアントまたはサーバーのいずれかとして動作できます。 +Bluetooth Low Energy では、デバイスにはサーバーとクライアントの 2 種類があります。XIAO ESP32-C5 は、クライアントとしてもサーバーとしても動作させることができます。 -サーバーは自身の存在をアドバタイズして他のデバイスに発見されるようにし、クライアントが読み取ることができるデータを含んでいます。クライアントは近くのデバイスをスキャンし、探しているサーバーを見つけると接続を確立して受信データを待機します。これはポイントツーポイント通信と呼ばれます。 +サーバーは自分の存在をアドバタイズして他のデバイスから見つけられるようにし、クライアントが読み取ることのできるデータを保持します。クライアントは近くのデバイスをスキャンし、目的のサーバーを見つけると接続を確立し、受信データを待ち受けます。これはポイントツーポイント通信と呼ばれます。
-#### アトリビュート +#### Attribute(属性) -アトリビュートは実際にはデータの一部です。各 Bluetooth デバイスはサービスを提供するために使用され、サービスはデータの集合であり、この集合はデータベースと呼ぶことができます。データベース内の各エントリがアトリビュートです。そのため、ここではアトリビュートをデータエントリと翻訳します。Bluetooth デバイスをテーブルとして想像でき、テーブル内の各行がアトリビュートです。 +Attribute とは、実際には 1 つのデータ要素のことです。各 Bluetooth デバイスはサービスを提供するために使用され、サービスはデータの集合体です。この集合体はデータベースと呼ぶことができ、そのデータベース内の各エントリが Attribute です。ここでは Attribute をデータエントリと訳すことができます。Bluetooth デバイスを 1 つの表としてイメージすると、その表の各行が Attribute に相当します。
#### GATT -2 つの Bluetooth デバイスが接続を確立する際、通信方法を決定するプロトコルが必要です。GATT(Generic Attribute Profile)は、Bluetooth デバイス間でデータを送信する方法を定義するプロトコルです。 +2 つの Bluetooth デバイスが接続を確立するとき、どのように通信するかを決めるためのプロトコルが必要です。GATT(Generic Attribute Profile)はそのようなプロトコルであり、Bluetooth デバイス間でデータをどのように送受信するかを定義しています。 -GATT プロトコルでは、デバイスの機能と特性は、サービス、キャラクタリスティック、ディスクリプタと呼ばれる構造に整理されます。サービスは、デバイスが提供する関連する機能と特徴のセットを表します。各サービスには複数のキャラクタリスティックを含めることができ、これらはセンサーデータや制御コマンドなど、サービスの特定の特性や動作を定義します。各キャラクタリスティックには一意の識別子と値があり、通信のために読み取りまたは書き込みが可能です。ディスクリプタは、キャラクタリスティック値の形式やアクセス許可など、キャラクタリスティックのメタデータを記述するために使用されます。 +GATT プロトコルでは、デバイスの機能や特性は、サービス、キャラクタリスティック、ディスクリプタと呼ばれる構造に整理されます。サービスは、デバイスが提供する関連する機能や特徴の集合を表します。各サービスには複数のキャラクタリスティックを含めることができ、センサーデータや制御コマンドなど、そのサービスの特定のプロパティや動作を定義します。各キャラクタリスティックには一意の識別子と値があり、これを読み書きすることで通信を行います。ディスクリプタは、キャラクタリスティック値の形式やアクセス権限など、キャラクタリスティックのメタデータを記述するために使用されます。 -GATT プロトコルを使用することで、Bluetooth デバイスは、センサーデータの送信やリモートデバイスの制御など、さまざまなアプリケーションシナリオで通信できます。 +GATT プロトコルを使用することで、Bluetooth デバイスはセンサーデータの送信やリモートデバイスの制御など、さまざまなアプリケーションシナリオで通信することができます。 -#### BLE キャラクタリスティック +#### BLE Characteristic(キャラクタリスティック) -ATT は Attribute Protocol の略です。これは BLE でのデータ交換の基盤となるメカニズムです。ATT は、リクエスト、レスポンス、通知、インディケーションなどの一連のコマンドに依存しています。Bluetooth プロトコルスタックでは、ATT はデータ転送を担当する層であり、Bluetooth データパケットを分析する際の主要な焦点となります。 +ATT は Attribute Protocol の略です。これは BLE におけるデータ交換の基盤となるメカニズムです。ATT は、Requests、Responses、Notifications、Indications などの一連のコマンドに依存しています。Bluetooth プロトコルスタックにおいて、ATT はデータの転送を担当するレイヤーであり、Bluetooth データパケットを解析する際の主な焦点となります。 -ATT コマンドは、正式には ATT PDU(Protocol Data Unit)として知られています。これには、読み取り、書き込み、通知、インディケーションの 4 つのカテゴリが含まれます。これらのコマンドは 2 つのタイプに分けることができます:**Write Request** や **Indication** などの操作はピアからの確認応答を必要としますが、**Write Command** や **Notification** は必要としません。 +ATT コマンドは、正式には ATT PDU(Protocol Data Unit)と呼ばれます。これには、read、write、notify、indicate の 4 つのカテゴリがあります。これらのコマンドは 2 種類に分けることができます。**Write Request** や **Indication** のような操作は相手からの応答を必要としますが、**Write Command** や **Notification** は応答を必要としません。 -サービスとキャラクタリスティックは GATT 層で定義されます。サービス側がサービスを提供し、サービスはデータであり、データはアトリビュートです。サービスとキャラクタリスティックはデータの論理的な表現、またはユーザーが見ることができるデータが最終的にサービスとキャラクタリスティックに変換されます。 +Service と Characteristic は GATT レイヤーで定義されます。サービス側はサービスを提供し、サービスはデータであり、そのデータが属性です。Service と Characteristic はデータの論理的な表現であり、ユーザーが目にするデータは最終的に Service と Characteristic の形に変換されます。 -モバイルの観点からサービスとキャラクタリスティックがどのように見えるかを見てみましょう。nRF Connect は、各パケットがどのように見えるべきかを非常に視覚的に示すアプリケーションです。 +モバイル端末の視点から、サービスとキャラクタリスティックがどのように見えるかを見てみましょう。nRF Connect は、各パケットがどのような構造になっているべきかを非常に視覚的に示してくれるアプリケーションです。
-ご覧のとおり、Bluetooth 仕様では、各特定の Bluetooth アプリケーションは複数のサービスで構成され、各サービスは複数のキャラクタリスティックで構成されます。キャラクタリスティックは UUID、プロパティ、および値で構成されます。 +ご覧のとおり、Bluetooth 仕様では、特定の Bluetooth アプリケーションは複数のサービスで構成され、各サービスは複数のキャラクタリスティックで構成されています。1 つのキャラクタリスティックは、UUID、Properties(プロパティ)、Value(値)から成ります。
-プロパティは、読み取り、書き込み、通知などをサポートするかどうかなど、キャラクタリスティックに対する操作のタイプと権限を記述するために使用されます。これは ATT PDU に含まれる 4 つのカテゴリに似ています。 +Properties は、キャラクタリスティックに対してどのような操作が可能か、またその権限を表すために使用されます。例えば、読み取り、書き込み、通知などをサポートしているかどうかです。これは、ATT PDU に含まれる 4 つのカテゴリと似ています。
#### UUID -各サービス、キャラクタリスティック、ディスクリプタには UUID(Universally Unique Identifier)があります。UUID は一意の 128 ビット(16 バイト)番号です。例えば: +各サービス、キャラクタリスティック、ディスクリプタには UUID(Universally Unique Identifier)が割り当てられています。UUID は一意の 128 ビット(16 バイト)の数値です。例えば次のようになります。 ``` ea094cbd-3695-4205-b32d-70c1dea93c35 ``` -[SIG(Bluetooth Special Interest Group)](https://www.bluetooth.com/specifications/gatt/services)で指定されているすべてのタイプ、サービス、プロファイルには短縮 UUID があります。ただし、アプリケーションが独自の UUID を必要とする場合は、この [UUID ジェネレーターウェブサイト](https://www.uuidgenerator.net/)を使用して生成できます。 +[SIG (Bluetooth Special Interest Group)](https://www.bluetooth.com/specifications/gatt/services) で規定されているすべてのタイプ、サービス、プロファイルには短縮 UUID が用意されています。しかし、アプリケーションで独自の UUID が必要な場合は、この [UUID generator website](https://www.uuidgenerator.net/) を使って生成することができます。 ### BLE 使用例 -次に、いくつかの実用的な例を通じて、XIAO ESP32-C5 で **Bluetooth Low Energy (BLE)** を使用する方法を紹介します。
+次に、いくつかの実用的な例を通して、XIAO ESP32-C5 上で **Bluetooth Low Energy (BLE)** を使用する方法を紹介します。
-以下の例は **Arduino IDE** に基づいて実装されています。Arduino IDE を使用したことがない場合は、[Seeed Studio XIAO ESP32-C5 入門ガイド](https://wiki.seeedstudio.com/ja/xiao_esp32c5_getting_started/)をご覧ください。 +以下のサンプルは **Arduino IDE** をベースに実装されています。Arduino IDE をまだ使用したことがない場合は、こちらを参照してください: [Getting Started with Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/ja/xiao_esp32c5_getting_started/) #### BLE スキャナ -**BLE スキャナモード**では、XIAO ESP32-C5 は **セントラル**または **オブザーバー**として動作します。接続を確立する代わりに、周辺エリアの他のデバイスによってブロードキャストされるアドバタイジングパケットを**リッスン**します。 +**BLE スキャナモード**では、XIAO ESP32-C5 は **Central** または **Observer** として動作します。接続を確立する代わりに、周囲の他のデバイスによってブロードキャストされる Advertising パケットを**受信**します。 ##### プログラム @@ -194,20 +194,20 @@ void loop() { } ``` -##### 効果の表示 +##### 効果の確認 -- コードをアップロードしてシリアルモニターを開くと、XIAO ESP32-C5 が周囲の環境でBluetoothデバイスをスキャンし、関連情報を出力します。 +- コードを書き込み、シリアルモニタを開きます。XIAO ESP32-C5 が周囲の Bluetooth デバイスをスキャンし、関連情報を出力します。
-#### BLE サーバー/クライアント +#### BLE サーバー / クライアント -BLE サーバーモードでは、サービスとキャラクタリスティックを作成し、その存在をブロードキャストして、他のデバイスがデータの読み書きのために接続するのを待ちます。
-BLE クライアントモードでは、クライアントが特定のサービス UUID をスキャンし、サーバーを見つけた後に接続を開始し、サーバーのキャラクタリスティック値を読み書きします。 +BLE サーバーモードでは、Service と Characteristic を作成し、その存在をブロードキャストして、他のデバイスが接続してデータの読み書きを行うのを待ちます。
+BLE クライアントモードでは、クライアントが特定の Service UUID をスキャンし、サーバーを見つけた後に接続を開始し、サーバーの Characteristic 値を読み書きします。 ##### BLE サーバープログラム -次に、コード例を使用して XIAO ESP32-C5 で BLE サーバーを設定する方法を説明します。 +次に、XIAO ESP32-C5 上で BLE サーバーを構成する方法を、コード例を用いて説明します。 - 参考コード @@ -270,16 +270,16 @@ void loop() { } ``` -##### 効果の表示 +##### 効果の確認 -- コードをアップロードした後、nRF Connect アプリをダウンロードし、BLE デバイス(上記で言及した **XIAO_ESP32C5_Server** という名前)をスキャンして発見し、それを選択して接続を確立します。 +- コードを書き込んだ後、nRF Connect アプリをダウンロードし、スキャンして BLE デバイス(上記の **XIAO_ESP32C5_Server** という名前)を見つけて選択し、接続を確立します。 -同時に、主要なモバイルアプリストアで **nRF Connect** アプリを検索してダウンロードできます。これにより、お使いの携帯電話でBluetoothデバイスを検索して接続できます。 +同時に、主要なモバイルアプリストアで **nRF Connect** アプリを検索してダウンロードできます。これにより、スマートフォンで Bluetooth デバイスを検索して接続できます。 - Android: [nRF Connect](https://play.google.com/store/apps/details?id=no.nordicsemi.android.mcp&hl=en) - IOS: [nRF Connect](https://apps.apple.com/us/app/nrf-connect-for-mobile/id1054362403) -ソフトウェアをダウンロードした後、以下に示す手順に従って XIAO ESP32-C5 を検索して接続すると、アドバタイズされた **Hello World from XIAO** が表示されます。 +ソフトウェアをダウンロードしたら、以下の手順に従って XIAO ESP32-C5 を検索して接続すると、アドバタイズされている **Hello World from XIAO** が表示されます。 @@ -292,7 +292,7 @@ void loop() { ##### BLE クライアントプログラム -次に、コード例を使用して XIAO ESP32-C5 で BLE クライアントを設定する方法を説明します。クライアント機能を使用するには、少なくとも2つの XIAO Bluetooth対応デバイスが必要です:1つはデータを送信するサーバーとして機能し、もう1つはデータを受信するクライアントとして機能します。 +次に、XIAO ESP32-C5 上で BLE クライアントを構成する方法を、コード例を用いて説明します。クライアント機能を使用するには、少なくとも 2 台の XIAO Bluetooth 対応デバイスが必要です。1 台はサーバーとしてデータを送信し、もう 1 台はクライアントとしてデータを受信します。
参考コード @@ -436,39 +436,39 @@ void scanAndConnect() {
-##### 効果の表示 +##### 効果の確認 -- コードをアップロードした後、シリアルモニターを開いて観察すると、サーバーから送信されたBluetoothデータを受信できます。 +- コードを書き込み、シリアルモニタを開いて観察すると、サーバーから送信された Bluetooth データを受信していることがわかります。
:::tip -クライアント機能を検証する際は、事前に別の XIAO デバイスにサーバープログラムを書き込む必要があります。そうしないと検証が失敗します。 +クライアント機能を検証する際は、事前に別の XIAO デバイスにサーバープログラムを書き込んでおく必要があります。そうしないと、検証は失敗します。 ::: #### NimBLE-Arduino -ネイティブの Arduino BLEDevice ライブラリは Bluedroid プロトコルスタックに基づいており、完全な機能を提供しますが、Flash と RAM を大量に消費します。NimBLE は完全に書き直された BLE プロトコルスタック(Apache Mynewt から派生)で、以下の利点があります: +標準の Arduino BLEDevice ライブラリは Bluedroid プロトコルスタックに基づいており、機能はフルですが、Flash と RAM を多く消費します。NimBLE は BLE プロトコルスタックを完全に書き直したもので(Apache Mynewt 由来)、次のような利点があります。 -1. 極めて小さなメモリフットプリント(RAM使用量を50%以上削減)。 +1. 非常に小さいメモリフットプリント(RAM 使用量を 50%以上削減)。 2. より高速な接続速度。 -3. API互換性:ネイティブの Arduino BLE ライブラリの構文とほぼ完全に互換性があるように設計されており、ヘッダーファイルの変更と軽微な型調整のみが必要です。 +3. API 互換性:標準の Arduino BLE ライブラリの文法とほぼ完全な互換性を持つよう設計されており、ヘッダーファイルの変更と、わずかな型の調整だけで利用できます。 -詳細については、作者の GitHub リポジトリ:[NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino/tree/master) をご覧ください。
+詳細については、作者の GitHub リポジトリ [NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino/tree/master) を参照してください。
-次に、NimBLE-Arduinoライブラリを基にしたBluetooth スキャン機能を実装します。 +次に、NimBLE-Arduino ライブラリに基づいた Bluetooth スキャン機能を実装します。 ##### プログラム -- NimBLE-Arduinoライブラリをインストールします。 +- NimBLE-Arduino ライブラリをインストールします。

-参考コード +リファレンスコード ```CPP #include @@ -567,23 +567,23 @@ void loop() {
-##### 効果の実演 +##### 動作確認 -- コードをアップロードしてシリアルモニターを開いて観察します。これもBluetooth スキャン機能を実装していますが、より高速なスキャン速度を持ちます。 +- コードを書き込み、シリアルモニタを開いて観察します。こちらも Bluetooth スキャン機能を実装していますが、より高速なスキャン速度になっています。
-#### 例:Home Assistantへの接続 +#### 例:Home Assistant への接続 -ここまでで、XIAO ESP32-C5のBLEモードについて基本的な理解を得られたはずです。 -次に、より実用的なプロジェクトに取り組みましょう:XIAO ESP32-C5に温湿度センサー(または簡単なボタンスイッチ)をシミュレートさせ、BLE経由でセンサーデータやステータスを定期的にブロードキャストします。Home AssistantはこのBLEデバイスを自動的に発見し、追加の複雑な統合設定を必要とせずに、現在の温湿度値(またはボタンステータス)をインターフェースに直接表示します。
-この簡単な例は、モノのインターネット(IoT)とスマートホーム分野におけるESP32-C5の大きな可能性を十分に実証しています:低消費電力、開発の容易さ、パッシブBLEデバイスの即座のサポートにより、誰でも迅速に独自のスマートセンサーネットワークを構築できます。
+ここまでで、XIAO ESP32-C5 の BLE モードについて基本的な理解が得られたはずです。 +次に、より実践的なプロジェクトに取り組んでみましょう。XIAO ESP32-C5 に温湿度センサ(またはシンプルなボタンスイッチ)を模擬させ、BLE を介してセンサデータや状態を定期的にブロードキャストします。Home Assistant はこの BLE デバイスを自動的に検出し、追加の複雑な統合設定を行うことなく、インターフェース上に現在の温度・湿度値(またはボタン状態)を直接表示します。
+このシンプルな例は、ESP32-C5 が IoT(モノのインターネット)やスマートホーム分野において持つ大きな可能性を十分に示しています。低消費電力で開発が容易であり、パッシブ BLE デバイスをすぐに利用できるサポートにより、誰でも素早く自分だけのスマートセンサネットワークを構築できます。
:::tip -Home Assistantを使用したことがない場合は、こちらをご覧ください:[XIAO ESP32-C5をHome Assistantに接続](https://wiki.seeedstudio.com/ja/xiao_esp32c5_homeassistant/) +Home Assistant を使用したことがない場合は、こちらをご覧ください:[Connecting XIAO ESP32-C5 to Home Assistant](https://wiki.seeedstudio.com/ja/xiao_esp32c5_homeassistant/) ::: -- 参考コード +- リファレンスコード ```cpp #include @@ -652,13 +652,13 @@ void loop() { } ``` -- コードをアップロードしてHome Assistantプラットフォームを開きます。**Settings** -> **Devices & Services**でBTHomeデバイスを見つけて、ダッシュボードに追加できます。 +- コードを書き込み、Home Assistant プラットフォームを開きます。**Settings** -> **Devices & Services** の下に BTHome デバイスが見つかるので、ダッシュボードに追加します。
## 技術サポート & 製品ディスカッション -弊社製品をお選びいただき、ありがとうございます!弊社製品での体験が可能な限りスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、複数のコミュニケーションチャンネルを用意しています。 +弊社製品をお選びいただきありがとうございます。私たちは、製品をできるだけスムーズにご利用いただけるよう、さまざまなサポートを提供しています。お好みやニーズに応じて選べる複数のコミュニケーションチャネルをご用意しています。
diff --git a/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_WiFi_Usage.md b/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_WiFi_Usage.md index 52e59ad64bca10..f56790c18a7200 100644 --- a/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_WiFi_Usage.md +++ b/sites/ja/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_WiFi_Usage.md @@ -1,6 +1,6 @@ --- -title: WiFi 使用方法 -description: Seeed Studio XIAO ESP32-C5 での WiFi 使用方法 +title: WiFi の使用 +description: Seeed Studio XIAO ESP32-C5 による WiFi の使用方法 keywords: - xiao - esp32c5 @@ -16,7 +16,7 @@ updatedAt: '2026-01-20' url: https://wiki.seeedstudio.com/ja/xiao_esp32c5_wifi_usage/ --- -# Seeed Studio XIAO ESP32-C5 での WiFi 使用方法 +# Seeed Studio XIAO ESP32-C5 による WiFi の使用
@@ -37,21 +37,21 @@ url: https://wiki.seeedstudio.com/ja/xiao_esp32c5_wifi_usage/
-Seeed Studio XIAO ESP32-C5 は、デュアルバンド 2.4 GHz & 5 GHz Wi-Fi をサポートし、802.11a/b/g/n/ac 規格との下位互換性を持つデュアルバンド Wi-Fi 6(802.11ax)無線機能を搭載しています。さらに、この開発ボードは U.FL アンテナ接続をサポートしており、XIAO ESP32-C5 の無線接続性能を向上させるよう設計されています。このチュートリアルでは、XIAO ESP32-C5 の Wi-Fi 機能を活用して Wi-Fi ネットワークに接続し、基本的なネットワークタスクを実行する方法を探ります。
-以下のチュートリアルでは、コンパイルとアップロードに Arduino IDE を使用します。Arduino IDE の経験がまだない場合は、[Seeed Studio XIAO ESP32-C5 入門ガイド](https://wiki.seeedstudio.com/ja/xiao_esp32c5_getting_started/) をご覧ください。
+Seeed Studio XIAO ESP32-C5 は 2.4 GHz および 5 GHz のデュアルバンド Wi-Fi をサポートしており、802.11a/b/g/n/ac 規格との下位互換性を備えたデュアルバンド Wi-Fi 6(802.11ax)無線を搭載しています。さらに、この開発ボードは U.FL アンテナ接続に対応しており、XIAO ESP32-C5 のワイヤレス接続性能を強化するよう設計されています。本チュートリアルでは、XIAO ESP32-C5 の Wi-Fi 機能を活用して Wi-Fi ネットワークに接続し、基本的なネットワークタスクを実行する方法を紹介します。
+以下のチュートリアルでは、コンパイルと書き込みに Arduino IDE を使用します。まだ Arduino IDE の使用経験がない場合は、[Getting Started with Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/ja/xiao_esp32c5_getting_started/) を参照してください。
## 入門ガイド ### アンテナの取り付け -Seeed Studio XIAO ESP32-C5 のパッケージ内には、専用の **Wi-Fi/BT アンテナコネクタ** があります。最適な WiFi/Bluetooth 信号強度を得るには、パッケージに含まれているアンテナを取り出してコネクタに接続する必要があります。
-:::tip -より強い信号ゲイン効果を得たい場合は、**RP-SMA オスコネクタ付き 2.4G/5G 外部アンテナ** を購入して取り付けることができます — パッケージに含まれている内蔵 FPC アンテナよりもはるかに高いゲインを提供します! +Seeed Studio XIAO ESP32-C5 のパッケージ内には、専用の **Wi-Fi/BT アンテナコネクタ** が用意されています。最適な WiFi/Bluetooth 信号強度を得るには、同梱されているアンテナを取り出し、コネクタに取り付ける必要があります。
+ ## WiFi ライブラリの一般的なインターフェース -- XIAO ESP32-C5 は幅広い Wi-Fi ネットワーク機能を提供します。一般的に、ESP32 の内蔵パッケージ内の WiFi ライブラリの機能を確認し、対応する機能を選択して望ましい機能を実現できます。次に、よく使用されるインターフェースをいくつかリストアップし、その使用方法を紹介します。 +- XIAO ESP32-C5 は、幅広い Wi-Fi ネットワーク機能を提供します。一般的に、ESP32 のビルトインパッケージに含まれる WiFi ライブラリの関数を確認し、目的の機能を実現するために対応する関数を選択します。次に、よく使用されるインターフェースをいくつか挙げ、その使い方を紹介します。 :::tip -Wi-Fi 使用チュートリアルを直接開始したい場合は、[WiFi 使用例](#wifi-使用例) にジャンプできます。 +すぐに Wi-Fi 使用チュートリアルを始めたい場合は、[WiFi Usage Examples](#WiFi-Usage-Examples) にジャンプしてください。 ::: -### 汎用 WiFi 機能 +### 一般的な WiFi 関数 -- `WiFiGenericClass::getHostname()` -- ESP32 用 WiFi ライブラリの機能で、デバイスのホスト名を文字列として返します。ホスト名は、ネットワーク上でデバイスを識別する一意の名前です。この機能は、以前に `WiFiGenericClass::setHostname()` を使用して設定されたホスト名を取得します。ホスト名が設定されていない場合は、デフォルトのホスト名が返されます。 +- `WiFiGenericClass::getHostname()` -- ESP32 用 WiFi ライブラリ内の関数で、デバイスのホスト名を文字列として返します。ホスト名は、ネットワーク上でデバイスを識別する一意の名前です。この関数は、以前に `WiFiGenericClass::setHostname()` を使用して設定されたホスト名を取得します。ホスト名が設定されていない場合は、デフォルトのホスト名が返されます。 -- `WiFiGenericClass::persistent(bool persistent)` -- ESP32 WiFi ライブラリの永続モードを有効または無効にするために使用されるメソッドです。永続モードが有効になっている場合、Wi-Fi 設定は不揮発性メモリ(NVM)に保存され、電源サイクルやリセット後も保持されます。永続モードが無効になっている場合、設定は RAM に保存され、電源サイクルやリセット後に失われます。 +- `WiFiGenericClass::persistent(bool persistent)` -- ESP32 WiFi ライブラリの永続モードを有効または無効にするために使用されるメソッドです。永続モードが有効な場合、Wi-Fi 設定は不揮発性メモリ(NVM)に保存され、電源のオン/オフやリセット後も保持されます。永続モードが無効な場合、設定は RAM に保存され、電源のオン/オフやリセット後には失われます。 - **入力パラメータ** - - **persistent**: 引数が true の場合、永続モードが有効になります。引数が false の場合、永続モードが無効になります。 + - **persistent**: 引数が true の場合、永続モードが有効になります。引数が false の場合、永続モードは無効になります。 -- `WiFiGenericClass::enableLongRange(bool enable)` -- この機能は、WiFi モジュールの長距離(LR)機能を有効または無効にするために使用されます。有効にすると、LR 機能により、モジュールは通常よりも遠くにある WiFi ネットワークに接続できますが、データレートは低くなります。 +- `WiFiGenericClass::enableLongRange(bool enable)` -- この関数は、WiFi モジュールの Long Range(LR)機能を有効または無効にするために使用されます。有効にすると、LR 機能により通常よりも遠くの WiFi ネットワークに接続できますが、データレートは低くなります。 - **入力パラメータ** - - **enable**: この機能を有効にするには true に、無効にするには false に設定する必要があります。 + - **enable**: 機能を有効にするには true、無効にするには false を設定します。 -- `WiFiGenericClass::mode(wifi_mode_t m)` -- この機能は、デバイスの WiFi モードを設定するために使用されます。 +- `WiFiGenericClass::mode(wifi_mode_t m)` -- この関数は、デバイスの WiFi モードを設定するために使用されます。 - **入力パラメータ** - - **m**: m パラメータは設定するモードを指定し、wifi_mode_t 列挙型で定義された以下の定数のいずれかを指定できます: - - **WIFI_MODE_NULL**: WiFi ステーションとアクセスポイントの両方のモードを無効にします。 - - **WIFI_MODE_STA**: 既存の WiFi ネットワークに接続するための WiFi ステーションモードを有効にします。 - - **WIFI_MODE_AP**: 新しい WiFi ネットワークを作成するためのアクセスポイントモードを有効にします。 - - **WIFI_MODE_APSTA**: WiFi ステーションとアクセスポイントの両方のモードを有効にします。 + - **m**: m パラメータは、wifi_mode_t enum で定義されている次の定数のいずれかで、設定するモードを指定します。 + - **WIFI_MODE_NULL**: WiFi ステーションモードとアクセスポイントモードの両方を無効にします。 + - **WIFI_MODE_STA**: 既存の WiFi ネットワークに接続するために WiFi ステーションモードを有効にします。 + - **WIFI_MODE_AP**: 新しい WiFi ネットワークを作成するためにアクセスポイントモードを有効にします。 + - **WIFI_MODE_APSTA**: WiFi ステーションモードとアクセスポイントモードの両方を有効にします。 -- `WiFiGenericClass::setSleep(wifi_ps_type_t sleepType)` -- この機能は、WiFi モジュールの省電力モードを設定します。 +- `WiFiGenericClass::setSleep(wifi_ps_type_t sleepType)` -- この関数は、WiFi モジュールの省電力モードを設定します。 - **入力パラメータ** - - **sleepType**: sleepType パラメータは、使用する省電力モードのタイプを指定する列挙型です。3つの可能なスリープタイプがあります: - - **WIFI_PS_NONE**: これはデフォルトのスリープモードで、WiFi モジュールは省電力モードに入りません。 + - **sleepType**: sleepType パラメータは、省電力モードの種類を指定する列挙型です。使用可能なスリープタイプは 3 種類あります。 + - **WIFI_PS_NONE**: これはデフォルトのスリープモードであり、WiFi モジュールは省電力モードに入りません。 - **WIFI_PS_MIN_MODEM**: このモードでは、WiFi モジュールはアクセスポイント(AP)への接続を維持しながらモデムをシャットダウンします。 - - **WIFI_PS_MAX_MODEM**: 最も積極的な Wi-Fi 省電力モードを有効にします。スリープ時間を大幅に増加させることができますが、より高いレイテンシと低下したスループットを導入する可能性があり、一部のネットワークでは接続の安定性に影響を与える可能性があります。 + - **WIFI_PS_MAX_MODEM**: 最も積極的な Wi-Fi 省電力モードを有効にします。スリープ時間を大幅に延長できますが、レイテンシの増加やスループットの低下を招く可能性があり、一部のネットワークでは接続の安定性に影響を与える場合があります。 -### STA 機能 +### STA 関数 - `WiFiSTAClass::status()` -- 接続ステータスを返します。 - - **出力**: wl_status_t で定義された値のいずれか。 + - **出力**: wl_status_t で定義されている値のいずれか。 - **WL_NO_SHIELD**: このステータスコードは、Wi-Fi モジュールが存在しないことを示します。 - - **WL_IDLE_STATUS**: このステータスコードは、Wi-Fi モジュールが何も操作を実行していないことを示します。 + - **WL_IDLE_STATUS**: このステータスコードは、Wi-Fi モジュールが何も操作を行っていないことを示します。 - **WL_NO_SSID_AVAIL**: このステータスコードは、スキャン中に Wi-Fi ネットワークが見つからなかったことを示します。 - **WL_SCAN_COMPLETED**: このステータスコードは、Wi-Fi スキャンが正常に完了したことを示します。 - **WL_CONNECTED**: このステータスコードは、ESP32 が Wi-Fi ネットワークに正常に接続されていることを示します。 - - **WL_CONNECT_FAILED**: このステータスコードは、Wi-Fi ネットワークへの接続が失敗したことを示します。 + - **WL_CONNECT_FAILED**: このステータスコードは、Wi-Fi ネットワークへの接続に失敗したことを示します。 - **WL_CONNECTION_LOST**: このステータスコードは、Wi-Fi ネットワークへの接続が失われたことを示します。 - - **WL_DISCONNECTED**: このステータスコードは、ESP32 が以前に Wi-Fi ネットワークに接続されていたが、現在はどのネットワークにも接続されていないことを示します。 + - **WL_DISCONNECTED**: このステータスコードは、ESP32 が以前は Wi-Fi ネットワークに接続されていたが、現在はいずれのネットワークにも接続されていないことを示します。 -- `WiFiSTAClass::begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity, const char* wpa2_username, const char *wpa2_password, const char* ca_pem, const char* client_crt, const char* client_key, int32_t channel, const uint8_t* bssid, bool connect)` -- WPA2 Enterprise AP との Wifi 接続を開始します。 +- `WiFiSTAClass::begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity, const char* wpa2_username, const char *wpa2_password, const char* ca_pem, const char* client_crt, const char* client_key, int32_t channel, const uint8_t* bssid, bool connect)` -- WPA2 Enterprise AP への Wifi 接続を開始します。 - **入力パラメータ**(オプション) - **ssid**: SSID 文字列へのポインタ。 - - **method**: WPA2 の認証方法(WPA2_AUTH_TLS、WPA2_AUTH_PEAP、WPA2_AUTH_TTLS) + - **method**: WPA2 の認証方式(WPA2_AUTH_TLS, WPA2_AUTH_PEAP, WPA2_AUTH_TTLS) - **wpa2_identity**: エンティティへのポインタ - **wpa2_username**: ユーザー名へのポインタ - **wpa2_password**: パスワードへのポインタ。 - - **ca_pem**: CA 証明書を含む .pem ファイルの内容を含む文字列へのポインタ - - **client_crt**: クライアント証明書を含む .crt ファイルの内容を含む文字列へのポインタ - - **client_key**: クライアントキーを含む .key ファイルの内容を含む文字列へのポインタ - - **channel**: オプション。AP のチャンネル + - **ca_pem**: CA 証明書を含む .pem ファイルの内容を格納した文字列へのポインタ + - **client_crt**: クライアント証明書を含む .crt ファイルの内容を格納した文字列へのポインタ + - **client_key**: クライアント鍵を含む .key ファイルの内容を格納した文字列へのポインタ + - **channel**: オプション。AP のチャネル - **bssid**: オプション。AP の BSSID / MAC - - **connect**: オプション。connect を呼び出す + - **connect**: オプション。connect を呼び出すかどうか -- `WiFiSTAClass::reconnect()` -- 強制的に切断してから AP への再接続を開始します。 +- `WiFiSTAClass::reconnect()` -- 強制的に切断し、その後 AP への再接続を開始します。 - **出力**: True/False。 - `WiFiSTAClass::disconnect(bool wifioff, bool eraseap)` -- ネットワークから切断します。 - **入力パラメータ** - - **wifioff**: wifioff `true` で Wi-Fi 無線をオフにします。 - - **eraseap**: eraseap `true` で NVS メモリから AP 設定を消去します。 + - **wifioff**: wifioff `true` の場合、Wi-Fi 無線をオフにします。 + - **eraseap**: eraseap `true` の場合、NVS メモリから AP 設定を消去します。 - **出力**: True/False。 -- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- dhcp クライアントを無効にして IP 設定を変更します。 +- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- DHCP クライアントを無効にして IP 設定を変更します。 - **入力パラメータ** - **local_ip**: 静的 IP 設定。 @@ -156,7 +156,7 @@ Wi-Fi 使用チュートリアルを直接開始したい場合は、[WiFi 使 - **dns1**: 静的 DNS サーバー 1。 - **dns2**: 静的 DNS サーバー 2。 -- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- 非推奨。電源投入時に ESP32 ステーションが(記録されている)AP に自動的に接続するかどうかを設定します。デフォルトで自動接続を有効にします。 +- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- 非推奨。電源投入時に、記録されている AP へ ESP32 ステーションを自動接続するかどうかを設定します。デフォルトでは自動接続が有効です。 - **入力パラメータ** - **autoConnect**: autoConnect ブール値。 @@ -166,9 +166,9 @@ Wi-Fi 使用チュートリアルを直接開始したい場合は、[WiFi 使 - `WiFiSTAClass::waitForConnectResult(unsigned long timeoutLength)` -- WiFi 接続が結果に到達するまで待機します。 - **入力パラメータ** - - **timeoutLength**: このパラメータは、接続が確立されるまで待機する最大時間をミリ秒で指定します。 + - **timeoutLength**: 接続が確立されるまで待機する最大時間(ミリ秒)を指定します。 - - **出力**: wl_status_t で定義された値のいずれか。 + - **出力**: wl_status_t で定義されている値のいずれか。 - `WiFiSTAClass::localIP()` -- ステーションインターフェースの IP アドレスを取得します。 @@ -181,169 +181,169 @@ Wi-Fi 使用チュートリアルを直接開始したい場合は、[WiFi 使 - **出力**: uint8_t * へのポインタ。 -- `WiFiSTAClass::SSID()` -- ネットワークに関連付けられた現在のSSIDを返します。 +- `WiFiSTAClass::SSID()` -- ネットワークに関連付けられている現在の SSID を返します。 - **出力**: SSID。 -- `WiFiSTAClass::RSSI(void)` -- 現在のネットワークRSSIを返します。 +- `WiFiSTAClass::RSSI(void)` -- 現在のネットワークの RSSI を返します。 - **出力**: RSSI。 ### AP 関数 -- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- これはXIAO ESP32-C5のWiFiライブラリの関数です。SoftAP(プログラムアクセスポイント)を設定するために使用され、他のデバイスがXIAO ESP32-C5に接続してそのリソースにアクセスできるようにします。 +- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- これは XIAO ESP32-C5 の WiFi ライブラリ内の関数です。SoftAP(プログラムによるアクセスポイント)を設定するために使用され、他のデバイスが XIAO ESP32-C5 に接続してそのリソースへアクセスできるようにします。 - **入力パラメータ** - - **ssid**: SSIDへのポインタ(最大63文字)。 - - **passphrase**: (WPA2の場合最小8文字、オープンの場合はNULLを使用)。 - - **channel**: WiFiチャンネル番号、1 - 13。 - - **ssid_hidden**: ネットワーククローキング(0 = SSID放送、1 = SSID隠蔽)。 - - **max_connection**: 最大同時接続クライアント数、1 - 4。 + - **ssid**: SSID へのポインタ(最大 63 文字)。 + - **passphrase**: (WPA2 の場合は最小 8 文字、オープンの場合は NULL を使用)。 + - **channel**: WiFi チャンネル番号、1 - 13。 + - **ssid_hidden**: ネットワークのステルス設定(0 = SSID をブロードキャスト、1 = SSID を非表示)。 + - **max_connection**: 同時接続可能なクライアントの最大数、1 - 4。 - **出力**: True/False。 -- `WiFiAPClass::softAPgetStationNum()` -- softAPインターフェースに接続されているStation/クライアントの数を取得します。 +- `WiFiAPClass::softAPgetStationNum()` -- softAP インターフェースに接続されているステーション / クライアントの数を取得します。 - **出力**: ステーション数。 -- `WiFiAPClass::softAPConfig(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dhcp_lease_start)` -- SoftAPを設定するための関数です。 +- `WiFiAPClass::softAPConfig(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dhcp_lease_start)` -- SoftAP を設定するための関数です。 - **入力パラメータ** - - **local_ip**: アクセスポイントIP。 - - **gateway**: ゲートウェイIP。 + - **local_ip**: アクセスポイントの IP。 + - **gateway**: ゲートウェイ IP。 - **subnet**: サブネットマスク。 - **出力**: True/False。 -- `WiFiAPClass::softAPIP()` -- softAPインターフェースのIPアドレスを取得します。 +- `WiFiAPClass::softAPIP()` -- softAP インターフェースの IP アドレスを取得します。 - **出力**: IPAddress softAP IP。 -- `WiFiAPClass::softAPmacAddress(uint8_t* mac)` -- softAPインターフェースのMACアドレスを取得します。 +- `WiFiAPClass::softAPmacAddress(uint8_t* mac)` -- softAP インターフェースの MAC アドレスを取得します。 - **入力パラメータ** - - **mac** (オプション): 長さWL_MAC_ADDR_LENGTHのuint8_t配列へのポインタ。 + - **mac** (任意): 長さ WL_MAC_ADDR_LENGTH の uint8_t 配列へのポインタ。 - - **出力**: uint8_t*へのポインタまたは文字列mac。 + - **出力**: uint8_t* へのポインタ、または String 型の MAC。 ### WiFi スキャン関数 -- `WiFiScanClass::scanNetworks(bool async, bool show_hidden, bool passive, uint32_t max_ms_per_chan, uint8_t channel, const char * ssid, const uint8_t * bssid)` -- 利用可能なWiFiネットワークのスキャンを開始します。 +- `WiFiScanClass::scanNetworks(bool async, bool show_hidden, bool passive, uint32_t max_ms_per_chan, uint8_t channel, const char * ssid, const uint8_t * bssid)` -- 利用可能な WiFi ネットワークのスキャンを開始します。 - **入力パラメータ** - - **async**: このパラメータは、スキャンを非同期で実行するかどうかを決定するブール値です。trueに設定すると、関数は即座に戻り、スキャン結果は後でgetScanResults()関数を呼び出すことで取得できます。falseに設定すると、関数はスキャンが完了するまでブロックします。 - - **show_hidden**: このパラメータは、関数がスキャン結果に隠しネットワークを含めるかどうかを決定するブール値です。 - - **passive**: このパラメータは、関数がパッシブスキャンを実行するかどうかを決定するブール値です。trueに設定すると、関数はスキャン中にパケットを送信しません。これは時間がかかる場合がありますが、特定の状況では有用です。 - - **max_ms_per_chan**: このパラメータは、各チャンネルのスキャンに費やす最大時間をミリ秒で指定します。 - - **channel**: このパラメータは、スキャンするWi-Fiチャンネルです。0に設定すると、関数は利用可能なすべてのチャンネルをスキャンします。 - - **ssid**: このパラメータは、スキャンするネットワークのSSIDを含むnull終端文字列へのポインタです。nullptrに設定すると、関数は利用可能なすべてのネットワークをスキャンします。 - - **bssid**: このパラメータは、スキャンするアクセスポイントのMACアドレスを含む6バイト配列へのポインタです。nullptrに設定すると、関数はすべてのアクセスポイントをスキャンします。 + - **async**: スキャンを非同期で実行するかどうかを決定するブール値です。true に設定すると、この関数はすぐに戻り、スキャン結果は後で getScanResults() 関数を呼び出すことで取得できます。false に設定すると、スキャンが完了するまで関数はブロックされます。 + - **show_hidden**: スキャン結果に隠しネットワークを含めるかどうかを決定するブール値です。 + - **passive**: パッシブスキャンを行うかどうかを決定するブール値です。true に設定すると、スキャン中にパケットを送信しません。時間は長くかかる場合がありますが、特定の状況で有用です。 + - **max_ms_per_chan**: 各チャンネルをスキャンする最大時間(ミリ秒)です。 + - **channel**: スキャンする Wi-Fi チャンネルです。0 に設定すると、利用可能なすべてのチャンネルをスキャンします。 + - **ssid**: スキャン対象ネットワークの SSID を含む、ヌル終端文字列へのポインタです。nullptr に設定すると、利用可能なすべてのネットワークをスキャンします。 + - **bssid**: スキャン対象アクセスポイントの MAC アドレスを含む 6 バイト配列へのポインタです。nullptr に設定すると、すべてのアクセスポイントをスキャンします。 - - **出力**: この関数の戻り値は、スキャンされたネットワーク数を示す整数です。 + - **出力**: スキャンされたネットワーク数を示す整数値を返します。 -- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- スキャンされたwifiからすべての情報をptrパラメータに読み込みます。 +- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- スキャンされた WiFi のすべての情報をポインタパラメータに読み込みます。 - **入力パラメータ** - - **i**: この関数は、指定されたインデックスiでスキャンされたネットワークに関する情報を取得するために使用されます。 - - **ssid**: ssidパラメータは、関数がネットワークのSSIDを格納するString変数への参照です。 - - **encType**: encTypeパラメータは、関数がネットワークの暗号化タイプを格納するuint8_t変数への参照です(0 = オープン、1 = WEP、2 = WPA_PSK、3 = WPA2_PSK、4 = WPA_WPA2_PSK)。 - - **rssi**: rssiパラメータは、関数がネットワークの受信信号強度指示(RSSI)を格納するint32_t変数への参照です。 - - **bssid**: bssidパラメータは、関数がネットワークのBSSID(MACアドレス)を格納するuint8_t*ポインタへの参照です。 - - **channel**: channelパラメータは、関数がネットワークのチャンネル番号を格納するint32_t変数への参照です。 + - **i**: 指定したインデックス i のスキャン済みネットワーク情報を取得するために使用されます。 + - **ssid**: ssid パラメータは String 変数への参照で、ネットワークの SSID が格納されます。 + - **encType**: encType パラメータは uint8_t 変数への参照で、ネットワークの暗号化タイプが格納されます(0 = open、1 = WEP、2 = WPA_PSK、3 = WPA2_PSK、4 = WPA_WPA2_PSK)。 + - **rssi**: rssi パラメータは int32_t 変数への参照で、ネットワークの受信信号強度(RSSI)が格納されます。 + - **bssid**: bssid パラメータは uint8_t* ポインタへの参照で、ネットワークの BSSID(MAC アドレス)が格納されます。 + - **channel**: channel パラメータは int32_t 変数への参照で、ネットワークのチャンネル番号が格納されます。 - **出力**: True/False。 -- `WiFiScanClass::SSID(uint8_t i)` -- ネットワークスキャン中に発見されたSSIDを返します。 +- `WiFiScanClass::SSID(uint8_t i)` -- ネットワークスキャン中に検出された SSID を返します。 - **入力パラメータ** - - **i**: どのネットワーク項目から情報を取得したいかを指定します。 + - **i**: 情報を取得したいネットワーク項目を指定します。 - - **出力**: スキャンされたネットワークリストの指定された項目のSSID文字列。 + - **出力**: スキャン済みネットワークリスト内の、指定された項目の SSID 文字列。 -- `WiFiScanClass::RSSI(uint8_t i)` -- scanNetworks中に発見されたネットワークのRSSIを返します。 +- `WiFiScanClass::RSSI(uint8_t i)` -- scanNetworks 中に検出されたネットワークの RSSI を返します。 - **入力パラメータ** - - **i**: どのネットワーク項目から情報を取得したいかを指定します。 + - **i**: 情報を取得したいネットワーク項目を指定します。 - - **出力**: スキャンされたネットワークリストの指定された項目のRSSIの符号付き値。 + - **出力**: スキャン済みネットワークリスト内の、指定された項目の RSSI の符号付き値。 ### WiFi クライアント関数 -- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- この関数は、WiFiClientライブラリで使用され、指定されたタイムアウト値でリモートIPアドレスとポートに接続します。 +- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- この関数は WiFiClient ライブラリで使用され、指定したタイムアウト値でリモート IP アドレスとポートに接続します。 - **入力パラメータ** - - **ip**: 接続するサーバーのIPアドレス。 - - **port**: 接続するサーバーのポート番号。 - - **timeout** (オプション): 接続が確立されるまでの最大待機時間(ミリ秒)。この時間内に接続が確立されない場合、関数はエラーを返します。timeoutが0に設定されている場合、関数は接続が確立されるまで無期限に待機します。 + - **ip**: 接続先サーバーの IP アドレス。 + - **port**: 接続先サーバーのポート番号。 + - **timeout** (任意): 接続が確立されるまで待機する最大時間(ミリ秒)。この時間内に接続が確立されない場合、関数はエラーを返します。timeout が 0 に設定されている場合、接続が確立されるまで無期限に待機します。 -- `WiFiClient::stop()` -- この関数は、クライアントをサーバーから切断し、クライアントが使用しているソケット/ポートを解放するために使用されます。関数が呼び出されると、クライアントはもはやデータを送受信できません。 +- `WiFiClient::stop()` -- クライアントをサーバーから切断し、クライアントが使用していたソケット/ポートを解放するために使用される関数です。この関数が呼び出されると、クライアントはデータの送受信ができなくなります。 -- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- この関数は、クライアントが接続の確立またはデータの受信を待機する最大ミリ秒数を設定します。接続またはデータ転送が指定されたタイムアウトより長くかかる場合、接続は閉じられます。 +- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- クライアントが接続の確立またはデータ受信のために待機する最大ミリ秒数を設定します。接続またはデータ転送が指定したタイムアウトより長くかかる場合、接続は閉じられます。 - **入力パラメータ** - - **timeout_ms**: タイムアウトのミリ秒数。 + - **timeout_ms**: タイムアウト時間(ミリ秒)。 -- `WiFiClient::write(uint8_t data)` -- WiFiClientインスタンスを通じて接続されたサーバーに単一バイトのデータを書き込みます。または`WiFiClient::write(const uint8_t *buf, size_t size)`。 +- `WiFiClient::write(uint8_t data)` -- WiFiClient インスタンスを通じて、接続されたサーバーに 1 バイトのデータを書き込みます。または `WiFiClient::write(const uint8_t *buf, size_t size)`。 - **入力パラメータ** - - **data**: 確立されたネットワーク接続を介して送信する必要がある単一バイトのデータです。 + - **data**: 確立されたネットワーク接続を介して送信する必要がある 1 バイトのデータ。 -- `WiFiClient::read()` -- この関数は、接続されたサーバーから受信データの単一バイトを読み取ります。読み取られたバイトを整数値として返します。データが利用できない場合は-1を返します。または`read(uint8_t *buf, size_t size)`。 +- `WiFiClient::read()` -- 接続されたサーバーから受信データの 1 バイトを読み取る関数です。読み取ったバイトを整数値として返します。データが利用できない場合は -1 を返します。または `read(uint8_t *buf, size_t size)`。 - - **出力**: 受信したバイト数を示す整数値。戻り値が0の場合、サーバーが接続を閉じたことを意味します。 + - **出力**: 受信したバイト数を示す整数値。戻り値が 0 の場合、サーバーが接続を閉じたことを意味します。 -- `WiFiClient::peek()` -- この関数は、実際に読み取ることなく、サーバーから読み取り可能なデータがあるかどうかを確認するために使用されます。 +- `WiFiClient::peek()` -- サーバーから読み取り可能なデータがあるかどうかを、実際に読み取らずに確認するための関数です。 - - **出力**: 受信バッファから削除することなく、次の受信データバイトを返します。データが利用できない場合は-1を返します。 + - **出力**: 受信バッファから削除せずに、次の受信データの 1 バイトを返します。データが利用できない場合は -1 を返します。 -- `WiFiClient::available()` -- この関数は、サーバーから読み取り可能なデータのバイト数を確認するために使用されます。 +- `WiFiClient::available()` -- サーバーから読み取り可能なデータが何バイトあるかを確認するための関数です。 - **出力**: 読み取り可能なバイト数を表す整数値を返します。 ### WiFi サーバー関数 -- `WiFiServer::stopAll()` -- この関数は、Arduino WiFiライブラリのWiFiServerクラスのメソッドです。このメソッドは、WiFiServerクラスを使用して作成されたすべてのサーバーインスタンスを停止します。各インスタンスに対して個別に`stop()`メソッドを呼び出す代わりに、すべてのサーバーを一度に停止したい場合に便利です。 +- `WiFiServer::stopAll()` -- この関数は Arduino WiFi ライブラリの WiFiServer クラスのメソッドです。このメソッドは、WiFiServer クラスを使用して作成されたすべてのサーバーインスタンスを停止します。各インスタンスに対して個別に `stop()` メソッドを呼び出す代わりに、すべてのサーバーを一度に停止したい場合に便利です。 -- `WiFiServer::begin(uint16_t port, int enable)` -- この関数は、指定されたポートでサーバーを開始するために使用されます。サーバーは受信クライアント接続をリッスンします。 +- `WiFiServer::begin(uint16_t port, int enable)` -- 指定したポートでサーバーを開始するために使用される関数です。サーバーはクライアントからの接続を待ち受けます。 - **入力パラメータ** - - **port**: リッスンするポート番号。 - - **enable** (オプション): サーバーが開始された直後に有効にするかどうかを示すフラグ。このフラグはデフォルトでtrueに設定されています。 + - **port**: 待ち受けるポート番号。 + - **enable** (任意): サーバーを開始後すぐに有効にするかどうかを示すフラグです。このフラグはデフォルトで true に設定されています。 -- `WiFiServer::hasClient()` -- この関数は、サーバーで利用可能な受信クライアント接続があるかどうかを確認するために使用されます。この関数は、新しい接続を継続的にチェックするためにループで使用できます。 +- `WiFiServer::hasClient()` -- サーバー上で新しいクライアント接続が利用可能かどうかを確認するための関数です。この関数はループ内で使用して、新しい接続を継続的にチェックできます。 - - **出力**: クライアントが接続している場合はWiFiClientオブジェクトを返し、接続を待機しているクライアントがない場合はNULLポインタを返します。 + - **出力**: クライアントが接続していれば WiFiClient オブジェクトを返し、接続待ちのクライアントがいない場合は NULL ポインタを返します。 -- `WiFiServer::end()` -- この関数は、サーバーを停止し、関連するリソースを解放するために使用されます。呼び出されると、サーバーは新しいクライアント接続を受け入れることができなくなります。既存のクライアント接続は、クライアントまたはサーバーによって閉じられるまで開いたままになります。`WiFiServer::close()`と`WiFiServer::stop()`は同じ機能を持ちます。 +- `WiFiServer::end()` -- サーバーを停止し、関連するリソースを解放するために使用される関数です。一度呼び出されると、サーバーは新しいクライアント接続を受け付けなくなります。既存のクライアント接続は、クライアントまたはサーバーのいずれかが閉じるまで維持されます。`WiFiServer::close()` と `WiFiServer::stop()` は同じ機能を持ちます。 -### WiFi マルチプル関数 +### WiFi マルチ接続関数 -- `WiFiMulti::addAP(const char* ssid, const char *passphrase)` -- これは、WiFiMultiオブジェクトが接続を試行する利用可能なAPのリストに新しいアクセスポイント(AP)を追加するために使用されます。 +- `WiFiMulti::addAP(const char* ssid, const char *passphrase)` -- WiFiMulti オブジェクトが接続を試みる利用可能な AP のリストに、新しいアクセスポイント(AP)を追加するために使用されます。 - **入力パラメータ** - - **ssid**: SSIDへのポインタ(最大63文字)。 - - **passphrase**: (WPA2の場合最小8文字、オープンの場合はNULLを使用)。 + - **ssid**: SSID へのポインタ(最大 63 文字)。 + - **passphrase**: (WPA2 の場合は最小 8 文字、オープンの場合は NULL を使用)。 - **出力**: True/False -- `WiFiMulti::run(uint32_t connectTimeout)` -- この関数は、正常に接続できるまで、保存されたアクセスポイントの1つに順次接続を試行します。 +- `WiFiMulti::run(uint32_t connectTimeout)` -- 保存されているアクセスポイントのいずれかに接続できるまで、順番に接続を試みる関数です。 - **入力パラメータ** - - **connectTimeout**: このパラメータは、接続を待機する最大時間をミリ秒で指定します。connectTimeoutが0に設定されている場合、関数はタイムアウトせず、無期限に接続を試行します。 + - **connectTimeout**: 接続を待機する最大時間(ミリ秒)を指定します。connectTimeout が 0 に設定されている場合、タイムアウトせず無期限に接続を試みます。 - **出力**: ステータス ## WiFi 使用例 -次に、XIAO ESP32-C5を使用して、いくつかの基本的なWi-Fi機能の使用方法を実演します。 +次に、XIAO ESP32-C5 を使用して、いくつかの基本的な Wi-Fi 関数の使い方をデモンストレーションします。 -### ネットワークスキャン +### ネットワークのスキャン -XIAO ESP32-C5はデュアルバンド2.4 GHz & 5 GHz Wi-Fiをサポートしており、スキャンモードで周囲の2.4 GHzおよび5 GHz Wi-Fiネットワークとその信号強度をスキャンできます。 +XIAO ESP32-C5 は 2.4 GHz と 5 GHz のデュアルバンド Wi-Fi をサポートしており、スキャンモードでは周囲の 2.4 GHz および 5 GHz Wi-Fi ネットワークとその信号強度をスキャンできます。 #### プログラム -以下は、XIAO ESP32-C5が周囲のWi-Fiネットワークをスキャンする方法を示すサンプルプログラムです。 +以下は、XIAO ESP32-C5 が周囲の Wi-Fi ネットワークをどのようにスキャンするかを示すサンプルプログラムです。 - 参考コード @@ -439,22 +439,22 @@ void loop() {
-#### 効果の表示 +#### 動作確認 -- プログラムをアップロードした後、Arduino IDEのシリアルモニターを開くと、スキャンされたWi-Fi情報が出力されます。 +- プログラムを書き込んだ後、Arduino IDE の Serial Monitor を開くと、スキャンされた Wi-Fi 情報が出力されます。
-### Wi-Fiネットワークへの接続 +### Wi-Fi ネットワークへの接続 -Wi-Fiカバレッジ内で、対象のWi-FiネットワークのSSIDとPASSWORDを知っていれば、XIAO ESP32-C5がサポートするSTAモードを使用して特定のWi-Fiネットワークに接続できます。 +Wi-Fi の電波が届く範囲内であれば、XIAO ESP32-C5 がサポートする STA モードを介して、対象の Wi-Fi ネットワークの SSID と PASSWORD を把握していることを前提に、特定の Wi-Fi ネットワークに接続できます。 #### プログラム -次に、XIAO ESP32-C5が指定されたWi-Fiネットワークに接続する方法を示すサンプルプログラムを提供します。 +次に、XIAO ESP32-C5 が指定した Wi-Fi ネットワークにどのように接続するかを示すサンプルプログラムを紹介します。 :::tip -XIAO ESP32-C5はデュアルバンドWi-Fi(2.4 GHz & 5 GHz)をサポートしており、ご家庭のネットワークに基づいて接続を選択できます。 +XIAO ESP32-C5 はデュアルバンド Wi-Fi(2.4 GHz & 5 GHz)をサポートしており、自宅のネットワーク環境に応じて接続先を選択できます。 ::: - 参考コード @@ -511,22 +511,22 @@ void loop() { } ``` -#### 効果の表示 +#### 動作確認 -- プログラムをアップロードした後、Arduino IDEのシリアルモニターを開くと、接続されたWi-FiネットワークのIPアドレスなどの情報が出力されます。 -- 私の環境では5 GHzネットワークに接続されています。 +- プログラムを書き込んだ後、Arduino IDE の Serial Monitor を開くと、接続した Wi-Fi ネットワークの IP アドレスなどの情報が出力されます。 +- 私の環境では 5 GHz ネットワークに接続しています。
-### APモード +### AP モード -XIAO ESP32-C5は他のデバイスが接続するためのホットスポットとして動作できます。つまり、ルーターに接続することなく、Wi-Fi対応デバイスを使用してXIAO ESP32-C5に接続できます。 +XIAO ESP32-C5 は、他のデバイスが接続できるホットスポットとして動作させることができます。つまり、ルーターに接続しなくても、Wi-Fi 対応デバイスを使って XIAO ESP32-C5 に接続できます。 -簡単に言うと、XIAO ESP32-C5をアクセスポイントとして設定すると、独自の独立したWi-Fiネットワークが作成され、近くのWi-Fiデバイス(ステーション)が接続できます(スマートフォンやコンピューターなど)。 +簡単に言うと、XIAO ESP32-C5 をアクセスポイントとして構成すると、独立した Wi-Fi ネットワークが作成され、近くの Wi-Fi デバイス(ステーション)がそのネットワークに接続できるようになります(スマートフォンやコンピュータなど)。 #### プログラム -次に、XIAO ESP32-C5がホットスポットを作成し、他のデバイスがそれに接続する方法を示すサンプルプログラムを紹介します。 +次に、XIAO ESP32-C5 がホットスポットを作成し、他のデバイスがそれに接続できるようにする方法を示すサンプルプログラムを紹介します。 - 参考コード @@ -586,25 +586,25 @@ void loop() { } ``` -#### 効果の表示 +#### 動作確認 -- プログラムをコンパイルしてアップロードした後、WLAN機能を使用してAPホットスポットを発見できます。 +- プログラムをコンパイルして書き込んだ後、WLAN 機能を通じて AP ホットスポットを検出できます。
-- 接続が成功すると、シリアルモニターにIPアドレスが印刷され、同時にオンボードUSER LEDが点灯します。 +- 接続に成功すると、Serial Monitor に IP アドレスが表示され、同時にオンボードの USER LED が点灯します。
-### WiFi & MQTT使用法 +### WiFi & MQTT の利用 -MQTTプロトコルはIoTデバイスで広く使用されており、XIAO ESP32-C5はこのプロトコルをサポートしています。つまり、XIAO ESP32-C5を使用して多くの興味深いIoTプロジェクトを開発できます。 +MQTT プロトコルは IoT デバイスで広く利用されており、XIAO ESP32-C5 はこのプロトコルをサポートしています。つまり、XIAO ESP32-C5 を使って多くの興味深い IoT プロジェクトを開発できます。 #### プログラム -次に、XIAO ESP32-C5でMQTTプロトコルを使用する方法を示す参考プログラムを紹介します。 +次に、XIAO ESP32-C5 で MQTT プロトコルを使用する方法を示すリファレンスプログラムを紹介します。 -- `PubSubClient`ライブラリをインストール +- `PubSubClient` ライブラリをインストールします
@@ -688,35 +688,35 @@ void loop() { } ``` -#### 効果の実演 +#### 効果の確認 -- MQTTXブローカークライアントをサポートする任意のソフトウェアをダウンロードします。ここではMQTTXを使用します [MQTTx](https://mqttx.app/downloads) +- MQTTX ブローカークライアントをサポートする任意のソフトウェアをダウンロードします。ここでは MQTTX を使用します [MQTTx](https://mqttx.app/downloads) -- MQTTXを開いてクライアント情報を追加します。ここではデフォルトのクライアントアドレスを使用するため、クライアントID `ESP32C5Client` を追加してテストクライアント名を設定するだけです。その他の設定はデフォルトのままにできます。 +- MQTTX を開き、クライアント情報を追加します。ここではデフォルトのクライアントアドレスを使用するため、クライアント ID `ESP32C5Client` を追加し、テスト用クライアント名を設定するだけで構いません。その他の設定はデフォルトのままで問題ありません。

-- コードをアップロードしてMQTTXを使用して接続します。接続が成功したら、左側の `New Subscription` をクリックしてサブスクリプションを追加します。 +- コードを書き込み、MQTTX を使って接続します。接続に成功したら、左側の `New Subscription` をクリックしてサブスクリプションを追加します。

-- サブスクリプション情報を設定します:`esp32c5/test/topic` を入力し、QoSに0または1を選択します。 +- サブスクリプション情報を設定します。`esp32c5/test/topic` を入力し、QoS として 0 または 1 を選択します。

-- 設定が成功すると、XIAO ESP32-C5(クライアントとして動作)が2秒ごとに公開するメッセージを確認できます。トピックを選択した後、クライアントにメッセージを送信することもでき、クライアントは受信時にそれらを公開します。 +- 設定が完了すると、クライアントとして動作する XIAO ESP32-C5 が 2 秒ごとにパブリッシュするメッセージを確認できます。また、トピックを選択した後にクライアント宛てにメッセージを送信することもでき、クライアントは受信後にそれらをパブリッシュします。

:::tip -broker.emqx.ioは全ユーザーが共有するパブリックブローカーです。同じトピックをサブスクライブする人は誰でもあなたのメッセージを見ることができます。これはテスト目的のみを意図しており、機密データの送信には適していません。 +broker.emqx.io はすべてのユーザーで共有されるパブリックブローカーです。同じトピックを購読している人は誰でも、あなたのメッセージを閲覧できます。これはテスト目的のみに使用されるものであり、機密データの送信には適していません。 ::: ### WiFi & HTTP /HTTPS -- XIAO ESP32C3用に作成したChatGPTにアクセスする例を参照できます。これはWiFiClientとHTTPClientの使用方法を詳しく説明しています:[XIAO ESP32C3でWiFiClientとHTTPClientの使用方法を学ぶ - XIAO ESP32C3 & ChatGPT実践編](https://wiki.seeedstudio.com/ja/xiaoesp32c3-chatgpt/) +- XIAO ESP32C3 で ChatGPT にアクセスするために作成したサンプルを参照できます。そこでは、WiFiClient と HTTPClient の使用方法を詳しく説明しています:[XIAO ESP32C3 で WiFiClient と HTTPClient を使う方法 - XIAO ESP32C3 & ChatGPT 実践編](https://wiki.seeedstudio.com/ja/xiaoesp32c3-chatgpt/) -- HTTPの簡単な使用方法のみを探求したい場合は、以下の手順に従ってテストと検証を行うこともできます。 +- HTTP の簡単な使い方だけを試したい場合は、以下の手順に従ってテストと検証を行うこともできます。 #### プログラム @@ -796,28 +796,28 @@ void loop() { } ``` -#### 効果の実演 +#### 効果の確認 :::tip -`https://jsonplaceholder.typicode.com` は開発とテスト目的専用に設計された無料のモックREST APIテストサービスです。実際のデータの永続的な変更や保存はサポートしていません。 +`https://jsonplaceholder.typicode.com` は、開発およびテスト用途向けに特別に設計された無料のモック REST API テストサービスです。実際のデータの恒久的な変更や永続化には対応していません。 ::: -- コードをアップロードした後、`https://jsonplaceholder.typicode.com/todos/1` を開いて、Arduino IDEのシリアルモニターツールで情報が一致しているかを確認できます。 +- コードを書き込んだら、`https://jsonplaceholder.typicode.com/todos/1` と Arduino IDE のシリアルモニタツールを開き、情報が一致しているか確認できます。
### WiFi-Mesh -以下はEspressif Systemsによる **ESP-WIFI-MESH** の公式紹介です: +以下は、Espressif Systems による **ESP-WIFI-MESH** の公式紹介です: -ESP-WIFI-MESHは、Espressif SoCの同時AP-STA機能を使用してメッシュトポロジーで組織されたノードを持つワイヤレス通信ネットワークです。自己形成と自己修復ネットワークを提供し、展開が容易です。ESP-WIFI-MESHのネットワークトポロジーは、特定のWi-Fiインフラストラクチャサポートを必要とせずに、広いエリアで最大1000ノードまでスケールアップできます。ESP-WIFI-MESHは、Wi-Fi信号が届かない家庭展開シナリオでWi-Fiブラインドスポットをカバーするためにも使用できます。 +ESP-WIFI-MESH は、Espressif SoC 上の AP-STA 同時動作機能を使用し、ノードがメッシュトポロジで構成される無線通信ネットワークです。自己形成および自己修復機能を備え、容易に展開できます。ESP-WIFI-MESH のネットワークトポロジは、大規模なエリアで最大 1000 ノードまでスケール可能であり、特別な Wi-Fi インフラストラクチャを必要としません。また、家庭内で Wi-Fi 信号が届かない死角をカバーする用途にも使用できます。 -より詳細な情報については、Espressif Systemsの公式リンクを参照してください: +より詳細な情報については、Espressif Systems の公式リンクを参照してください: - [ESP-Wi-Fi-MESH](https://www.espressif.com/en/products/sdks/esp-wifi-mesh/overview) - [ESP-IDF Programming Guide](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/esp-wifi-mesh.html) -次に、ESP-Meshの例を紹介します。この例では、少なくとも2つのESP32デバイスを準備する必要があります。 +次に、ESP-Mesh のサンプルを紹介します。このサンプルには、少なくとも 2 台の ESP32 デバイスを用意する必要があります。 #### プログラム @@ -899,27 +899,27 @@ void loop() { } ``` -#### 効果の実演 +#### 効果の確認 -- 2台のXIAO ESP32-C5デバイスにコードをアップロードし、任意のシリアルポートツールを開いて結果を確認します。 +- 2 台の XIAO ESP32-C5 デバイスにコードを書き込み、任意のシリアルポートツールを開いて結果を確認します。 -XIAO ESP32-C5デバイス1がネットワーク形成を開始してメッセージを送信します。 +XIAO ESP32-C5 デバイス 1 がネットワークの形成を開始し、メッセージを送信します。

-XIAO ESP32-C5デバイス2がネットワークに参加し、デバイス1から送信されたメッセージを受信します。 +XIAO ESP32-C5 デバイス 2 がネットワークに参加し、デバイス 1 から送信されたメッセージを受信します。
-### 例:IoTスマートホームハブ +### 例:IoT スマートホームハブ -上記のWi-Fiの例から、XIAO ESP32-C5でWi-Fiを使用する方法をマスターしたはずです。次に、Wi-Fi APモードとHTTPネットワークサービスを使用してスマートホーム制御ハブを実装する方法の例を紹介します。具体的には、XIAO ESP32-C5をスマートホーム制御ハブとして使用して、家庭の状態を監視する方法です。 +ここまでの Wi-Fi のサンプルから、XIAO ESP32-C5 での Wi-Fi の使い方はすでに習得できたはずです。次に、Wi-Fi AP モードと HTTP ネットワークサービスを使用してスマートホーム制御ハブを実装する方法、具体的には XIAO ESP32-C5 をスマートホーム制御ハブとして使用し、自宅の状態を監視する方法を紹介します。 - `ESPAsyncWebServer` ライブラリをインストールします

-- コードをアップロードして `XIAO ESP32-C5` ホットスポットに接続します。 +- コードを書き込み、`XIAO ESP32-C5` ホットスポットに接続します。
@@ -1293,23 +1293,23 @@ void loop() {

-- IPアドレスを入力してWebページにジャンプします。 +- IP アドレスを入力してウェブページにアクセスします。

:::tip -Webページに表示されるコントロールとセンサーはカスタマイズ可能です。特定のニーズに応じて新しいものを追加し、生成されたWebページを変更できます。参考:[ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) +ウェブページに表示されるコントロールやセンサーはカスタマイズ可能です。新しい要素を追加したり、特定のニーズに応じて生成されたウェブページを変更したりできます。参考: [ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) ::: :::tip -XIAO ESP32-C5によって生成されるAPホットスポットは、デフォルトではインターネットに接続できません。インターネット接続が必要な場合は、以下の2つの方法のいずれかを採用できます:
-方法1:XIAO ESP32-C5をHome Assistantに接続する。参考:[Connecting XIAO ESP32-C5 to Home Assistant](https://wiki.seeedstudio.com/ja/xiao_esp32c5_homeassistant/)
-方法2:MQTTサービスを使用してクラウドサーバーにデータをアップロードする。この方法では一定のサービスクレジットの購入が必要な場合があります。参考:[Goole Cloud](https://cloud.google.com/)
+XIAO ESP32-C5 が生成する AP ホットスポットは、デフォルトではインターネットに接続できません。インターネット接続が必要な場合は、次の 2 つの方法のいずれかを採用できます。
+方法 1:XIAO ESP32-C5 を Home Assistant に接続します。参考: [Connecting XIAO ESP32-C5 to Home Assistant](https://wiki.seeedstudio.com/ja/xiao_esp32c5_homeassistant/)
+方法 2:MQTT サービスを使用してクラウドサーバーにデータをアップロードします。この方法では、一定量のサービスクレジットを購入する必要がある場合があります。参考: [Goole Cloud](https://cloud.google.com/)
::: -## 技術サポート & 製品ディスカッション +## 技術サポートと製品ディスカッション -弊社製品をお選びいただき、ありがとうございます!弊社製品でのご体験が可能な限りスムーズになるよう、さまざまなサポートを提供いたします。異なる好みやニーズに対応するため、複数のコミュニケーションチャンネルを提供しています。 +弊社製品をお選びいただきありがとうございます。弊社は、製品をできるだけスムーズにご利用いただけるよう、さまざまなサポートを提供しています。お好みやニーズに応じて選択いただける複数のコミュニケーションチャネルをご用意しています。
diff --git a/sites/ja/sidebars.js b/sites/ja/sidebars.js index 0f7d498917fba3..5bf0ae0b4c9c53 100644 --- a/sites/ja/sidebars.js +++ b/sites/ja/sidebars.js @@ -1318,7 +1318,7 @@ const sidebars = { label: 'ワイヤレス接続', items: [ 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_WiFi_Usage', - 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Buletooth_Usage', + 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/ja_XIAO_ESP32C5_Bluetooth_Usage', ], }, { diff --git a/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Buletooth_Usage.md b/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Bluetooth_Usage.md similarity index 77% rename from sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Buletooth_Usage.md rename to sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Bluetooth_Usage.md index d55d148f1ee9b5..35824d7c6a656a 100644 --- a/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Buletooth_Usage.md +++ b/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Bluetooth_Usage.md @@ -1,22 +1,22 @@ --- -title: Uso de Buletooth -description: Uso de Buletooth com Seeed Studio XIAO ESP32-C5 +title: Uso de Bluetooth +description: Uso de Bluetooth com o Seeed Studio XIAO ESP32-C5 keywords: - xiao - esp32c5 - - buletooth + - bluetooth image: https://files.seeedstudio.com/wiki/XIAO_ESP32C5/Getting_started/Seeed-Studio-XIAO-ESP32C5_1.webp -slug: /xiao_esp32c5_buletooth_usage +slug: /xiao_esp32c5_bluetooth_usage sidebar_class_name: hidden last_update: date: 01/06/2026 author: Zeller createdAt: '2026-01-06' -updatedAt: '2026-03-12' -url: https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_buletooth_usage/ +updatedAt: '2026-01-19' +url: https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_bluetooth_usage/ --- -# Uso de Buletooth com Seeed Studio XIAO ESP32-C5 +# Uso de Bluetooth com Seeed Studio XIAO ESP32-C5
@@ -30,27 +30,27 @@ url: https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_buletooth_usage/
-O Seeed Studio XIAO ESP32-C5 é uma poderosa placa de desenvolvimento que suporta Bluetooth 5, BLE e rede Mesh, tornando-o uma escolha ideal para uma ampla gama de aplicações de IoT que exigem conectividade sem fio. Com seu excelente desempenho de RF, o XIAO ESP32-C5 pode fornecer comunicação sem fio confiável e de alta velocidade em uma variedade de distâncias, tornando-o uma solução versátil tanto para aplicações sem fio de curto quanto de longo alcance. Neste tutorial, vamos focar nos recursos básicos das capacidades de Bluetooth do XIAO ESP32-C5, como escanear dispositivos Bluetooth próximos, estabelecer uma conexão Bluetooth e transmitir e receber dados por meio de uma conexão Bluetooth. +O Seeed Studio XIAO ESP32-C5 é uma poderosa placa de desenvolvimento que suporta Bluetooth 5, BLE e rede Mesh, tornando-o uma escolha ideal para uma ampla gama de aplicações de IoT que exigem conectividade sem fio. Com seu excelente desempenho de RF, o XIAO ESP32-C5 pode fornecer comunicação sem fio confiável e em alta velocidade em uma variedade de distâncias, tornando-o uma solução versátil tanto para aplicações sem fio de curto quanto de longo alcance. Neste tutorial, focaremos nos recursos básicos das capacidades de Bluetooth do XIAO ESP32-C5, como escanear dispositivos Bluetooth próximos, estabelecer uma conexão Bluetooth e transmitir e receber dados por meio de uma conexão Bluetooth. -## Primeiros Passos +## Introdução -### Instalação da Antena +### Instalação da antena -Dentro da embalagem do Seeed Studio XIAO ESP32-C5, há um conector dedicado de **Antena Wi-Fi/BT**. Para obter a melhor intensidade de sinal WiFi/Bluetooth, você precisa retirar a antena incluída no pacote e conectá-la ao conector.
-:::tip -Se você quiser obter um efeito de ganho de sinal ainda mais forte, pode comprar e instalar a **Antena Externa 2.4G/5G com Conector RP-SMA Macho** — ela oferece um ganho muito maior do que a antena FPC interna incluída no pacote! +Dentro da embalagem do Seeed Studio XIAO ESP32-C5, há um **conector dedicado de antena Wi-Fi/BT**. Para obter a melhor intensidade de sinal WiFi/Bluetooth, você precisa retirar a antena incluída no pacote e conectá-la ao conector.
+ ## Uso de Bluetooth Low Energy (BLE) -Bluetooth Low Energy, abreviado como BLE, é uma variante de Bluetooth que economiza energia. A principal aplicação do BLE é a transmissão a curta distância de pequenas quantidades de dados (baixa largura de banda). Diferente do Bluetooth, que está sempre ativo, o BLE permanece constantemente em modo de suspensão, exceto quando uma conexão é iniciada. +Bluetooth Low Energy, abreviado como BLE, é uma variante de Bluetooth que economiza energia. A principal aplicação do BLE é a transmissão a curta distância de pequenas quantidades de dados (baixa largura de banda). Diferente do Bluetooth, que está sempre ligado, o BLE permanece constantemente em modo de suspensão, exceto quando uma conexão é iniciada. :::tip ESP32-C5 suporta apenas BLE e não suporta Bluetooth Clássico ::: -Devido às suas propriedades, o BLE é adequado para aplicações que precisam trocar pequenas quantidades de dados periodicamente, funcionando com uma bateria tipo moeda. Por exemplo, o BLE é de grande utilidade nas indústrias de saúde, fitness, rastreamento, beacons, segurança e automação residencial. +Devido às suas propriedades, o BLE é adequado para aplicações que precisam trocar pequenas quantidades de dados periodicamente, funcionando com uma bateria tipo moeda. Por exemplo, o BLE é muito útil nas indústrias de saúde, fitness, rastreamento, beacons, segurança e automação residencial. Isso faz com que ele consuma pouquíssima energia. O BLE consome aproximadamente 100 vezes menos energia do que o Bluetooth (dependendo do caso de uso). Sobre a parte de BLE do XIAO ESP32-C5, apresentaremos seu uso nas três seções a seguir. -- [Alguns conceitos fundamentais](#Alguns-conceitos-fundamentais) -- Primeiro conheceremos alguns conceitos que podem ser usados com frequência em BLE, a fim de nos ajudar a entender o processo de execução e o raciocínio dos programas BLE. -- [Scanner BLE](#Scanner-BLE) -- Esta seção explicará como buscar dispositivos Bluetooth próximos e imprimi-los no monitor serial. -- [Servidorcliente-BLE](#Servidorcliente-BLE) -- Esta seção explicará como usar o XIAO ESP32-C5 como Servidor e Cliente para enviar e receber mensagens de dados especificadas. Também será usado para receber ou enviar mensagens do telefone para o XIAO. +- [Alguns conceitos fundamentais](#alguns-conceitos-fundamentais) -- Primeiro conheceremos alguns conceitos que podem ser usados com frequência em BLE, a fim de nos ajudar a entender o processo de execução e o raciocínio dos programas BLE. +- [Scanner BLE](#BLE-Scanner) -- Esta seção explicará como procurar dispositivos Bluetooth próximos e imprimi-los no monitor serial. +- [Servidor/cliente BLE](#servidorcliente-ble) -- Esta seção explicará como usar o XIAO ESP32-C5 como Server e Client para enviar e receber mensagens de dados específicas. Também será usado para receber ou enviar mensagens do telefone para o XIAO. ### Alguns conceitos fundamentais #### Servidor e Cliente -Com o Bluetooth Low Energy, há dois tipos de dispositivos: o servidor e o cliente. O XIAO ESP32-C5 pode atuar tanto como cliente quanto como servidor. +Com o Bluetooth Low Energy, existem dois tipos de dispositivos: o servidor e o cliente. O XIAO ESP32-C5 pode atuar tanto como cliente quanto como servidor. -O servidor anuncia a sua existência, para que possa ser encontrado por outros dispositivos, e contém os dados que o cliente pode ler. O cliente escaneia os dispositivos próximos e, quando encontra o servidor que está procurando, estabelece uma conexão e escuta os dados de entrada. Isso é chamado de comunicação ponto a ponto. +O servidor anuncia sua existência, para que possa ser encontrado por outros dispositivos, e contém os dados que o cliente pode ler. O cliente escaneia os dispositivos próximos e, quando encontra o servidor que está procurando, estabelece uma conexão e escuta os dados recebidos. Isso é chamado de comunicação ponto a ponto.
#### Atributo -Atributo é, na verdade, um pedaço de dado. Cada dispositivo Bluetooth é usado para fornecer um serviço, e o serviço é uma coleção de dados; essa coleção pode ser chamada de banco de dados, e cada entrada no banco de dados é um Atributo, então aqui eu traduzo Atributo como entradas de dados. Você pode imaginar um dispositivo Bluetooth como uma tabela, e cada linha dentro da tabela é um Atributo. +Atributo é, na verdade, um pedaço de dado. Cada dispositivo Bluetooth é usado para fornecer um serviço, e o serviço é uma coleção de dados; essa coleção pode ser chamada de banco de dados, e cada entrada no banco de dados é um Atributo, então aqui traduzo Attribute como entradas de dados. Você pode imaginar um dispositivo Bluetooth como uma tabela, e cada linha dentro da tabela é um Atributo.
@@ -104,49 +104,49 @@ Atributo é, na verdade, um pedaço de dado. Cada dispositivo Bluetooth é usado Quando dois dispositivos Bluetooth estabelecem uma conexão, eles precisam de um protocolo para determinar como se comunicar. GATT (Generic Attribute Profile) é esse protocolo que define como os dados são transmitidos entre dispositivos Bluetooth. -No protocolo GATT, as funções e propriedades de um dispositivo são organizadas em estruturas chamadas serviços, características e descritores. Um serviço representa um conjunto de funções e recursos relacionados fornecidos por um dispositivo. Cada serviço pode incluir múltiplas características, que definem uma determinada propriedade ou comportamento do serviço, como dados de sensores ou comandos de controle. Cada característica possui um identificador exclusivo e um valor, que podem ser lidos ou escritos para se comunicar. Os descritores são usados para descrever metadados das características, como formato e permissão de acesso dos valores das características. +No protocolo GATT, as funções e propriedades de um dispositivo são organizadas em estruturas chamadas serviços, características e descritores. Um serviço representa um conjunto de funções e recursos relacionados fornecidos por um dispositivo. Cada serviço pode incluir várias características, que definem uma determinada propriedade ou comportamento do serviço, como dados de sensores ou comandos de controle. Cada característica tem um identificador exclusivo e um valor, que podem ser lidos ou escritos para se comunicar. Os descritores são usados para descrever metadados das características, como formato e permissão de acesso dos valores das características. -Ao utilizar o protocolo GATT, dispositivos Bluetooth podem se comunicar em diferentes cenários de aplicação, como transmitir dados de sensores ou controlar dispositivos remotos. +Ao usar o protocolo GATT, os dispositivos Bluetooth podem se comunicar em diferentes cenários de aplicação, como transmitir dados de sensores ou controlar dispositivos remotos. #### Característica BLE -ATT significa Attribute Protocol. É o mecanismo subjacente para a troca de dados em BLE. O ATT depende de um conjunto de comandos, como Requests, Responses, Notifications e Indications. Na Pilha de Protocolo Bluetooth, o ATT é a camada responsável pelo transporte de dados, tornando-se o foco principal ao analisar pacotes de dados Bluetooth. +ATT significa Attribute Protocol. É o mecanismo subjacente para troca de dados em BLE. O ATT depende de um conjunto de comandos, como Requests, Responses, Notifications e Indications. Na pilha de protocolos Bluetooth, o ATT é a camada responsável por transportar dados, tornando-se o foco principal ao analisar pacotes de dados Bluetooth. -O comando ATT, conhecido formalmente como ATT PDU (Protocol Data Unit). Ele inclui 4 categorias: read, write, notify e indicate. Esses comandos podem ser divididos em dois tipos: Operações como **Write Request** e **Indication** exigem um reconhecimento do outro lado, enquanto **Write Command** e **Notification** não exigem. +O comando ATT, formalmente conhecido como ATT PDU (Protocol Data Unit). Ele inclui 4 categorias: read, write, notify e indicate. Esses comandos podem ser divididos em dois tipos: Operações como **Write Request** e **Indication** exigem um reconhecimento do par, enquanto **Write Command** e **Notification** não exigem. -Service e Characteristic são definidos na camada GATT. O lado Service fornece o Service, o Service é o dado, e o dado é o atributo; o Service e a Characteristic são a apresentação lógica dos dados, ou seja, os dados que o usuário pode ver acabam sendo transformados em Service e Characteristic. +Service e Characteristic são definidos na camada GATT. O lado Service fornece o Service, o Service é o dado, e o dado é o atributo, e o Service e a Characteristic são a apresentação lógica dos dados, ou seja, os dados que o usuário pode ver são eventualmente transformados em Service e Characteristic. -Vamos dar uma olhada em como o serviço e a característica se parecem a partir da perspectiva de um celular. nRF Connect é um aplicativo que nos mostra de forma muito visual como cada pacote deve ser. +Vamos dar uma olhada em como o service e a characteristic se parecem a partir da perspectiva de um dispositivo móvel. nRF Connect é um aplicativo que nos mostra de forma muito visual como cada pacote deve ser.
-Como você pode ver, na especificação Bluetooth, cada aplicação Bluetooth específica é composta por múltiplos Services, e cada Service é composto por múltiplas Characteristics. Uma Characteristic consiste em um UUID, Propriedades e um Valor. +Como você pode ver, na especificação Bluetooth, cada aplicação Bluetooth específica é composta por múltiplos Services, e cada Service é composto por múltiplas Characteristics. Uma Characteristic consiste em um UUID, Properties e um Value.
-As Propriedades são usadas para descrever os tipos e permissões de operações em uma característica, como se ela suporta leitura, escrita, notificação e assim por diante. Isso é semelhante às quatro categorias incluídas em um ATT PDU. +Properties são usadas para descrever os tipos e permissões de operações em uma characteristic, como se ela suporta read, write, notify e assim por diante. Isso é semelhante às quatro categorias incluídas em um ATT PDU.
#### UUID -Cada serviço, característica e descritor possui um UUID (Universally Unique Identifier). Um UUID é um número exclusivo de 128 bits (16 bytes). Por exemplo: +Cada service, characteristic e descriptor tem um UUID (Universally Unique Identifier). Um UUID é um número exclusivo de 128 bits (16 bytes). Por exemplo: ``` ea094cbd-3695-4205-b32d-70c1dea93c35 ``` -Existem UUIDs reduzidos para todos os tipos, serviços e perfis especificados no [SIG (Bluetooth Special Interest Group)](https://www.bluetooth.com/specifications/gatt/services). Mas se a sua aplicação precisar de seu próprio UUID, você pode gerá-lo usando este [site gerador de UUID](https://www.uuidgenerator.net/). +Existem UUIDs abreviados para todos os tipos, serviços e perfis especificados no [SIG (Bluetooth Special Interest Group)](https://www.bluetooth.com/specifications/gatt/services). Mas se sua aplicação precisar de seu próprio UUID, você pode gerá-lo usando este [site gerador de UUID](https://www.uuidgenerator.net/). -### Exemplos de Uso de BLE +### Exemplos de uso de BLE Em seguida, apresentaremos como usar o **Bluetooth Low Energy (BLE)** no XIAO ESP32-C5 por meio de vários exemplos práticos.
-Os exemplos abaixo são implementados com base na **Arduino IDE**. Se você nunca usou a Arduino IDE antes, visite: [Primeiros Passos com Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_getting_started/) +Os exemplos abaixo são implementados com base na **Arduino IDE**. Se você nunca usou a Arduino IDE antes, visite: [Introdução ao Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_getting_started/) #### Scanner BLE -No **modo Scanner BLE**, o XIAO ESP32-C5 atua como **Central** ou como **Observer**. Em vez de estabelecer uma conexão, ele **escuta** pacotes de Advertising transmitidos por outros dispositivos na área ao redor. +No **modo Scanner BLE**, o XIAO ESP32-C5 atua como **Central** ou **Observer**. Em vez de estabelecer uma conexão, ele **escuta** os pacotes de Advertising transmitidos por outros dispositivos na área ao redor. ##### Programa @@ -194,7 +194,7 @@ void loop() { } ``` -##### Apresentação do Efeito +##### Apresentação do efeito - Faça o upload do código e abra o Monitor Serial; o XIAO ESP32-C5 irá escanear dispositivos Bluetooth no ambiente ao redor e imprimir as informações relevantes. @@ -202,14 +202,14 @@ void loop() { #### Servidor/Cliente BLE -No modo Servidor BLE, crie um Service e uma Characteristic, faça a transmissão de sua presença e aguarde que outros dispositivos se conectem para leitura e escrita de dados.
-No modo Cliente BLE, o Client escaneia um Service UUID específico, inicia uma conexão depois de encontrar o Server e lê ou escreve os valores das characteristics do Server. +No modo Servidor BLE, crie um Service e uma Characteristic, transmita sua presença e aguarde que outros dispositivos se conectem para leitura e gravação de dados.
+No modo Cliente BLE, o Client procura por um Service UUID específico, inicia uma conexão após encontrar o Server e lê ou grava os valores das characteristics do Server. ##### Programa de Servidor BLE Em seguida, um exemplo de código será usado para demonstrar como configurar um Servidor BLE no XIAO ESP32-C5. -- Código de Referência +- Código de referência ```cpp #include @@ -270,11 +270,11 @@ void loop() { } ``` -##### Apresentação do Efeito +##### Apresentação do efeito -- Faça o upload do código, depois baixe o app nRF Connect, escaneie e descubra o dispositivo BLE (nomeado **XIAO_ESP32C5_Server** conforme mencionado acima) e selecione-o para estabelecer uma conexão. +- Faça o upload do código, depois baixe o app nRF Connect, escaneie e descubra o dispositivo BLE (nomeado **XIAO_ESP32C5_Server**, conforme mencionado acima) e selecione-o para estabelecer uma conexão. -Ao mesmo tempo, você pode buscar e baixar o app **nRF Connect** nas principais lojas de aplicativos móveis, que permite que seu telefone procure e se conecte a dispositivos Bluetooth. +Ao mesmo tempo, você pode pesquisar e baixar o app **nRF Connect** nas principais lojas de aplicativos móveis, o que permite que seu telefone procure e se conecte a dispositivos Bluetooth. - Android: [nRF Connect](https://play.google.com/store/apps/details?id=no.nordicsemi.android.mcp&hl=en) - IOS: [nRF Connect](https://apps.apple.com/us/app/nrf-connect-for-mobile/id1054362403) @@ -295,7 +295,7 @@ Após baixar o software, siga as etapas mostradas abaixo para procurar e conecta Em seguida, um exemplo de código será usado para demonstrar como configurar um Cliente BLE no XIAO ESP32-C5. Para usar a funcionalidade de cliente, você precisa de pelo menos dois dispositivos XIAO com Bluetooth: um atuando como servidor para enviar dados e o outro como cliente para receber dados.
-Código de Referência +Código de referência ```cpp #include @@ -436,9 +436,9 @@ void scanAndConnect() {
-##### Apresentação do Efeito +##### Apresentação do efeito -- Faça o upload do código e, em seguida, abra o Monitor Serial para observar — você receberá os dados Bluetooth enviados pelo servidor. +- Faça o upload do código e abra o Monitor Serial para observar — você receberá os dados Bluetooth enviados pelo servidor.
@@ -454,11 +454,11 @@ A biblioteca nativa Arduino BLEDevice é baseada na pilha de protocolo Bluedroid 2. Velocidade de conexão mais rápida. -3. Compatibilidade com API: Foi projetada para ser quase totalmente compatível com a sintaxe da biblioteca BLE nativa do Arduino, exigindo apenas modificações de arquivos de cabeçalho e pequenos ajustes de tipo. +3. Compatibilidade de API: foi projetada para ser quase totalmente compatível com a sintaxe da biblioteca BLE nativa do Arduino, exigindo apenas modificações nos arquivos de cabeçalho e pequenos ajustes de tipos. Você pode visitar o repositório GitHub do autor: [NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino/tree/master) para mais detalhes.
-Em seguida, implementaremos uma função de varredura Bluetooth baseada na biblioteca NimBLE-Arduino. +Em seguida, implementaremos uma função de varredura Bluetooth com base na biblioteca NimBLE-Arduino. ##### Programa @@ -468,7 +468,7 @@ Em seguida, implementaremos uma função de varredura Bluetooth baseada na bibli
-Código de Referência +Código de referência ```CPP #include @@ -567,23 +567,23 @@ void loop() {
-##### Apresentação do Efeito +##### Apresentação do efeito -- Envie o código e abra o Monitor Serial para observar. Ele também implementa a função de varredura Bluetooth, mas com uma velocidade de varredura mais rápida. +- Envie o código e abra o Serial Monitor para observar. Ele também implementa a função de varredura Bluetooth, mas com uma velocidade de varredura mais rápida.
#### Exemplo: Conectando ao Home Assistant Neste ponto, você já deve ter adquirido uma compreensão básica dos modos BLE do XIAO ESP32-C5. -Em seguida, podemos colocar a mão na massa em um projeto mais prático: fazer o XIAO ESP32-C5 simular um sensor de temperatura e umidade (ou um simples interruptor de botão) e transmitir periodicamente os dados do sensor ou o status via BLE. O Home Assistant irá descobrir automaticamente esse dispositivo BLE e exibir diretamente os valores atuais de temperatura e umidade (ou o status do botão) na interface, sem a necessidade de configurações de integração complexas adicionais.
-Este exemplo simples demonstra totalmente o grande potencial do ESP32-C5 nos campos da Internet das Coisas (IoT) e de casas inteligentes: seu baixo consumo de energia, facilidade de desenvolvimento e suporte pronto para uso a dispositivos BLE passivos permitem que qualquer pessoa construa rapidamente sua própria rede de sensores inteligentes.
+Em seguida, podemos colocar a mão na massa em um projeto mais prático: fazer o XIAO ESP32-C5 simular um sensor de temperatura e umidade (ou um simples interruptor de botão) e transmitir periodicamente dados do sensor ou status via BLE. O Home Assistant descobrirá automaticamente esse dispositivo BLE e exibirá diretamente na interface os valores atuais de temperatura e umidade (ou o status do botão), sem a necessidade de configurações adicionais de integração complexas.
+Este exemplo simples demonstra totalmente o grande potencial do ESP32-C5 nos campos da Internet das Coisas (IoT) e casas inteligentes: seu baixo consumo de energia, facilidade de desenvolvimento e suporte pronto para uso a dispositivos BLE passivos permitem que qualquer pessoa construa rapidamente sua própria rede de sensores inteligentes.
:::tip Se você nunca usou o Home Assistant, pode visitar: [Connecting XIAO ESP32-C5 to Home Assistant](https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_homeassistant/) ::: -- Código de Referência +- Código de referência ```cpp #include @@ -656,7 +656,7 @@ void loop() {
-## Suporte Técnico & Discussão de Produtos +## Suporte técnico e discussão sobre o produto Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades. diff --git a/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_WiFi_Usage.md b/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_WiFi_Usage.md index a1b5cbe4be2e16..66a44f2ee824d8 100644 --- a/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_WiFi_Usage.md +++ b/sites/pt-BR/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_WiFi_Usage.md @@ -12,7 +12,7 @@ last_update: date: 01/06/2026 author: Zeller createdAt: '2025-12-30' -updatedAt: '2026-03-12' +updatedAt: '2026-01-20' url: https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_wifi_usage/ --- @@ -30,28 +30,28 @@ url: https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_wifi_usage/
-O Seeed Studio XIAO ESP32-C5 oferece suporte a Wi-Fi de banda dupla 2,4 GHz e 5 GHz, com um rádio Wi-Fi 6 (802.11ax) de banda dupla com compatibilidade retroativa com os padrões 802.11a/b/g/n/ac. Além disso, esta placa de desenvolvimento oferece suporte à conectividade de antena U.FL, que foi projetada para aprimorar o desempenho de conexão sem fio do XIAO ESP32-C5. Neste tutorial, exploraremos como aproveitar a funcionalidade Wi-Fi do XIAO ESP32-C5 para se conectar a uma rede Wi-Fi e executar tarefas de rede básicas.
+O Seeed Studio XIAO ESP32-C5 oferece suporte a Wi-Fi de banda dupla 2,4 GHz e 5 GHz, com um rádio Wi-Fi 6 (802.11ax) de banda dupla compatível com os padrões 802.11a/b/g/n/ac. Além disso, esta placa de desenvolvimento suporta conectividade de antena U.FL, projetada para aprimorar o desempenho da conexão sem fio do XIAO ESP32-C5. Neste tutorial, exploraremos como aproveitar a funcionalidade Wi-Fi do XIAO ESP32-C5 para se conectar a uma rede Wi-Fi e executar tarefas básicas de rede.
O tutorial a seguir usa a Arduino IDE para compilação e upload. Se você ainda não tem experiência com a Arduino IDE, visite [Introdução ao Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_getting_started/).
-## Primeiros Passos +## Introdução ### Instalação da antena -Dentro da embalagem do Seeed Studio XIAO ESP32-C5, há um **conector de Antena Wi-Fi/BT** dedicado. Para obter a força ideal do sinal WiFi/Bluetooth, você precisa retirar a antena incluída no pacote e conectá-la ao conector.
-:::tip -Se você quiser obter um efeito de ganho de sinal mais forte, pode adquirir e instalar a **Antena Externa 2.4G/5G com Conector RP-SMA Macho** — ela oferece um ganho muito maior do que a antena FPC interna incluída no pacote! +Dentro da embalagem do Seeed Studio XIAO ESP32-C5, há um **conector de antena Wi-Fi/BT** dedicado. Para obter a melhor intensidade de sinal WiFi/Bluetooth, você precisa retirar a antena incluída no pacote e conectá-la ao conector.
+ ## As interfaces comuns da biblioteca WiFi -- O XIAO ESP32-C5 fornece uma ampla gama de funções de rede Wi-Fi. Em geral, podemos ver as funções da biblioteca WiFi no pacote interno do ESP32 e escolher a função correspondente para obter a funcionalidade desejada. A seguir, listaremos algumas interfaces comumente usadas e apresentaremos seu uso. +- O XIAO ESP32-C5 fornece uma ampla gama de funções de rede Wi-Fi. Geralmente, podemos ver as funções da biblioteca WiFi no pacote interno do ESP32 e escolher a função correspondente para obter a funcionalidade desejada. A seguir, listaremos algumas interfaces comumente usadas e apresentaremos seu uso. :::tip -Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para [Exemplos de Uso de WiFi](#Exemplos-de-Uso-de-WiFi). +Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para [Exemplos de uso de WiFi](#Exemplos-de-uso-de-WiFi). ::: ### Função genérica de WiFi -- `WiFiGenericClass::getHostname()` -- É uma função na biblioteca WiFi para ESP32 que retorna o hostname do dispositivo como uma string. O hostname é um nome exclusivo que identifica o dispositivo na rede. Esta função recupera o hostname que foi definido anteriormente usando `WiFiGenericClass::setHostname()`. Se nenhum hostname tiver sido definido, o hostname padrão será retornado. +- `WiFiGenericClass::getHostname()` -- É uma função na biblioteca WiFi para ESP32 que retorna o hostname do dispositivo como uma string. O hostname é um nome exclusivo que identifica o dispositivo na rede. Esta função obtém o hostname que foi previamente definido usando `WiFiGenericClass::setHostname()`. Se nenhum hostname tiver sido definido, o hostname padrão será retornado. - `WiFiGenericClass::persistent(bool persistent)` -- É um método usado para habilitar ou desabilitar o modo persistente da biblioteca WiFi do ESP32. Quando o modo persistente está habilitado, a configuração de Wi-Fi é armazenada na memória não volátil (NVM) e é mantida mesmo após um ciclo de energia ou reset. Quando o modo persistente está desabilitado, a configuração é armazenada na RAM e é perdida após um ciclo de energia ou reset. - - **Parâmetros de Entrada** - - **persistent**: Se o argumento for true, o modo persistente será habilitado. Se o argumento for false, o modo persistente será desabilitado. + - **Parâmetros de entrada** + - **persistent**: Se o argumento for true, o modo persistente é habilitado. Se o argumento for false, o modo persistente é desabilitado. -- `WiFiGenericClass::enableLongRange(bool enable)` -- A função é usada para habilitar ou desabilitar o recurso Long Range (LR) do módulo WiFi. Quando habilitado, o recurso LR permite que o módulo se conecte a redes WiFi que estão mais distantes do que o usual, porém com taxas de dados menores. +- `WiFiGenericClass::enableLongRange(bool enable)` -- A função é usada para habilitar ou desabilitar o recurso Long Range (LR) do módulo WiFi. Quando habilitado, o recurso LR permite que o módulo se conecte a redes WiFi que estão mais distantes do que o normal, porém com taxas de dados menores. - - **Parâmetros de Entrada** + - **Parâmetros de entrada** - **enable**: O parâmetro deve ser definido como true para habilitar o recurso e false para desabilitá-lo. - `WiFiGenericClass::mode(wifi_mode_t m)` -- A função é usada para definir o modo WiFi do dispositivo. - - **Parâmetros de Entrada** + - **Parâmetros de entrada** - **m**: O parâmetro m especifica o modo a ser definido, que pode ser uma das seguintes constantes definidas no enum wifi_mode_t: - - **WIFI_MODE_NULL**: Desabilita os modos estação WiFi e ponto de acesso. + - **WIFI_MODE_NULL**: Desativa os modos estação WiFi e ponto de acesso. - **WIFI_MODE_STA**: Habilita o modo estação WiFi para se conectar a uma rede WiFi existente. - **WIFI_MODE_AP**: Habilita o modo ponto de acesso para criar uma nova rede WiFi. - **WIFI_MODE_APSTA**: Habilita tanto o modo estação WiFi quanto o modo ponto de acesso. - `WiFiGenericClass::setSleep(wifi_ps_type_t sleepType)` -- A função define o modo de economia de energia para o módulo WiFi. - - **Parâmetros de Entrada** + - **Parâmetros de entrada** - **sleepType**: O parâmetro sleepType é um tipo enumerado que especifica o tipo de modo de economia de energia a ser usado. Existem três tipos de suspensão possíveis: - **WIFI_PS_NONE**: Este é o modo de suspensão padrão, no qual o módulo WiFi não entra em modo de economia de energia. - **WIFI_PS_MIN_MODEM**: Neste modo, o módulo WiFi desliga seu modem enquanto mantém a conexão com o ponto de acesso (AP). - - **WIFI_PS_MAX_MODEM**: Habilita o modo de economia de energia de Wi-Fi mais agressivo. Ele pode aumentar significativamente o tempo de suspensão, mas pode introduzir maior latência e menor throughput e, em algumas redes, pode afetar a estabilidade da conexão. + - **WIFI_PS_MAX_MODEM**: Habilita o modo de economia de energia Wi-Fi mais agressivo. Ele pode aumentar significativamente o tempo de suspensão, mas pode introduzir maior latência e menor throughput e, em algumas redes, pode afetar a estabilidade da conexão. ### Funções STA @@ -118,22 +118,22 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - **WL_CONNECTED**: Este código de status indica que o ESP32 está conectado com sucesso a uma rede Wi-Fi. - **WL_CONNECT_FAILED**: Este código de status indica que a conexão com a rede Wi-Fi falhou. - **WL_CONNECTION_LOST**: Este código de status indica que a conexão com a rede Wi-Fi foi perdida. - - **WL_DISCONNECTED**: Este código de status indica que o ESP32 estava anteriormente conectado a uma rede Wi-Fi, mas atualmente não está conectado a nenhuma rede. + - **WL_DISCONNECTED**: Este código de status indica que o ESP32 estava previamente conectado a uma rede Wi-Fi, mas atualmente não está conectado a nenhuma rede. - `WiFiSTAClass::begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity, const char* wpa2_username, const char *wpa2_password, const char* ca_pem, const char* client_crt, const char* client_key, int32_t channel, const uint8_t* bssid, bool connect)` -- Inicia a conexão WiFi com um AP WPA2 Enterprise. - - **Parâmetros de Entrada** (Opcionais) + - **Parâmetros de entrada** (Opcionais) - **ssid**: Ponteiro para a string SSID. - **method**: O método de autenticação do WPA2 (WPA2_AUTH_TLS, WPA2_AUTH_PEAP, WPA2_AUTH_TTLS) - **wpa2_identity**: Ponteiro para a entidade - **wpa2_username**: Ponteiro para o nome de usuário - **wpa2_password**: Ponteiro para a senha. - - **ca_pem**: Ponteiro para uma string com o conteúdo de um arquivo .pem com o certificado CA + - **ca_pem**: Ponteiro para uma string com o conteúdo de um arquivo .pem com o certificado da CA - **client_crt**: Ponteiro para uma string com o conteúdo de um arquivo .crt com o certificado do cliente - **client_key**: Ponteiro para uma string com o conteúdo de um arquivo .key com a chave do cliente - **channel**: Opcional. Canal do AP - **bssid**: Opcional. BSSID / MAC do AP - - **connect**: Opcional. chama connect + - **connect**: Opcional. Chamar connect - `WiFiSTAClass::reconnect()` -- Forçará uma desconexão e, em seguida, começará a reconectar ao AP. @@ -141,32 +141,32 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - `WiFiSTAClass::disconnect(bool wifioff, bool eraseap)` -- Desconecta da rede. - - **Parâmetros de Entrada** + - **Parâmetros de entrada** - **wifioff**: wifioff `true` para desligar o rádio Wi-Fi. - **eraseap**: eraseap `true` para apagar a configuração do AP da memória NVS. - **Saída**: True/False. -- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- Altera as configurações de configuração de IP desativando o cliente dhcp. +- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- Altera as configurações de IP desativando o cliente DHCP. - - **Parâmetros de Entrada** + - **Parâmetros de entrada** - **local_ip**: Configuração de IP estático. - - **gateway**: Configuração de gateway estático. - - **subnet**: Máscara de Sub-rede estática. + - **gateway**: Configuração estática de gateway. + - **subnet**: Máscara de sub-rede estática. - **dns1**: Servidor DNS estático 1. - **dns2**: Servidor DNS estático 2. -- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- Obsoleto. Define se a estação ESP32 deve se conectar automaticamente ao AP (que está gravado) ao ser ligada. Ativa a conexão automática por padrão. +- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- Obsoleto. Define se a estação ESP32 irá se conectar automaticamente ao AP (que está gravado) quando for ligada. A conexão automática é habilitada por padrão. - - **Parâmetros de Entrada** - - **autoConnect**: bool autoConnect. + - **Parâmetros de entrada** + - **autoConnect**: Booleano autoConnect. - **Saída**: False. -- `WiFiSTAClass::waitForConnectResult(unsigned long timeoutLength)` -- Aguarda que a conexão WiFi atinja um resultado. +- `WiFiSTAClass::waitForConnectResult(unsigned long timeoutLength)` -- Aguarda até que a conexão WiFi atinja um resultado. - - **Parâmetros de Entrada** - - **timeoutLength**: O parâmetro especifica a quantidade máxima de tempo para esperar até que uma conexão seja estabelecida, em milissegundos. + - **Parâmetros de entrada** + - **timeoutLength**: O parâmetro especifica o tempo máximo de espera para que uma conexão seja estabelecida, em milissegundos. - **Saída**: um dos valores definidos em wl_status_t. @@ -176,7 +176,7 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - `WiFiSTAClass::macAddress(uint8_t* mac)` -- Obtém o endereço MAC da interface estação. - - **Parâmetros de Entrada** + - **Parâmetros de entrada** - **mac** (Opcional): Ponteiro para o array uint8_t com comprimento WL_MAC_ADDR_LENGTH. - **Saída**: Ponteiro para uint8_t *. @@ -191,14 +191,14 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para ### Funções de AP -- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- Esta é uma função na biblioteca WiFi do XIAO ESP32-C5. Ela é usada para configurar um SoftAP (ponto de acesso por programa), que permite que outros dispositivos se conectem ao XIAO ESP32-C5 e acessem seus recursos. +- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- Esta é uma função na biblioteca WiFi do XIAO ESP32-C5. Ela é usada para configurar um SoftAP (ponto de acesso programado), que permite que outros dispositivos se conectem ao XIAO ESP32-C5 e acessem seus recursos. - **Parâmetros de entrada** - **ssid**: Ponteiro para o SSID (máx. 63 caracteres). - - **passphrase**: (Para WPA2 mínimo de 8 caracteres, para aberta use NULL). + - **passphrase**: (Para WPA2 mínimo 8 caracteres, para aberto use NULL). - **channel**: Número do canal WiFi, 1 - 13. - - **ssid_hidden**: Ocultação de rede (0 = transmitir SSID, 1 = ocultar SSID). - - **max_connection**: Número máximo de clientes conectados simultaneamente, 1 - 4. + - **ssid_hidden**: Ocultação da rede (0 = transmitir SSID, 1 = ocultar SSID). + - **max_connection**: Máximo de clientes conectados simultaneamente, 1 - 4. - **Saída**: True/False. @@ -217,12 +217,12 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - `WiFiAPClass::softAPIP()` -- Obtém o endereço IP da interface softAP. - - **Saída**: IPAddress do IP do softAP. + - **Saída**: IPAddress IP do softAP. - `WiFiAPClass::softAPmacAddress(uint8_t* mac)` -- Obtém o endereço MAC da interface softAP. - **Parâmetros de entrada** - - **mac** (Opcional): Ponteiro para um array uint8_t com comprimento WL_MAC_ADDR_LENGTH. + - **mac** (Opcional): Ponteiro para o array uint8_t com comprimento WL_MAC_ADDR_LENGTH. - **Saída**: Ponteiro para uint8_t* ou String mac. @@ -235,25 +235,25 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - **show_hidden**: O parâmetro é um valor booleano que determina se a função deve incluir redes ocultas nos resultados da varredura. - **passive**: O parâmetro é um valor booleano que determina se a função deve realizar uma varredura passiva. Se definido como true, a função não transmitirá nenhum pacote durante a varredura, o que pode levar mais tempo, mas pode ser útil em certas situações. - **max_ms_per_chan**: O parâmetro é o tempo máximo gasto na varredura de cada canal em milissegundos. - - **channel**: O parâmetro é o canal Wi-Fi a ser varrido. Se definido como 0, a função fará a varredura de todos os canais disponíveis. - - **ssid**: O parâmetro é um ponteiro para uma string terminada em nulo contendo o SSID da rede a ser buscada. Se definido como nullptr, a função fará a varredura de todas as redes disponíveis. - - **bssid**: O parâmetro é um ponteiro para um array de 6 bytes contendo o endereço MAC do ponto de acesso a ser buscado. Se definido como nullptr, a função fará a varredura de todos os pontos de acesso. + - **channel**: O parâmetro é o canal Wi-Fi a ser varrido. Se definido como 0, a função irá varrer todos os canais disponíveis. + - **ssid**: O parâmetro é um ponteiro para uma string terminada em nulo contendo o SSID da rede a ser procurada. Se definido como nullptr, a função irá procurar por todas as redes disponíveis. + - **bssid**: O parâmetro é um ponteiro para um array de 6 bytes contendo o endereço MAC do ponto de acesso a ser procurado. Se definido como nullptr, a função irá procurar por todos os pontos de acesso. - **Saída**: O valor de retorno desta função é um inteiro indicando o número de redes varridas. -- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- Carrega todas as informações de uma rede WiFi varrida nos parâmetros de ponteiro. +- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- Carrega todas as informações de uma rede WiFi varrida nos parâmetros ponteiro. - **Parâmetros de entrada** - **i**: A função é usada para obter informações sobre uma rede varrida em um índice i especificado. - **ssid**: O parâmetro ssid é uma referência a uma variável String onde a função armazena o SSID da rede. - **encType**: O parâmetro encType é uma referência a uma variável uint8_t onde a função armazena o tipo de criptografia da rede (0 = aberta, 1 = WEP, 2 = WPA_PSK, 3 = WPA2_PSK, 4 = WPA_WPA2_PSK). - - **rssi**: O parâmetro rssi é uma referência a uma variável int32_t onde a função armazena a intensidade do sinal recebido (RSSI) da rede. + - **rssi**: O parâmetro rssi é uma referência a uma variável int32_t onde a função armazena a indicação de intensidade de sinal recebido (RSSI) da rede. - **bssid**: O parâmetro bssid é uma referência a um ponteiro uint8_t* onde a função armazena o BSSID (endereço MAC) da rede. - **channel**: O parâmetro channel é uma referência a uma variável int32_t onde a função armazena o número do canal da rede. - **Saída**: True/False. -- `WiFiScanClass::SSID(uint8_t i)` -- Retorna o SSID descoberto durante a varredura de rede. +- `WiFiScanClass::SSID(uint8_t i)` -- Retorna o SSID descoberto durante a varredura da rede. - **Parâmetros de entrada** - **i**: Especifica de qual item de rede se deseja obter a informação. @@ -265,30 +265,30 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - **Parâmetros de entrada** - **i**: Especifica de qual item de rede se deseja obter a informação. - - **Saída**: Valor com sinal de RSSI do item especificado na lista de redes varridas. + - **Saída**: Valor com sinal do RSSI do item especificado na lista de redes varridas. ### Funções de cliente WiFi -- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- Esta função é usada na biblioteca WiFiClient para se conectar a um endereço IP e porta remotos com um valor de timeout especificado. +- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- Esta função é usada na biblioteca WiFiClient para se conectar a um endereço IP remoto e porta com um valor de tempo limite especificado. - **Parâmetros de entrada** - **ip**: O endereço IP do servidor ao qual se conectar. - **port**: O número da porta do servidor ao qual se conectar. - - **timeout** (Opcional): O tempo máximo a esperar até que a conexão seja estabelecida, em milissegundos. Se a conexão não for estabelecida dentro desse tempo, a função retornará um erro. Se timeout for definido como 0, a função aguardará indefinidamente até que a conexão seja estabelecida. + - **timeout** (Opcional): O tempo máximo de espera para que a conexão seja estabelecida, em milissegundos. Se a conexão não for estabelecida dentro desse tempo, a função retornará um erro. Se timeout for definido como 0, a função aguardará indefinidamente até que a conexão seja estabelecida. -- `WiFiClient::stop()` -- A função é usada para desconectar o cliente do servidor e liberar o socket/porta usado pelo cliente. Após a chamada da função, o cliente não poderá mais enviar ou receber dados. +- `WiFiClient::stop()` -- A função é usada para desconectar o cliente do servidor e liberar o socket/porta usado pelo cliente. Uma vez que a função é chamada, o cliente não pode mais enviar ou receber dados. -- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- A função define o número máximo de milissegundos que o cliente aguardará até que uma conexão seja estabelecida ou que dados sejam recebidos. Se a conexão ou transferência de dados levar mais tempo que o timeout especificado, a conexão será encerrada. +- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- A função define o número máximo de milissegundos que o cliente aguardará para que uma conexão seja estabelecida ou para que dados sejam recebidos. Se a conexão ou transferência de dados levar mais tempo do que o timeout especificado, a conexão será encerrada. - **Parâmetros de entrada** - - **timeout_ms**: O número de milissegundos para o timeout. + - **timeout_ms**: O número de milissegundos para o tempo limite. - `WiFiClient::write(uint8_t data)` -- Escreve um único byte de dados para o servidor conectado por meio da instância WiFiClient. Ou `WiFiClient::write(const uint8_t *buf, size_t size)`. - **Parâmetros de entrada** - **data**: É um único byte de dados que precisa ser enviado pela conexão de rede estabelecida. -- `WiFiClient::read()` -- A função lê um único byte de dados recebidos do servidor conectado. Ela retorna o byte lido como um valor inteiro. Se não houver dados disponíveis, retorna -1. Ou `read(uint8_t *buf, size_t size)`. +- `WiFiClient::read()` -- A função lê um único byte de dados recebidos do servidor conectado. Ela retorna o byte lido como um valor inteiro. Se nenhum dado estiver disponível, retorna -1. Ou `read(uint8_t *buf, size_t size)`. - **Saída**: Um valor inteiro indicando o número de bytes recebidos. Se o valor de retorno for 0, significa que o servidor fechou a conexão. @@ -298,23 +298,23 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - `WiFiClient::available()` -- A função é usada para verificar quantos bytes de dados estão disponíveis para serem lidos do servidor. - - **Saída**: Retorna um valor inteiro representando o número de bytes disponíveis para leitura. + - **Saída**: Retorna um valor inteiro que representa o número de bytes disponíveis para leitura. ### Função de servidor WiFi -- `WiFiServer::stopAll()` -- Esta função é um método da classe WiFiServer na biblioteca WiFi do Arduino. Este método interrompe todas as instâncias de servidor que foram criadas usando a classe WiFiServer. É útil quando você quer parar todos os servidores de uma vez em vez de chamar o método `stop()` para cada instância individualmente. +- `WiFiServer::stopAll()` -- Esta função é um método da classe WiFiServer na biblioteca WiFi do Arduino. Este método interrompe todas as instâncias de servidor que são criadas usando a classe WiFiServer. É útil quando você deseja parar todos os servidores de uma vez em vez de chamar o método `stop()` para cada instância individualmente. -- `WiFiServer::begin(uint16_t port, int enable)` -- A função é usada para iniciar um servidor na porta especificada. O servidor ficará escutando por conexões de clientes. +- `WiFiServer::begin(uint16_t port, int enable)` -- A função é usada para iniciar um servidor na porta especificada. O servidor ficará escutando conexões de clientes. - **Parâmetros de entrada** - **port**: O número da porta na qual escutar. - - **enable** (Opcional): Uma flag para indicar se o servidor deve ser habilitado imediatamente após ser iniciado. Esta flag é definida como true por padrão. + - **enable** (Opcional): Um sinalizador para indicar se o servidor deve ser habilitado imediatamente após ser iniciado. Este sinalizador é definido como true por padrão. -- `WiFiServer::hasClient()` -- A função é usada para verificar se há alguma conexão de cliente chegando disponível no servidor. Esta função pode ser usada em um loop para verificar continuamente por novas conexões. +- `WiFiServer::hasClient()` -- A função é usada para verificar se há alguma conexão de cliente de entrada disponível no servidor. Esta função pode ser usada em um loop para verificar continuamente novas conexões. - **Saída**: Retorna um objeto WiFiClient se um cliente tiver se conectado ou um ponteiro NULL se não houver clientes aguardando conexão. -- `WiFiServer::end()` -- A função é usada para parar o servidor e liberar os recursos associados. Uma vez chamada, o servidor não poderá mais aceitar novas conexões de clientes. Quaisquer conexões de clientes existentes permanecerão abertas até serem fechadas pelo cliente ou pelo servidor. `WiFiServer::close()` e `WiFiServer::stop()` têm a mesma função. +- `WiFiServer::end()` -- A função é usada para parar o servidor e liberar os recursos associados. Uma vez chamada, o servidor não poderá mais aceitar novas conexões de clientes. Quaisquer conexões de clientes existentes permanecerão abertas até que sejam fechadas pelo cliente ou pelo servidor. `WiFiServer::close()` e `WiFiServer::stop()` têm a mesma função. ### Funções WiFi múltiplas @@ -322,14 +322,14 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para - **Parâmetros de entrada** - **ssid**: Ponteiro para o SSID (máx. 63 caracteres). - - **passphrase**: (para WPA2 mínimo de 8 caracteres, para aberta use NULL). + - **passphrase**: (para WPA2 mínimo 8 caracteres, para aberto use NULL). - **Saída**: True/False - `WiFiMulti::run(uint32_t connectTimeout)` -- A função tenta se conectar a um dos pontos de acesso salvos em ordem sequencial até que se conecte com sucesso a um. - **Parâmetros de entrada** - - **connectTimeout**: O parâmetro especifica o tempo máximo de espera por uma conexão em milissegundos. Se connectTimeout for definido como 0, a função não terá timeout e tentará se conectar indefinidamente. + - **connectTimeout**: O parâmetro especifica o tempo máximo de espera por uma conexão em milissegundos. Se connectTimeout for definido como 0, a função não terá tempo limite e tentará se conectar indefinidamente. - **Saída**: status @@ -337,15 +337,15 @@ Se você quiser iniciar o tutorial de uso de Wi-Fi diretamente, pode pular para Em seguida, usaremos o XIAO ESP32-C5 para demonstrar como usar algumas funções básicas de Wi-Fi. -### Escanear Rede +### Verificar rede -O XIAO ESP32-C5 suporta Wi-Fi dual-band de 2,4 GHz e 5 GHz, e pode escanear as redes Wi-Fi de 2,4 GHz e 5 GHz ao redor, bem como suas intensidades de sinal, no modo de varredura. +O XIAO ESP32-C5 suporta Wi-Fi de banda dupla 2,4 GHz e 5 GHz e pode verificar as redes Wi-Fi de 2,4 GHz e 5 GHz ao redor, bem como suas intensidades de sinal, no modo de varredura. #### Programa -Abaixo está um programa de exemplo para mostrar como o XIAO ESP32-C5 realiza a varredura das redes Wi-Fi ao redor. +Abaixo está um programa de exemplo para mostrar como o XIAO ESP32-C5 verifica as redes Wi-Fi ao redor. -- Código de Referência +- Código de referência
@@ -439,25 +439,25 @@ void loop() {
-#### Apresentação do Efeito +#### Apresentação do efeito -- Após enviar o programa, abra o Serial Monitor da Arduino IDE, e serão exibidas as informações das redes Wi-Fi escaneadas. +- Após enviar o programa, abra o Serial Monitor da Arduino IDE, e as informações das redes Wi-Fi verificadas serão exibidas.
-### Conectando a uma Rede Wi-Fi +### Conectando-se a uma rede Wi-Fi -Dentro da área de cobertura do Wi-Fi, você pode se conectar a uma rede Wi-Fi específica por meio do modo STA suportado pelo XIAO ESP32-C5, desde que conheça o SSID e a PASSWORD da rede Wi-Fi de destino. +Dentro da área de cobertura do Wi-Fi, você pode se conectar a uma rede Wi-Fi específica por meio do modo STA suportado pelo XIAO ESP32-C5, desde que saiba o SSID e a PASSWORD da rede Wi-Fi de destino. #### Programa Em seguida, é fornecido um programa de exemplo para mostrar como o XIAO ESP32-C5 se conecta a uma rede Wi-Fi especificada. :::tip -O XIAO ESP32-C5 suporta Wi-Fi dual-band (2,4 GHz e 5 GHz), permitindo que você escolha a conexão com base na sua rede doméstica. +O XIAO ESP32-C5 suporta Wi-Fi de banda dupla (2,4 GHz e 5 GHz), permitindo que você escolha a conexão com base na sua rede doméstica. ::: -- Código de Referência +- Código de referência ```cpp #include @@ -511,7 +511,7 @@ void loop() { } ``` -#### Apresentação do Efeito +#### Apresentação do efeito - Após enviar o programa, abra o Serial Monitor da Arduino IDE, e serão exibidas informações como o endereço IP da rede Wi-Fi conectada. - Eu estou conectado à rede de 5 GHz no meu ambiente. @@ -520,15 +520,15 @@ void loop() { ### Modo AP -O XIAO ESP32-C5 pode funcionar como um ponto de acesso para outros dispositivos se conectarem. Em outras palavras, você pode usar dispositivos com Wi-Fi para se conectar ao XIAO ESP32-C5 sem precisar conectá-lo ao seu roteador. +O XIAO ESP32-C5 pode funcionar como um hotspot para que outros dispositivos se conectem. Em outras palavras, você pode usar dispositivos com Wi-Fi para se conectar ao XIAO ESP32-C5 sem se conectar ao seu roteador. -Simplificando, quando você configura o XIAO ESP32-C5 como um ponto de acesso, você cria a sua própria rede Wi-Fi independente, à qual dispositivos Wi-Fi próximos (estações) podem se conectar (como seu smartphone ou computador). +Simplificando, quando você configura o XIAO ESP32-C5 como um ponto de acesso, você cria sua própria rede Wi-Fi independente, à qual dispositivos Wi-Fi próximos (estações) podem se conectar (como seu smartphone ou computador). #### Programa Em seguida, é apresentado um programa de exemplo para mostrar como o XIAO ESP32-C5 cria um hotspot e permite que outros dispositivos se conectem a ele. -- Código de Referência +- Código de referência ```cpp #include @@ -586,19 +586,19 @@ void loop() { } ``` -#### Apresentação do Efeito +#### Apresentação do efeito - Após compilar e enviar o programa, você poderá descobrir o hotspot AP por meio da função WLAN.
-- Quando a conexão for bem-sucedida, o Serial Monitor imprimirá o endereço IP, e o LED USER onboard acenderá simultaneamente. +- Após a conexão bem-sucedida, o Serial Monitor imprimirá o endereço IP e o LED USER onboard acenderá simultaneamente.
-### Uso de WiFi & MQTT +### Uso de WiFi e MQTT -O protocolo MQTT é amplamente utilizado em dispositivos de IoT, e o XIAO ESP32-C5 suporta esse protocolo — o que significa que você pode usar o XIAO ESP32-C5 para desenvolver muitos projetos de IoT interessantes. +O protocolo MQTT é amplamente utilizado em dispositivos de IoT, e o XIAO ESP32-C5 oferece suporte a esse protocolo — o que significa que você pode usar o XIAO ESP32-C5 para desenvolver muitos projetos de IoT interessantes. #### Programa @@ -608,7 +608,7 @@ Em seguida, será apresentado um programa de referência para mostrar como usar
-- Código de Referência +- Código de referência ```cpp #include @@ -690,9 +690,9 @@ void loop() { #### Apresentação do Efeito -- Baixe qualquer software que ofereça suporte ao cliente broker MQTTX; aqui é usado o MQTTX [MQTTx](https://mqttx.app/downloads) +- Baixe qualquer software que ofereça suporte ao cliente broker MQTTX; aqui é utilizado o MQTTX [MQTTx](https://mqttx.app/downloads) -- Abra o MQTTX e adicione as informações do cliente. Aqui é usado o endereço de cliente padrão, então você só precisa adicionar o ID do cliente `ESP32C5Client` e definir o nome do cliente de teste; o restante das configurações pode ser mantido como padrão. +- Abra o MQTTX e adicione as informações do cliente. Aqui é usado o endereço padrão do cliente, então você só precisa adicionar o ID do cliente `ESP32C5Client` e definir o nome do cliente de teste; o restante das configurações pode ser mantido como padrão.

@@ -700,23 +700,23 @@ void loop() {

-- Configure as informações da assinatura: insira `esp32c5/test/topic` e selecione 0 ou 1 para QoS. +- Configure as informações da assinatura: insira `esp32c5/test/topic` e selecione 0 ou 1 para o QoS.

-- Após a configuração bem-sucedida, você poderá ver as mensagens publicadas pelo XIAO ESP32-C5 (atuando como cliente) a cada 2 segundos. Você também pode enviar mensagens para o cliente depois de selecionar um tópico, e o cliente as publicará após o recebimento. +- Após a configuração bem-sucedida, você poderá ver as mensagens publicadas pelo XIAO ESP32-C5 (atuando como cliente) a cada 2 segundos. Você também pode enviar mensagens para o cliente após selecionar um tópico, e o cliente as publicará ao recebê-las.

:::tip -broker.emqx.io é um broker público compartilhado por todos os usuários. Qualquer pessoa que assinar o mesmo tópico poderá visualizar suas mensagens. Ele se destina apenas a fins de teste e não é adequado para transmitir dados sensíveis. +broker.emqx.io é um broker público compartilhado por todos os usuários. Qualquer pessoa que assine o mesmo tópico pode visualizar suas mensagens. Ele é destinado apenas para fins de teste e não é adequado para transmitir dados sensíveis. ::: ### WiFi & HTTP /HTTPS - Você pode consultar o exemplo que escrevemos para o XIAO ESP32C3 para acessar o ChatGPT, que detalha como usar WiFiClient e HTTPClient: [Learn to use WiFiClient and HTTPClient on XIAO ESP32C3 - XIAO ESP32C3 & ChatGPT in action](https://wiki.seeedstudio.com/pt-br/xiaoesp32c3-chatgpt/) -- Se você quiser apenas explorar o uso simples de HTTP, também pode seguir as etapas abaixo para teste e verificação. +- Se você quiser apenas explorar o uso simples de HTTP, também pode seguir os passos abaixo para teste e verificação. #### Programa @@ -802,15 +802,15 @@ void loop() { `https://jsonplaceholder.typicode.com` é um serviço gratuito de teste de API REST simulada, projetado especificamente para fins de desenvolvimento e teste. Ele não oferece suporte à modificação permanente ou persistência de dados reais. ::: -- Faça o upload do código, então você pode abrir `https://jsonplaceholder.typicode.com/todos/1` e a ferramenta Serial Monitor na IDE Arduino para verificar se as informações são consistentes. +- Faça o upload do código e, em seguida, você pode abrir `https://jsonplaceholder.typicode.com/todos/1` e a ferramenta Serial Monitor na IDE do Arduino para verificar se as informações são consistentes.
### WiFi-Mesh -A seguir está a introdução oficial do **ESP-WIFI-MESH** pela Espressif Systems: +A seguir está a introdução oficial da **ESP-WIFI-MESH** pela Espressif Systems: -ESP-WIFI-MESH é uma rede de comunicação sem fio com nós organizados em uma topologia mesh usando o recurso AP-STA simultâneo nos SoCs da Espressif. Ela fornece uma rede de autoformação e autorrecuperação, com facilidade de implantação. A topologia de rede do ESP-WIFI-MESH pode escalar até 1000 nós em grandes áreas, sem exigir qualquer suporte específico de infraestrutura Wi-Fi. O ESP-WIFI-MESH também pode ser usado para cobrir pontos cegos de Wi-Fi em cenários de implantação doméstica onde o sinal Wi-Fi não consegue alcançar. +ESP-WIFI-MESH é uma rede de comunicação sem fio com nós organizados em uma topologia mesh usando o recurso AP-STA simultâneo nos SoCs da Espressif. Ela fornece uma rede de autoformação e autorrecuperação, com facilidade de implantação. A topologia de rede da ESP-WIFI-MESH pode escalar até 1000 nós em grandes áreas, sem exigir qualquer suporte específico de infraestrutura Wi-Fi. A ESP-WIFI-MESH também pode ser usada para cobrir pontos cegos de Wi-Fi em cenários de implantação doméstica onde o sinal Wi-Fi não consegue alcançar. Para informações mais detalhadas, consulte o link oficial da Espressif Systems: @@ -903,15 +903,15 @@ void loop() { - Faça o upload do código para dois dispositivos XIAO ESP32-C5 e abra qualquer ferramenta de porta serial para verificar os resultados. -O dispositivo 1 do XIAO ESP32-C5 inicia a formação da rede e envia mensagens. +O Dispositivo 1 do XIAO ESP32-C5 inicia a formação da rede e envia mensagens.

-O dispositivo 2 do XIAO ESP32-C5 entra na rede e recebe mensagens enviadas pelo Dispositivo 1. +O Dispositivo 2 do XIAO ESP32-C5 entra na rede e recebe as mensagens enviadas pelo Dispositivo 1.
-### Exemplo: Hub de Casa Inteligente IoT +### Exemplo: Hub de Casa Inteligente para IoT A partir dos exemplos de Wi-Fi acima, você já deve ter dominado como usar o Wi-Fi no XIAO ESP32-C5. Em seguida, será apresentado um exemplo para mostrar como implementar um hub de controle de casa inteligente usando o modo Wi-Fi AP e serviços de rede HTTP — especificamente, como usar o XIAO ESP32-C5 como um hub de controle de casa inteligente para monitorar o status da sua casa. @@ -1293,23 +1293,23 @@ void loop() {

-- Digite o endereço IP para acessar a página da web. +- Insira o endereço IP para acessar a página da web.

:::tip -Os controles e sensores exibidos na página da web são personalizáveis. Você pode adicionar novos e modificar a página gerada de acordo com suas necessidades específicas. Para referência: [ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) +Os controles e sensores exibidos na página da web são personalizáveis. Você pode adicionar novos elementos e modificar a página gerada de acordo com suas necessidades específicas. Para referência: [ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) ::: :::tip -O hotspot AP gerado pelo XIAO ESP32-C5 não consegue se conectar à internet por padrão. Se for necessário acesso à internet, você pode adotar um dos dois métodos a seguir:
+O hotspot AP gerado pelo XIAO ESP32-C5 não consegue se conectar à internet por padrão. Se for necessária conectividade com a internet, você pode adotar um dos dois métodos a seguir:
Método 1: Conectar o XIAO ESP32-C5 ao Home Assistant. Para referência: [Connecting XIAO ESP32-C5 to Home Assistant](https://wiki.seeedstudio.com/pt-br/xiao_esp32c5_homeassistant/)
Método 2: Usar um serviço MQTT para enviar dados para um servidor em nuvem. Observe que esse método pode exigir a compra de uma certa quantidade de créditos de serviço. Para referência: [Goole Cloud](https://cloud.google.com/)
::: -## Suporte Técnico e Discussão sobre o Produto +## Suporte Técnico e Discussão de Produtos -Obrigado por escolher nossos produtos! Estamos aqui para oferecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades. +Obrigado por escolher nossos produtos! Estamos aqui para oferecer diferentes formas de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.
diff --git a/sites/pt-BR/sidebars.js b/sites/pt-BR/sidebars.js index f274b9a0030bd6..0b0ca64ef8eb4f 100644 --- a/sites/pt-BR/sidebars.js +++ b/sites/pt-BR/sidebars.js @@ -1317,7 +1317,7 @@ const sidebars = { label: 'Conexão sem fio', items: [ 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_WiFi_Usage', - 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Buletooth_Usage', + 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/pt_XIAO_ESP32C5_Bluetooth_Usage', ], }, { diff --git a/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Buletooth_Usage.md b/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Bluetooth_Usage.md similarity index 66% rename from sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Buletooth_Usage.md rename to sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Bluetooth_Usage.md index 6fdf4f9255ee6e..eb48a4ad2661fe 100644 --- a/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Buletooth_Usage.md +++ b/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Bluetooth_Usage.md @@ -4,16 +4,16 @@ description: Seeed Studio XIAO ESP32-C5 的蓝牙使用 keywords: - xiao - esp32c5 - - buletooth + - bluetooth image: https://files.seeedstudio.com/wiki/XIAO_ESP32C5/Getting_started/Seeed-Studio-XIAO-ESP32C5_1.webp -slug: /xiao_esp32c5_buletooth_usage +slug: /xiao_esp32c5_bluetooth_usage sidebar_class_name: hidden last_update: date: 01/06/2026 author: Zeller createdAt: '2026-01-06' updatedAt: '2026-01-19' -url: https://wiki.seeedstudio.com/cn/xiao_esp32c5_buletooth_usage/ +url: https://wiki.seeedstudio.com/cn/xiao_esp32c5_bluetooth_usage/ --- # Seeed Studio XIAO ESP32-C5 的蓝牙使用 @@ -30,22 +30,22 @@ url: https://wiki.seeedstudio.com/cn/xiao_esp32c5_buletooth_usage/
-Seeed Studio XIAO ESP32-C5 是一款功能强大的开发板,支持蓝牙 5、BLE 和 Mesh 网络,是需要无线连接的各种物联网应用的理想选择。凭借其出色的射频性能,XIAO ESP32-C5 可以在各种距离上提供可靠和高速的无线通信,使其成为短距离和长距离无线应用的多功能解决方案。在本教程中,我们将重点介绍 XIAO ESP32-C5 蓝牙功能的基本特性,例如如何扫描附近的蓝牙设备、如何建立蓝牙连接以及如何通过蓝牙连接传输和接收数据。 +Seeed Studio XIAO ESP32-C5 是一款功能强大的开发板,支持 Bluetooth 5、BLE 和 Mesh 网络,使其成为需要无线连接的各类物联网应用的理想选择。凭借出色的射频性能,XIAO ESP32-C5 能够在多种距离范围内提供可靠且高速的无线通信,使其既适用于短距离也适用于远距离的无线应用。在本教程中,我们将重点介绍 XIAO ESP32-C5 蓝牙功能的一些基础特性,例如如何扫描附近的蓝牙设备、如何建立蓝牙连接,以及如何通过蓝牙连接收发数据。 ## 入门指南 ### 天线安装 -在 Seeed Studio XIAO ESP32-C5 的包装内,有一个专用的 **Wi-Fi/BT 天线连接器**。为了获得最佳的 WiFi/蓝牙信号强度,您需要取出包装中包含的天线并将其连接到连接器上。
-:::tip -如果您想获得更强的信号增益效果,可以购买并安装 **2.4G/5G External Antenna with RP-SMA Male Connector** — 它比包装中包含的内置 FPC 天线提供更高的增益! +在 Seeed Studio XIAO ESP32-C5 的包装内,配有一个专用的 **Wi-Fi/BT 天线连接器**。为了获得最佳的 WiFi/Bluetooth 信号强度,你需要取出包装中附带的天线并将其连接到该连接器上。
+ -## 低功耗蓝牙(BLE)使用 +## 蓝牙低功耗(BLE)使用 -低功耗蓝牙,简称 BLE,是蓝牙的一种节能变体。BLE 的主要应用是短距离传输少量数据(低带宽)。与始终开启的蓝牙不同,BLE 除了在启动连接时外,始终保持在睡眠模式。 +Bluetooth Low Energy,简称 BLE,是一种节能型的蓝牙变体。BLE 的主要应用是短距离传输少量数据(低带宽)。与始终保持连接的传统蓝牙不同,BLE 除非在发起连接时,否则会一直保持在休眠模式。 :::tip -ESP32-C5 仅支持 BLE,不支持经典蓝牙 +ESP32-C5 只支持 BLE,不支持传统蓝牙(Bluetooth Classic) ::: -由于其特性,BLE 适用于需要定期交换少量数据并在纽扣电池上运行的应用。例如,BLE 在医疗保健、健身、跟踪、信标、安全和家庭自动化行业中非常有用。 +由于这些特性,BLE 非常适合在纽扣电池上运行、需要周期性交换少量数据的应用。例如,BLE 在医疗保健、健身、追踪、Beacon、安防以及家庭自动化等行业中有着广泛用途。 -这使其功耗非常低。BLE 的功耗大约比蓝牙低 100 倍(取决于使用情况)。 +这使得它的功耗非常低。BLE 的功耗大约比传统蓝牙低 100 倍(具体取决于使用场景)。 -关于 XIAO ESP32-C5 的 BLE 部分,我们将在以下三个部分介绍其使用方法。 +关于 XIAO ESP32-C5 的 BLE 部分,我们将在接下来的三个小节中介绍其使用方法。 -- [一些基本概念](#一些基本概念) -- 我们将首先了解一些在 BLE 中可能经常使用的概念,以帮助我们理解 BLE 程序的执行过程和思路。 -- [BLE 扫描器](#BLE-扫描器) -- 本节将解释如何搜索附近的蓝牙设备并在串行监视器中打印它们。 -- [BLE 服务器/客户端](#BLE-服务器客户端) -- 本节将解释如何使用 XIAO ESP32-C5 作为服务器和客户端来发送和接收指定的数据消息。它还将用于从手机接收或向 XIAO 发送消息。 +- [一些基础概念](#一些基础概念) -- 我们首先会了解一些在 BLE 中可能经常用到的概念,以帮助我们理解 BLE 程序的执行过程和思路。 +- [BLE 扫描器](#BLE-扫描器) -- 本节将讲解如何搜索附近的蓝牙设备,并在串口监视器中打印出来。 +- [BLE 服务器/客户端](#BLE-服务器客户端) -- 本节将讲解如何将 XIAO ESP32-C5 作为服务器和客户端来发送和接收指定的数据消息,同时也会用于从手机向 XIAO 接收或发送消息。 -### 一些基本概念 +### 一些基础概念 #### 服务器和客户端 -在低功耗蓝牙中,有两种类型的设备:服务器和客户端。XIAO ESP32-C5 可以充当客户端或服务器。 +在蓝牙低功耗中,设备分为两种类型:服务器和客户端。XIAO ESP32-C5 既可以作为客户端,也可以作为服务器。 -服务器广播其存在,以便其他设备可以找到它,并包含客户端可以读取的数据。客户端扫描附近的设备,当它找到正在寻找的服务器时,它建立连接并监听传入的数据。这称为点对点通信。 +服务器会广播自身的存在,以便被其他设备发现,并包含客户端可以读取的数据。客户端会扫描附近的设备,当找到目标服务器后,就会建立连接并监听接收数据。这被称为点对点通信。
-#### 属性 +#### Attribute(属性) -属性实际上是一段数据。每个蓝牙设备都用于提供服务,服务是数据的集合,该集合可以称为数据库,数据库中的每个条目都是一个属性,所以这里我将属性翻译为数据条目。您可以将蓝牙设备想象为一个表格,表格内的每一行都是一个属性。 +Attribute 实际上就是一条数据。每个蓝牙设备都是用来提供某种服务的,而服务是数据的集合,这个集合可以称为数据库,数据库中的每一条记录就是一个 Attribute,所以这里我把 Attribute 翻译为数据条目。你可以把一个蓝牙设备想象成一张表格,表格中的每一行就是一个 Attribute。
#### GATT -当两个蓝牙设备建立连接时,它们需要一个协议来确定如何通信。GATT(通用属性配置文件)就是这样一个协议,它定义了蓝牙设备之间如何传输数据。 +当两个蓝牙设备建立连接时,它们需要一种协议来确定如何通信。GATT(Generic Attribute Profile,通用属性配置文件)就是这样一种协议,它定义了蓝牙设备之间数据是如何传输的。 -在 GATT 协议中,设备的功能和属性被组织成称为服务、特征和描述符的结构。服务表示设备提供的一组相关功能和特性。每个服务可以包含多个特征,这些特征定义了服务的某种属性或行为,例如传感器数据或控制命令。每个特征都有一个唯一标识符和一个值,可以读取或写入以进行通信。描述符用于描述特征的元数据,例如特征值的格式和访问权限。 +在 GATT 协议中,设备的功能和属性被组织成称为服务(Service)、特征(Characteristic)和描述符(Descriptor)的结构。服务表示设备提供的一组相关功能和特性。每个服务可以包含多个特征,特征定义了服务的某个属性或行为,例如传感器数据或控制命令。每个特征都有唯一的标识符和一个值,通过读取或写入该值来进行通信。描述符用于描述特征的元数据,例如特征值的格式和访问权限。 通过使用 GATT 协议,蓝牙设备可以在不同的应用场景中进行通信,例如传输传感器数据或控制远程设备。 -#### BLE 特征 +#### BLE Characteristic(特征) -ATT 代表属性协议。它是 BLE 中数据交换的底层机制。ATT 依赖于一组命令,例如请求、响应、通知和指示。在蓝牙协议栈中,ATT 是负责传输数据的层,使其成为分析蓝牙数据包时的主要关注点。 +ATT 是 Attribute Protocol(属性协议)的缩写。它是 BLE 中进行数据交换的底层机制。ATT 依赖一组命令,例如 Requests、Responses、Notifications 和 Indications。在蓝牙协议栈中,ATT 是负责传输数据的层,因此在分析蓝牙数据包时,它是主要关注的对象。 -ATT 命令,正式称为 ATT PDU(协议数据单元)。它包括 4 个类别:读取、写入、通知和指示。这些命令可以分为两种类型:像 **Write Request** 和 **Indication** 这样的操作需要对等方的确认,而 **Write Command** 和 **Notification** 则不需要。 +ATT 命令正式名称为 ATT PDU(Protocol Data Unit,协议数据单元)。它包括 4 大类:读(read)、写(write)、通知(notify)和指示(indicate)。这些命令可以分为两种类型:像 **Write Request** 和 **Indication** 这样的操作需要对端确认,而 **Write Command** 和 **Notification** 则不需要。 -服务和特征在 GATT 层中定义。服务端提供服务,服务就是数据,数据就是属性,服务和特征是数据的逻辑表示,或者说用户可以看到的数据最终转换为服务和特征。 +Service 和 Characteristic 定义在 GATT 层。服务端提供 Service,Service 就是数据,而数据就是 Attribute,Service 和 Characteristic 是数据的逻辑呈现形式,或者说用户能够看到的数据最终都会被转换为 Service 和 Characteristic。 -让我们从移动设备的角度看看服务和特征是什么样的。nRF Connect 是一个应用程序,它非常直观地向我们展示了每个数据包应该是什么样子。 +我们从手机端的角度来看一下 Service 和 Characteristic 是什么样子的。nRF Connect 是一款应用,它可以非常直观地向我们展示每个数据包应该是什么样子。
-如您所见,在蓝牙规范中,每个特定的蓝牙应用都由多个服务组成,每个服务由多个特征组成。特征由 UUID、属性和值组成。 +可以看到,在蓝牙规范中,每一个具体的蓝牙应用都是由多个 Service 组成,而每个 Service 又由多个 Characteristic 组成。一个 Characteristic 由 UUID、Properties 和 Value 构成。
-属性用于描述对特征的操作类型和权限,例如是否支持读取、写入、通知等。这类似于 ATT PDU 中包含的四个类别。 +Properties 用于描述对某个特征可以进行的操作类型和权限,例如是否支持读、写、通知等。这与一个 ATT PDU 中包含的四大类操作类似。
#### UUID -每个服务、特征和描述符都有一个 UUID(通用唯一标识符)。UUID 是一个唯一的 128 位(16 字节)数字。例如: +每个 Service、Characteristic 和 Descriptor 都有一个 UUID(Universally Unique Identifier,通用唯一标识符)。UUID 是一个唯一的 128 位(16 字节)数字。例如: ``` ea094cbd-3695-4205-b32d-70c1dea93c35 ``` -对于 [SIG(蓝牙特殊兴趣小组)](https://www.bluetooth.com/specifications/gatt/services) 中指定的所有类型、服务和配置文件,都有缩短的 UUID。但如果您的应用程序需要自己的 UUID,您可以使用这个 [UUID 生成器网站](https://www.uuidgenerator.net/) 来生成它。 +对于 [SIG(Bluetooth Special Interest Group,蓝牙特别兴趣小组)](https://www.bluetooth.com/specifications/gatt/services) 指定的所有类型、服务和配置文件,都有缩短形式的 UUID。但如果你的应用需要自定义 UUID,可以使用这个 [UUID 生成网站](https://www.uuidgenerator.net/) 来生成。 ### BLE 使用示例 -接下来,我们将通过几个实际示例介绍如何在 XIAO ESP32-C5 上使用 **低功耗蓝牙(BLE)**。
+接下来,我们将通过几个实际示例来介绍如何在 XIAO ESP32-C5 上使用 **Bluetooth Low Energy (BLE)**。
-以下示例基于 **Arduino IDE** 实现。如果您之前没有使用过 Arduino IDE,请访问:[Seeed Studio XIAO ESP32-C5 入门指南](https://wiki.seeedstudio.com/cn/xiao_esp32c5_getting_started/) +下面的示例是基于 **Arduino IDE** 实现的。如果你之前没有使用过 Arduino IDE,请访问:[Seeed Studio XIAO ESP32-C5 入门指南](https://wiki.seeedstudio.com/cn/xiao_esp32c5_getting_started/) #### BLE 扫描器 -在 **BLE 扫描器模式**下,XIAO ESP32-C5 充当 **中央设备**或 **观察者**。它不建立连接,而是**监听**周围区域其他设备广播的广告数据包。 +在 **BLE 扫描器模式** 下,XIAO ESP32-C5 充当 **Central(中心设备)** 或 **Observer(观察者)**。它不会建立连接,而是**监听**周围其他设备广播的 Advertising 数据包。 ##### 程序 -- 以下是演示如何在 XIAO ESP32-C5 上使用 BLE 扫描器模式的参考代码片段。 +- 下面是一个参考代码片段,演示如何在 XIAO ESP32-C5 上使用 BLE 扫描器模式。 ```cpp #include @@ -200,14 +200,14 @@ void loop() {
-#### BLE 服务器/客户端 +#### BLE Server/Client -在 BLE 服务器模式下,创建一个服务和特征,广播其存在,并等待其他设备连接以读写数据。
-在 BLE 客户端模式下,客户端扫描特定的服务 UUID,找到服务器后发起连接,并读取或写入服务器的特征值。 +在 BLE Server 模式下,创建一个 Service 和 Characteristic,广播其存在,并等待其他设备连接以进行数据读写。
+在 BLE Client 模式下,Client 扫描特定的 Service UUID,在找到 Server 后发起连接,并读取或写入 Server 的 characteristic 值。 -##### BLE 服务器程序 +##### BLE Server 程序 -接下来,将使用一个代码示例来演示如何在 XIAO ESP32-C5 上设置 BLE 服务器。 +接下来,将通过一个代码示例演示如何在 XIAO ESP32-C5 上搭建 BLE Server。 - 参考代码 @@ -272,14 +272,14 @@ void loop() { ##### 效果展示 -- 上传代码,然后下载 nRF Connect 应用,扫描并发现 BLE 设备(如上所述,名为 **XIAO_ESP32C5_Server**),选择它以建立连接。 +- 上传代码,然后下载 nRF Connect 应用,扫描并发现 BLE 设备(如上所述,名称为 **XIAO_ESP32C5_Server**),并选择它以建立连接。 -同时,您可以在主要的移动应用商店中搜索并下载 **nRF Connect** 应用,该应用允许您的手机搜索并连接蓝牙设备。 +同时,你可以在各大手机应用商店中搜索并下载 **nRF Connect** 应用,它可以让你的手机搜索并连接蓝牙设备。 - Android: [nRF Connect](https://play.google.com/store/apps/details?id=no.nordicsemi.android.mcp&hl=en) - IOS: [nRF Connect](https://apps.apple.com/us/app/nrf-connect-for-mobile/id1054362403) -下载软件后,按照下面显示的步骤搜索并连接 XIAO ESP32-C5,您将看到广播的 **Hello World from XIAO**。 +下载软件后,按照下图所示步骤搜索并连接 XIAO ESP32-C5,你将看到广播的 **Hello World from XIAO**。 @@ -290,9 +290,9 @@ void loop() {
-##### BLE 客户端程序 +##### BLE Client 程序 -接下来,将使用一个代码示例来演示如何在 XIAO ESP32-C5 上设置 BLE 客户端。要使用客户端功能,您需要至少两个支持蓝牙的 XIAO 设备:一个作为服务器发送数据,另一个作为客户端接收数据。 +接下来,将通过一个代码示例演示如何在 XIAO ESP32-C5 上搭建 BLE Client。要使用 Client 功能,你至少需要两个支持蓝牙的 XIAO 设备:一个作为 Server 发送数据,另一个作为 Client 接收数据。
参考代码 @@ -438,27 +438,27 @@ void scanAndConnect() { ##### 效果展示 -- 上传代码,然后打开串口监视器观察——您将接收到服务器发送的蓝牙数据。 +- 上传代码,然后打开串口监视器进行观察——你将接收到由 Server 发送的蓝牙数据。
:::tip -验证客户端功能时,您需要提前将服务器程序烧录到另一个 XIAO 设备上;否则验证将失败。 +在验证 Client 功能时,你需要事先将 Server 程序烧录到另一块 XIAO 设备上,否则验证将失败。 ::: #### NimBLE-Arduino -原生的 Arduino BLEDevice 库基于 Bluedroid 协议栈;它提供完整功能但消耗大量的 Flash 和 RAM。NimBLE 是一个完全重写的 BLE 协议栈(源自 Apache Mynewt),具有以下优势: +原生 Arduino BLEDevice 库基于 Bluedroid 协议栈,功能完整但会占用大量 Flash 和 RAM。NimBLE 是一个完全重写的 BLE 协议栈(源自 Apache Mynewt),具有以下优点: 1. 极低的内存占用(RAM 使用量减少超过 50%)。 2. 更快的连接速度。 -3. API 兼容性:它被设计为与原生 Arduino BLE 库的语法几乎完全兼容,只需要修改头文件和少量类型调整。 +3. API 兼容性:其设计几乎完全兼容原生 Arduino BLE 库的语法,只需修改头文件并进行少量类型调整即可。 -您可以访问作者的 GitHub 仓库:[NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino/tree/master) 了解更多详情。
+你可以访问作者的 GitHub 仓库:[NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino/tree/master) 了解更多详细信息。
-接下来,我们将基于 NimBLE-Arduino 库实现蓝牙扫描功能。 +接下来,我们将基于 NimBLE-Arduino 库实现一个蓝牙扫描功能。 ##### 程序 @@ -569,18 +569,18 @@ void loop() { ##### 效果展示 -- 上传代码并打开串口监视器观察。它同样实现了蓝牙扫描功能,但扫描速度更快。 +- 上传代码并打开串口监视器进行观察。它同样实现了蓝牙扫描功能,但扫描速度更快。
#### 示例:连接到 Home Assistant -到此为止,您应该已经对 XIAO ESP32-C5 的 BLE 模式有了基本的了解。 -接下来,我们可以动手做一个更实用的项目:让 XIAO ESP32-C5 模拟一个温湿度传感器(或简单的按钮开关),通过 BLE 定期广播传感器数据或状态。Home Assistant 将自动发现这个 BLE 设备,并直接在界面上显示当前的温湿度值(或按钮状态),无需额外的复杂集成配置。
-这个简单的示例充分展示了 ESP32-C5 在物联网(IoT)和智能家居领域的巨大潜力:其低功耗、易于开发以及对被动 BLE 设备的开箱即用支持,使任何人都能快速构建自己的智能传感器网络。
+到目前为止,你应该已经对 XIAO ESP32-C5 的 BLE 模式有了基本的了解。 +接下来,我们可以动手做一个更实用的项目:让 XIAO ESP32-C5 模拟一个温湿度传感器(或一个简单的按键开关),并通过 BLE 周期性地广播传感器数据或状态。Home Assistant 会自动发现这个 BLE 设备,并在界面上直接显示当前的温湿度数值(或按键状态),无需额外复杂的集成配置。
+这个简单的示例充分展示了 ESP32-C5 在物联网(IoT)和智能家居领域的巨大潜力:其低功耗、易开发,以及对被动 BLE 设备的开箱即用支持,使任何人都能快速搭建自己的智能传感器网络。
:::tip -如果您从未使用过 Home Assistant,可以访问:[连接 XIAO ESP32-C5 到 Home Assistant](https://wiki.seeedstudio.com/cn/xiao_esp32c5_homeassistant/) +如果你从未使用过 Home Assistant,可以访问:[将 XIAO ESP32-C5 连接到 Home Assistant](https://wiki.seeedstudio.com/cn/xiao_esp32c5_homeassistant/) ::: - 参考代码 @@ -652,13 +652,13 @@ void loop() { } ``` -- 上传代码并打开 Home Assistant 平台。您可以在 **Settings** -> **Devices & Services** 下找到 BTHome 设备并将其添加到仪表板。 +- 上传代码并打开 Home Assistant 平台。你可以在 **Settings** -> **Devices & Services** 下找到 BTHome 设备,并将其添加到仪表盘。
## 技术支持与产品讨论 -感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。 +感谢你选择我们的产品!我们将为你提供多种支持,以确保你在使用我们产品的过程中尽可能顺利。我们提供多种沟通渠道,以满足不同的偏好和需求。
diff --git a/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_WiFi_Usage.md b/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_WiFi_Usage.md index 0b8e5de3292e89..51c66cf455ffb9 100644 --- a/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_WiFi_Usage.md +++ b/sites/zh-CN/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_WiFi_Usage.md @@ -1,6 +1,6 @@ --- title: WiFi 使用 -description: Seeed Studio XIAO ESP32-C5 的 WiFi 使用 +description: 使用 Seeed Studio XIAO ESP32-C5 的 WiFi 功能 keywords: - xiao - esp32c5 @@ -16,7 +16,7 @@ updatedAt: '2026-01-20' url: https://wiki.seeedstudio.com/cn/xiao_esp32c5_wifi_usage/ --- -# Seeed Studio XIAO ESP32-C5 的 WiFi 使用 +# 使用 Seeed Studio XIAO ESP32-C5 的 WiFi 功能
@@ -30,28 +30,28 @@ url: https://wiki.seeedstudio.com/cn/xiao_esp32c5_wifi_usage/
-Seeed Studio XIAO ESP32-C5 支持双频 2.4 GHz 和 5 GHz Wi-Fi,具有双频 Wi-Fi 6 (802.11ax) 无线电,并向后兼容 802.11a/b/g/n/ac 标准。此外,这款开发板支持 U.FL 天线连接,旨在增强 XIAO ESP32-C5 的无线连接性能。在本教程中,我们将探索如何利用 XIAO ESP32-C5 的 Wi-Fi 功能连接到 Wi-Fi 网络并执行基本的网络任务。
-以下教程使用 Arduino IDE 进行编译和上传。如果您还没有使用 Arduino IDE 的经验,请访问 [Seeed Studio XIAO ESP32-C5 入门指南](https://wiki.seeedstudio.com/cn/xiao_esp32c5_getting_started/)。
+Seeed Studio XIAO ESP32-C5 支持双频 2.4 GHz 和 5 GHz Wi-Fi,配备双频 Wi-Fi 6(802.11ax)射频,并向下兼容 802.11a/b/g/n/ac 标准。此外,该开发板支持 U.FL 天线连接,旨在增强 XIAO ESP32-C5 的无线连接性能。在本教程中,我们将介绍如何利用 XIAO ESP32-C5 的 Wi-Fi 功能连接到 Wi-Fi 网络并执行基本的网络任务。
+以下教程使用 Arduino IDE 进行编译和烧录。如果你还没有使用 Arduino IDE 的经验,请访问 [Getting Started with Seeed Studio XIAO ESP32-C5](https://wiki.seeedstudio.com/cn/xiao_esp32c5_getting_started/)。
## 入门指南 ### 天线安装 -在 Seeed Studio XIAO ESP32-C5 的包装内,有一个专用的 **Wi-Fi/BT 天线连接器**。为了获得最佳的 WiFi/蓝牙信号强度,您需要取出包装中包含的天线并将其连接到连接器上。
-:::tip -如果您想获得更强的信号增益效果,可以购买并安装 **2.4G/5G 外置天线(带 RP-SMA 公头连接器)** — 它比包装中包含的内置 FPC 天线提供更高的增益! +在 Seeed Studio XIAO ESP32-C5 的包装内,配有一个专用的 **Wi-Fi/BT 天线连接器**。为了获得最佳的 WiFi/Bluetooth 信号强度,你需要取出包装中附带的天线并将其连接到该连接器上。
+ ## WiFi 库的常用接口 -- XIAO ESP32-C5 提供了广泛的 Wi-Fi 网络功能。通常,我们可以在 ESP32 的内置包中查看 WiFi 库的功能,并选择相应的功能来实现所需的功能。接下来,我们将列出一些常用的接口并介绍它们的用法。 +- XIAO ESP32-C5 提供了丰富的 Wi-Fi 网络功能。通常,我们可以查看 ESP32 内置包中的 WiFi 库函数,并选择相应的函数来实现所需的功能。接下来,我们将列出一些常用接口并介绍它们的用法。 :::tip -如果您想直接开始 Wi-Fi 使用教程,可以跳转到 [WiFi 使用示例](#wifi-usage-examples)。 +如果你想直接开始 Wi-Fi 使用教程,可以跳转到 [WiFi 使用示例](#WiFi-使用示例)。 ::: -### 通用 WiFi 功能 +### 通用 WiFi 函数 -- `WiFiGenericClass::getHostname()` -- 是 ESP32 WiFi 库中的一个函数,以字符串形式返回设备的主机名。主机名是在网络上标识设备的唯一名称。此函数检索之前使用 `WiFiGenericClass::setHostname()` 设置的主机名。如果没有设置主机名,将返回默认主机名。 +- `WiFiGenericClass::getHostname()` -- 是 ESP32 WiFi 库中的一个函数,用于以字符串形式返回设备的主机名。主机名是在网络中标识设备的唯一名称。该函数会获取之前通过 `WiFiGenericClass::setHostname()` 设置的主机名。如果尚未设置主机名,则会返回默认主机名。 -- `WiFiGenericClass::persistent(bool persistent)` -- 是一个用于启用或禁用 ESP32 WiFi 库持久模式的方法。当启用持久模式时,Wi-Fi 配置存储在非易失性存储器 (NVM) 中,即使在断电或重置后也会保留。当禁用持久模式时,配置存储在 RAM 中,在断电或重置后会丢失。 +- `WiFiGenericClass::persistent(bool persistent)` -- 是一个用于启用或禁用 ESP32 WiFi 库持久化模式的方法。当启用持久化模式时,Wi-Fi 配置信息会存储在非易失性存储器(NVM)中,即使断电或复位也会保留。当禁用持久化模式时,配置信息存储在 RAM 中,在断电或复位后会丢失。 - **输入参数** - - **persistent**:如果参数为 true,则启用持久模式。如果参数为 false,则禁用持久模式。 + - **persistent**: 如果参数为 true,则启用持久化模式;如果参数为 false,则禁用持久化模式。 -- `WiFiGenericClass::enableLongRange(bool enable)` -- 该函数用于启用或禁用 WiFi 模块的长距离 (LR) 功能。启用时,LR 功能允许模块连接到比平常更远的 WiFi 网络,但数据速率较低。 +- `WiFiGenericClass::enableLongRange(bool enable)` -- 该函数用于启用或禁用 WiFi 模块的 Long Range(LR,长距离)特性。启用后,LR 功能允许模块连接到比平常更远距离的 WiFi 网络,但数据速率会降低。 - **输入参数** - - **enable**:该参数应设置为 true 以启用该功能,设置为 false 以禁用该功能。 + - **enable**: 将该参数设置为 true 以启用该特性,设置为 false 以禁用。 - `WiFiGenericClass::mode(wifi_mode_t m)` -- 该函数用于设置设备的 WiFi 模式。 - **输入参数** - - **m**:m 参数指定要设置的模式,可以是 wifi_mode_t 枚举中定义的以下常量之一: - - **WIFI_MODE_NULL**:禁用 WiFi 站点和接入点模式。 - - **WIFI_MODE_STA**:启用 WiFi 站点模式以连接到现有的 WiFi 网络。 - - **WIFI_MODE_AP**:启用接入点模式以创建新的 WiFi 网络。 - - **WIFI_MODE_APSTA**:同时启用 WiFi 站点和接入点模式。 + - **m**: 参数 m 指定要设置的模式,可以是 wifi_mode_t 枚举中定义的以下常量之一: + - **WIFI_MODE_NULL**: 禁用 WiFi station 和接入点模式。 + - **WIFI_MODE_STA**: 启用 WiFi station 模式,用于连接到现有 WiFi 网络。 + - **WIFI_MODE_AP**: 启用接入点模式,用于创建新的 WiFi 网络。 + - **WIFI_MODE_APSTA**: 同时启用 WiFi station 和接入点模式。 -- `WiFiGenericClass::setSleep(wifi_ps_type_t sleepType)` -- 该函数为 WiFi 模块设置省电模式。 +- `WiFiGenericClass::setSleep(wifi_ps_type_t sleepType)` -- 该函数用于为 WiFi 模块设置省电模式。 - **输入参数** - - **sleepType**:sleepType 参数是一个枚举类型,指定要使用的省电模式类型。有三种可能的睡眠类型: - - **WIFI_PS_NONE**:这是默认睡眠模式,WiFi 模块不进入省电模式。 - - **WIFI_PS_MIN_MODEM**:在此模式下,WiFi 模块关闭其调制解调器,同时保持与接入点 (AP) 的连接。 - - **WIFI_PS_MAX_MODEM**:启用最激进的 Wi-Fi 省电模式。它可以显著增加睡眠时间,但可能引入更高的延迟和降低的吞吐量,在某些网络中可能影响连接稳定性。 + - **sleepType**: sleepType 参数是一个枚举类型,用于指定要使用的省电模式类型。有三种可能的睡眠类型: + - **WIFI_PS_NONE**: 默认睡眠模式,WiFi 模块不会进入省电模式。 + - **WIFI_PS_MIN_MODEM**: 在此模式下,WiFi 模块会关闭其调制解调器,同时保持与接入点(AP)的连接。 + - **WIFI_PS_MAX_MODEM**: 启用最激进的 Wi-Fi 省电模式。它可以显著增加休眠时间,但可能会带来更高的延迟和更低的吞吐量,并且在某些网络中可能影响连接稳定性。 -### STA 功能 +### STA 函数 - `WiFiSTAClass::status()` -- 返回连接状态。 - - **输出**:wl_status_t 中定义的值之一。 - - **WL_NO_SHIELD**:此状态码表示 Wi-Fi 模块不存在。 - - **WL_IDLE_STATUS**:此状态码表示 Wi-Fi 模块未执行任何操作。 - - **WL_NO_SSID_AVAIL**:此状态码表示在扫描期间未找到 Wi-Fi 网络。 - - **WL_SCAN_COMPLETED**:此状态码表示 Wi-Fi 扫描已成功完成。 - - **WL_CONNECTED**:此状态码表示 ESP32 已成功连接到 Wi-Fi 网络。 - - **WL_CONNECT_FAILED**:此状态码表示连接到 Wi-Fi 网络失败。 - - **WL_CONNECTION_LOST**:此状态码表示与 Wi-Fi 网络的连接已丢失。 - - **WL_DISCONNECTED**:此状态码表示 ESP32 之前连接到 Wi-Fi 网络,但当前未连接到任何网络。 + - **输出**: wl_status_t 中定义的值之一。 + - **WL_NO_SHIELD**: 表示 Wi-Fi 模块不存在。 + - **WL_IDLE_STATUS**: 表示 Wi-Fi 模块当前未执行任何操作。 + - **WL_NO_SSID_AVAIL**: 表示在扫描过程中未找到任何 Wi-Fi 网络。 + - **WL_SCAN_COMPLETED**: 表示 Wi-Fi 扫描已成功完成。 + - **WL_CONNECTED**: 表示 ESP32 已成功连接到某个 Wi-Fi 网络。 + - **WL_CONNECT_FAILED**: 表示连接到 Wi-Fi 网络失败。 + - **WL_CONNECTION_LOST**: 表示与 Wi-Fi 网络的连接已丢失。 + - **WL_DISCONNECTED**: 表示 ESP32 之前连接过某个 Wi-Fi 网络,但当前未连接到任何网络。 -- `WiFiSTAClass::begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity, const char* wpa2_username, const char *wpa2_password, const char* ca_pem, const char* client_crt, const char* client_key, int32_t channel, const uint8_t* bssid, bool connect)` -- 开始与 WPA2 企业级 AP 的 Wifi 连接。 +- `WiFiSTAClass::begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity, const char* wpa2_username, const char *wpa2_password, const char* ca_pem, const char* client_crt, const char* client_key, int32_t channel, const uint8_t* bssid, bool connect)` -- 使用 WPA2 Enterprise AP 启动 Wifi 连接。 - **输入参数**(可选) - - **ssid**:指向 SSID 字符串的指针。 - - **method**:WPA2 的认证方法(WPA2_AUTH_TLS、WPA2_AUTH_PEAP、WPA2_AUTH_TTLS) - - **wpa2_identity**:指向实体的指针 - - **wpa2_username**:指向用户名的指针 - - **wpa2_password**:指向密码的指针。 - - **ca_pem**:指向包含 CA 证书的 .pem 文件内容字符串的指针 - - **client_crt**:指向包含客户端证书的 .crt 文件内容字符串的指针 - - **client_key**:指向包含客户端密钥的 .key 文件内容字符串的指针 - - **channel**:可选。AP 的信道 - - **bssid**:可选。AP 的 BSSID / MAC - - **connect**:可选。调用连接 + - **ssid**: 指向 SSID 字符串的指针。 + - **method**: WPA2 的认证方法(WPA2_AUTH_TLS, WPA2_AUTH_PEAP, WPA2_AUTH_TTLS) + - **wpa2_identity**: 指向实体的指针 + - **wpa2_username**: 指向用户名的指针 + - **wpa2_password**: 指向密码的指针。 + - **ca_pem**: 指向包含 CA 证书的 .pem 文件内容字符串的指针 + - **client_crt**: 指向包含客户端证书的 .crt 文件内容字符串的指针 + - **client_key**: 指向包含客户端密钥的 .key 文件内容字符串的指针 + - **channel**: 可选。AP 的信道 + - **bssid**: 可选。AP 的 BSSID / MAC + - **connect**: 可选。是否调用连接 - `WiFiSTAClass::reconnect()` -- 将强制断开连接,然后开始重新连接到 AP。 - - **输出**:True/False。 + - **输出**: True/False。 -- `WiFiSTAClass::disconnect(bool wifioff, bool eraseap)` -- 断开与网络的连接。 +- `WiFiSTAClass::disconnect(bool wifioff, bool eraseap)` -- 从网络断开连接。 - **输入参数** - - **wifioff**:wifioff `true` 关闭 Wi-Fi 无线电。 - - **eraseap**:eraseap `true` 从 NVS 存储器中擦除 AP 配置。 + - **wifioff**: wifioff 为 `true` 时关闭 Wi-Fi 射频。 + - **eraseap**: eraseap 为 `true` 时从 NVS 存储器中擦除 AP 配置。 - - **输出**:True/False。 + - **输出**: True/False。 -- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- 更改 IP 配置设置,禁用 dhcp 客户端。 +- `WiFiSTAClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1, IPAddress dns2)` -- 更改 IP 配置设置并禁用 DHCP 客户端。 - **输入参数** - - **local_ip**:静态 IP 配置。 - - **gateway**:静态网关配置。 - - **subnet**:静态子网掩码。 - - **dns1**:静态 DNS 服务器 1。 - - **dns2**:静态 DNS 服务器 2。 + - **local_ip**: 静态 IP 配置。 + - **gateway**: 静态网关配置。 + - **subnet**: 静态子网掩码。 + - **dns1**: 静态 DNS 服务器 1。 + - **dns2**: 静态 DNS 服务器 2。 -- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- 已弃用。设置 ESP32 站点在通电时是否自动连接到 AP(已记录)。默认启用自动连接。 +- `WiFiSTAClass::setAutoConnect(bool autoConnect)` -- 已弃用。用于设置 ESP32 station 在上电时是否自动连接到已记录的 AP。默认启用自动连接。 - **输入参数** - - **autoConnect**:autoConnect 布尔值。 + - **autoConnect**: autoConnect 布尔值。 - - **输出**:False。 + - **输出**: False。 -- `WiFiSTAClass::waitForConnectResult(unsigned long timeoutLength)` -- 等待 WiFi 连接达到结果。 +- `WiFiSTAClass::waitForConnectResult(unsigned long timeoutLength)` -- 等待 WiFi 连接得到结果。 - **输入参数** - - **timeoutLength**:该参数指定等待建立连接的最大时间,以毫秒为单位。 + - **timeoutLength**: 该参数指定等待建立连接的最长时间,单位为毫秒。 - - **输出**:wl_status_t 中定义的值之一。 + - **输出**: wl_status_t 中定义的值之一。 -- `WiFiSTAClass::localIP()` -- 获取站点接口 IP 地址。 +- `WiFiSTAClass::localIP()` -- 获取 station 接口的 IP 地址。 - - **输出**:IPAddress 站点 IP。 + - **输出**: IPAddress station IP。 -- `WiFiSTAClass::macAddress(uint8_t* mac)` -- 获取站点接口 MAC 地址。 +- `WiFiSTAClass::macAddress(uint8_t* mac)` -- 获取 station 接口的 MAC 地址。 - **输入参数** - - **mac**(可选):指向长度为 WL_MAC_ADDR_LENGTH 的 uint8_t 数组的指针。 + - **mac**(可选): 指向长度为 WL_MAC_ADDR_LENGTH 的 uint8_t 数组的指针。 - - **输出**:指向 uint8_t * 的指针。 + - **输出**: 指向 uint8_t * 的指针。 -- `WiFiSTAClass::SSID()` -- 返回与网络关联的当前 SSID。 +- `WiFiSTAClass::SSID()` -- 返回当前与网络关联的 SSID。 - - **输出**:SSID。 + - **输出**: SSID。 -- `WiFiSTAClass::RSSI(void)` -- 返回当前网络 RSSI。 +- `WiFiSTAClass::RSSI(void)` -- 返回当前网络的 RSSI。 - - **输出**:RSSI。 + - **输出**: RSSI。 -### AP 功能 +### AP 函数 -- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- 这是 XIAO ESP32-C5 WiFi 库中的一个函数。它用于设置 SoftAP(程序接入点),允许其他设备连接到 XIAO ESP32-C5 并访问其资源。 +- `WiFiAPClass::softAP(const char* ssid, const char* passphrase, int channel, int ssid_hidden, int max_connection, bool ftm_responder)` -- 这是 XIAO ESP32-C5 的 WiFi 库中的一个函数,用于建立 SoftAP(程序接入点),使其他设备可以连接到 XIAO ESP32-C5 并访问其资源。 - **输入参数** - - **ssid**: 指向 SSID 的指针(最多 63 个字符)。 - - **passphrase**: (WPA2 最少 8 个字符,开放网络使用 NULL)。 - - **channel**: WiFi 信道号,1 - 13。 - - **ssid_hidden**: 网络隐藏(0 = 广播 SSID,1 = 隐藏 SSID)。 - - **max_connection**: 最大同时连接客户端数,1 - 4。 + - **ssid**: 指向 SSID 的指针(最多 63 个字符)。 + - **passphrase**: (对于 WPA2,最少 8 个字符;若为开放网络则使用 NULL)。 + - **channel**: WiFi 信道号,1 - 13。 + - **ssid_hidden**: 网络隐藏(0 = 广播 SSID,1 = 隐藏 SSID)。 + - **max_connection**: 最大同时连接的客户端数量,1 - 4。 - - **输出**:True/False。 + - **输出**: True/False。 -- `WiFiAPClass::softAPgetStationNum()` -- 获取连接到 softAP 接口的站点/客户端数量。 +- `WiFiAPClass::softAPgetStationNum()` -- 获取连接到 softAP 接口的 Station / 客户端数量。 - - **输出**:站点数量。 + - **输出**: Station 数量。 - `WiFiAPClass::softAPConfig(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dhcp_lease_start)` -- 用于配置 SoftAP 的函数。 - **输入参数** - - **local_ip**: 接入点 IP。 - - **gateway**: 网关 IP。 - - **subnet**: 子网掩码。 + - **local_ip**: 接入点 IP。 + - **gateway**: 网关 IP。 + - **subnet**: 子网掩码。 - - **输出**:True/False。 + - **输出**: True/False。 -- `WiFiAPClass::softAPIP()` -- 获取 softAP 接口 IP 地址。 +- `WiFiAPClass::softAPIP()` -- 获取 softAP 接口的 IP 地址。 - - **输出**:IPAddress softAP IP。 + - **输出**: IPAddress softAP IP。 -- `WiFiAPClass::softAPmacAddress(uint8_t* mac)` -- 获取 softAP 接口 MAC 地址。 +- `WiFiAPClass::softAPmacAddress(uint8_t* mac)` -- 获取 softAP 接口的 MAC 地址。 - **输入参数** - - **mac**(可选): 指向长度为 WL_MAC_ADDR_LENGTH 的 uint8_t 数组的指针。 + - **mac** (可选): 指向长度为 WL_MAC_ADDR_LENGTH 的 uint8_t 数组的指针。 - - **输出**:指向 uint8_t* 的指针或字符串 mac。 + - **输出**: 指向 uint8_t* 的指针或 String 类型的 mac。 -### WiFi 扫描功能 +### WiFi 扫描函数 - `WiFiScanClass::scanNetworks(bool async, bool show_hidden, bool passive, uint32_t max_ms_per_chan, uint8_t channel, const char * ssid, const uint8_t * bssid)` -- 开始扫描可用的 WiFi 网络。 - **输入参数** - - **async**:该参数是一个布尔值,决定是否异步执行扫描。如果设置为 true,函数立即返回,扫描结果可以稍后通过调用 getScanResults() 函数获取。如果设置为 false,函数将阻塞直到扫描完成。 - - **show_hidden**:该参数是一个布尔值,决定函数是否应在扫描结果中包含隐藏网络。 - - **passive**:该参数是一个布尔值,决定函数是否应执行被动扫描。如果设置为 true,函数在扫描期间不会传输任何数据包,这可能需要更长时间,但在某些情况下可能有用。 - - **max_ms_per_chan**:该参数是扫描每个信道的最大时间(毫秒)。 - - **channel**:该参数是要扫描的 Wi-Fi 信道。如果设置为 0,函数将扫描所有可用信道。 - - **ssid**:该参数是指向包含要扫描网络 SSID 的以空字符结尾的字符串的指针。如果设置为 nullptr,函数将扫描所有可用网络。 - - **bssid**:该参数是指向包含要扫描的接入点 MAC 地址的 6 字节数组的指针。如果设置为 nullptr,函数将扫描所有接入点。 + - **async**: 该参数是一个布尔值,用于决定是否以异步方式执行扫描。若设为 true,函数会立即返回,之后可以通过调用 `getScanResults()` 函数获取扫描结果。若设为 false,函数会阻塞直到扫描完成。 + - **show_hidden**: 该参数是一个布尔值,用于决定函数是否在扫描结果中包含隐藏网络。 + - **passive**: 该参数是一个布尔值,用于决定函数是否执行被动扫描。若设为 true,函数在扫描期间不会发送任何数据包,扫描可能耗时更长,但在某些场景下会更有用。 + - **max_ms_per_chan**: 该参数是每个信道上用于扫描的最长时间(毫秒)。 + - **channel**: 该参数是要扫描的 Wi-Fi 信道。如果设为 0,函数将扫描所有可用信道。 + - **ssid**: 该参数是一个指向以空字符结尾的字符串的指针,包含要扫描的网络的 SSID。如果设为 nullptr,函数将扫描所有可用网络。 + - **bssid**: 该参数是一个指向 6 字节数组的指针,包含要扫描的接入点的 MAC 地址。如果设为 nullptr,函数将扫描所有接入点。 - - **输出**:此函数的返回值是一个整数,表示扫描到的网络数量。 + - **输出**: 此函数的返回值是一个整数,表示扫描到的网络数量。 -- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- 将扫描到的 wifi 的所有信息加载到指针参数中。 +- `WiFiScanClass::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel)` -- 将某个已扫描 WiFi 的所有信息加载到指针参数中。 - **输入参数** - - **i**:该函数用于检索指定索引 i 处扫描网络的信息。 - - **ssid**:ssid 参数是对 String 变量的引用,函数在其中存储网络的 SSID。 - - **encType**:encType 参数是对 uint8_t 变量的引用,函数在其中存储网络的加密类型(0 = 开放,1 = WEP,2 = WPA_PSK,3 = WPA2_PSK,4 = WPA_WPA2_PSK)。 - - **rssi**:rssi 参数是对 int32_t 变量的引用,函数在其中存储网络的接收信号强度指示(RSSI)。 - - **bssid**:bssid 参数是对 uint8_t* 指针的引用,函数在其中存储网络的 BSSID(MAC 地址)。 - - **channel**:channel 参数是对 int32_t 变量的引用,函数在其中存储网络的信道号。 + - **i**: 该函数用于获取指定索引 i 处的已扫描网络的信息。 + - **ssid**: 参数 ssid 是一个 String 变量的引用,函数会在其中存储网络的 SSID。 + - **encType**: 参数 encType 是一个 uint8_t 变量的引用,函数会在其中存储网络的加密类型(0 = open,1 = WEP,2 = WPA_PSK,3 = WPA2_PSK,4 = WPA_WPA2_PSK)。 + - **rssi**: 参数 rssi 是一个 int32_t 变量的引用,函数会在其中存储网络的接收信号强度指示(RSSI)。 + - **bssid**: 参数 bssid 是一个 uint8_t* 指针的引用,函数会在其中存储网络的 BSSID(MAC 地址)。 + - **channel**: 参数 channel 是一个 int32_t 变量的引用,函数会在其中存储网络的信道号。 - - **输出**:True/False。 + - **输出**: True/False。 -- `WiFiScanClass::SSID(uint8_t i)` -- 返回网络扫描期间发现的 SSID。 +- `WiFiScanClass::SSID(uint8_t i)` -- 返回在网络扫描过程中发现的 SSID。 - **输入参数** - - **i**:指定要从哪个网络项目获取信息。 + - **i**: 指定要从哪个网络条目获取信息。 - - **输出**:扫描网络列表中指定项目的 SSID 字符串。 + - **输出**: 已扫描网络列表中指定条目的 SSID 字符串。 -- `WiFiScanClass::RSSI(uint8_t i)` -- 返回在 scanNetworks 期间发现的网络的 RSSI。 +- `WiFiScanClass::RSSI(uint8_t i)` -- 返回在 `scanNetworks` 过程中发现的网络的 RSSI。 - **输入参数** - - **i**:指定要从哪个网络项目获取信息。 + - **i**: 指定要从哪个网络条目获取信息。 - - **输出**:扫描网络列表中指定项目的 RSSI 有符号值。 + - **输出**: 已扫描网络列表中指定条目的 RSSI 有符号值。 -### WiFi 客户端功能 +### WiFi 客户端函数 -- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- 此函数在 WiFiClient 库中用于连接到具有指定超时值的远程 IP 地址和端口。 +- `WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)` -- 此函数用于 WiFiClient 库中,以指定的超时时间连接到远程 IP 地址和端口。 - **输入参数** - - **ip**: 要连接的服务器的 IP 地址。 - - **port**: 要连接的服务器的端口号。 - - **timeout**(可选): 等待连接建立的最大时间(毫秒)。如果在此时间内未建立连接,函数将返回错误。如果 timeout 设置为 0,函数将无限期等待连接建立。 + - **ip**: 要连接的服务器 IP 地址。 + - **port**: 要连接的服务器端口号。 + - **timeout** (可选): 建立连接所允许等待的最长时间(毫秒)。如果在该时间内未建立连接,函数将返回错误。如果 timeout 设为 0,函数将无限期等待连接建立。 -- `WiFiClient::stop()` -- 该函数用于断开客户端与服务器的连接并释放客户端使用的套接字/端口。一旦调用该函数,客户端就不能再发送或接收数据。 +- `WiFiClient::stop()` -- 该函数用于将客户端与服务器断开连接,并释放客户端使用的套接字/端口。一旦调用该函数,客户端将无法再发送或接收数据。 -- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- 该函数设置客户端等待连接建立或接收数据的最大毫秒数。如果连接或数据传输时间超过指定的超时时间,连接将被关闭。 +- `WiFiClient::setTimeout(uint32_t timeout_ms)` -- 该函数设置客户端在等待连接建立或接收数据时的最长等待毫秒数。如果连接或数据传输时间超过指定的超时时间,连接将被关闭。 - **输入参数** - - **timeout_ms**: 超时的毫秒数。 + - **timeout_ms**: 超时时间的毫秒数。 -- `WiFiClient::write(uint8_t data)` -- 通过 WiFiClient 实例向连接的服务器写入单个字节的数据。或者 `WiFiClient::write(const uint8_t *buf, size_t size)`。 +- `WiFiClient::write(uint8_t data)` -- 通过 WiFiClient 实例向已连接的服务器写入单字节数据。或者使用 `WiFiClient::write(const uint8_t *buf, size_t size)`。 - **输入参数** - - **data**: 是需要通过已建立的网络连接发送的单个字节数据。 + - **data**: 需要通过已建立的网络连接发送的单字节数据。 -- `WiFiClient::read()` -- 该函数从连接的服务器读取单个字节的传入数据。它将读取的字节作为整数值返回。如果没有可用数据,它返回 -1。或者 `read(uint8_t *buf, size_t size)`。 +- `WiFiClient::read()` -- 该函数从已连接的服务器读取一个字节的传入数据。它以整数形式返回读取到的字节。如果没有可用数据,则返回 -1。或者使用 `read(uint8_t *buf, size_t size)`。 - - **输出**:表示接收字节数的整数值。如果返回值为 0,表示服务器已关闭连接。 + - **输出**: 一个整数值,表示接收到的字节数。如果返回值为 0,表示服务器已关闭连接。 -- `WiFiClient::peek()` -- 该函数用于检查是否有任何数据可从服务器读取,而不实际读取它。 +- `WiFiClient::peek()` -- 该函数用于在不实际读取数据的情况下,检查服务器是否有可读数据。 - - **输出**:它返回下一个传入数据字节,而不从接收缓冲区中删除它。如果没有可用数据,它返回 -1。 + - **输出**: 返回下一个传入数据字节,但不会将其从接收缓冲区中移除。如果没有可用数据,则返回 -1。 -- `WiFiClient::available()` -- 该函数用于检查有多少字节的数据可从服务器读取。 +- `WiFiClient::available()` -- 该函数用于检查服务器端有多少字节数据可供读取。 - - **输出**:它返回一个整数值,表示可读取的字节数。 + - **输出**: 返回一个整数值,表示可读取的字节数。 -### WiFi 服务器功能 +### WiFi 服务器函数 -- `WiFiServer::stopAll()` -- 此函数是 Arduino WiFi 库中 WiFiServer 类的一个方法。此方法停止使用 WiFiServer 类创建的所有服务器实例。当您想要一次停止所有服务器而不是为每个实例单独调用 `stop()` 方法时,这很有用。 +- `WiFiServer::stopAll()` -- 该函数是 Arduino WiFi 库中 WiFiServer 类的方法。此方法会停止所有使用 WiFiServer 类创建的服务器实例。当你希望一次性停止所有服务器,而不是对每个实例单独调用 `stop()` 方法时,这个函数非常有用。 - `WiFiServer::begin(uint16_t port, int enable)` -- 该函数用于在指定端口上启动服务器。服务器将监听传入的客户端连接。 - **输入参数** - - **port**: 要监听的端口号。 - - **enable**(可选): 一个标志,指示服务器启动后是否应立即启用。此标志默认设置为 true。 + - **port**: 要监听的端口号。 + - **enable** (可选): 一个标志,用于指示服务器在启动后是否应立即启用。该标志默认设为 true。 -- `WiFiServer::hasClient()` -- 该函数用于检查服务器上是否有任何传入的客户端连接可用。此函数可以在循环中使用以持续检查新连接。 +- `WiFiServer::hasClient()` -- 该函数用于检查服务器上是否有任何传入的客户端连接可用。可以在循环中使用此函数以持续检查新连接。 - - **输出**:如果客户端已连接,它返回一个 WiFiClient 对象,如果没有客户端等待连接,则返回 NULL 指针。 + - **输出**: 如果有客户端已连接,则返回一个 WiFiClient 对象;如果没有等待连接的客户端,则返回 NULL 指针。 -- `WiFiServer::end()` -- 该函数用于停止服务器并释放相关资源。一旦调用,服务器就不能再接受新的客户端连接。任何现有的客户端连接将保持打开状态,直到它们被客户端或服务器关闭。`WiFiServer::close()` 和 `WiFiServer::stop()` 具有相同的功能。 +- `WiFiServer::end()` -- 该函数用于停止服务器并释放相关资源。一旦调用,服务器将不再接受新的客户端连接。任何现有的客户端连接将保持打开状态,直到由客户端或服务器一方关闭。`WiFiServer::close()` 和 `WiFiServer::stop()` 具有相同的功能。 -### WiFi 多重功能 +### WiFi 多路连接函数 -- `WiFiMulti::addAP(const char* ssid, const char *passphrase)` -- 用于向 WiFiMulti 对象将尝试连接的可用 AP 列表中添加新的接入点(AP)。 +- `WiFiMulti::addAP(const char* ssid, const char *passphrase)` -- 该函数用于向 WiFiMulti 对象将尝试连接的可用接入点(AP)列表中添加一个新的接入点。 - **输入参数** - - **ssid**: 指向 SSID 的指针(最多 63 个字符)。 - - **passphrase**: (WPA2 最少 8 个字符,开放网络使用 NULL)。 + - **ssid**: 指向 SSID 的指针(最多 63 个字符)。 + - **passphrase**: (对于 WPA2,最少 8 个字符;若为开放网络则使用 NULL)。 - - **输出**:True/False + - **输出**: True/False -- `WiFiMulti::run(uint32_t connectTimeout)` -- 该函数尝试按顺序连接到保存的接入点之一,直到成功连接到其中一个。 +- `WiFiMulti::run(uint32_t connectTimeout)` -- 该函数会按顺序尝试连接已保存的接入点之一,直到成功连接为止。 - **输入参数** - - **connectTimeout**: 该参数指定等待连接的最大时间(毫秒)。如果 connectTimeout 设置为 0,函数将不会超时,并将无限期尝试连接。 + - **connectTimeout**: 该参数指定等待连接的最长时间(毫秒)。如果 connectTimeout 设为 0,函数将不会超时,并会一直尝试连接。 - - **输出**:状态 + - **输出**: 状态 ## WiFi 使用示例 -接下来,我们将使用 XIAO ESP32-C5 来演示如何使用一些基本的 Wi-Fi 功能。 +接下来,我们将使用 XIAO ESP32-C5 演示如何使用一些基本的 Wi-Fi 功能。 ### 扫描网络 -XIAO ESP32-C5 支持双频 2.4 GHz 和 5 GHz Wi-Fi,在扫描模式下可以扫描周围的 2.4 GHz 和 5 GHz Wi-Fi 网络以及它们的信号强度。 +XIAO ESP32-C5 支持双频 2.4 GHz 和 5 GHz Wi-Fi,并且可以在扫描模式下扫描周围的 2.4 GHz 和 5 GHz Wi-Fi 网络及其信号强度。 #### 程序 -下面是一个示例程序,展示 XIAO ESP32-C5 如何扫描周围的 Wi-Fi 网络。 +下面是一个示例程序,向你展示 XIAO ESP32-C5 如何扫描周围的 Wi-Fi 网络。 - 参考代码 @@ -441,20 +441,20 @@ void loop() { #### 效果展示 -- 上传程序后,打开 Arduino IDE 的串口监视器,将输出扫描到的 Wi-Fi 信息。 +- 上传程序后,打开 Arduino IDE 的串口监视器,即可输出扫描到的 Wi-Fi 信息。
### 连接到 Wi-Fi 网络 -在 Wi-Fi 覆盖范围内,您可以通过 XIAO ESP32-C5 支持的 STA 模式连接到特定的 Wi-Fi 网络,前提是您知道目标 Wi-Fi 网络的 SSID 和密码。 +在 Wi-Fi 覆盖范围内,如果你知道目标 Wi-Fi 网络的 SSID 和 PASSWORD,就可以通过 XIAO ESP32-C5 支持的 STA 模式连接到指定的 Wi-Fi 网络。 #### 程序 -接下来,提供一个示例程序来展示 XIAO ESP32-C5 如何连接到指定的 Wi-Fi 网络。 +接下来提供一个示例程序,向你展示 XIAO ESP32-C5 如何连接到指定的 Wi-Fi 网络。 :::tip -XIAO ESP32-C5 支持双频 Wi-Fi(2.4 GHz 和 5 GHz),您可以根据家庭网络选择连接。 +XIAO ESP32-C5 支持双频 Wi-Fi(2.4 GHz 和 5 GHz),允许你根据家庭网络情况选择连接方式。 ::: - 参考代码 @@ -513,20 +513,20 @@ void loop() { #### 效果展示 -- 上传程序后,打开 Arduino IDE 的串口监视器,将输出连接的 Wi-Fi 网络的 IP 地址等信息。 -- 我在我的环境中连接到了 5 GHz 网络。 +- 上传程序后,打开 Arduino IDE 的串口监视器,即可输出已连接 Wi-Fi 网络的 IP 地址等信息。 +- 在我的环境中,我连接的是 5 GHz 网络。
### AP 模式 -XIAO ESP32-C5 可以作为热点供其他设备连接。换句话说,您可以使用支持 Wi-Fi 的设备连接到 XIAO ESP32-C5,而无需连接到您的路由器。 +XIAO ESP32-C5 可以作为热点供其他设备连接。换句话说,你可以使用支持 Wi-Fi 的设备连接到 XIAO ESP32-C5,而无需连接到你的路由器。 -简单来说,当您将 XIAO ESP32-C5 配置为接入点时,您创建了它自己的独立 Wi-Fi 网络,附近的 Wi-Fi 设备(站点)可以连接到该网络(例如您的智能手机或计算机)。 +简单来说,当你将 XIAO ESP32-C5 配置为接入点时,就创建了它自己的独立 Wi-Fi 网络,附近的 Wi-Fi 设备(站点)可以连接到该网络(例如你的智能手机或电脑)。 #### 程序 -接下来,提供一个示例程序来展示 XIAO ESP32-C5 如何创建热点并允许其他设备连接到它。 +接下来提供一个示例程序,向你展示 XIAO ESP32-C5 如何创建热点并允许其他设备连接到它。 - 参考代码 @@ -588,21 +588,21 @@ void loop() { #### 效果展示 -- 编译并上传程序后,您可以通过 WLAN 功能发现 AP 热点。 +- 编译并上传程序后,你可以通过 WLAN 功能发现该 AP 热点。
-- 成功连接后,串口监视器将打印 IP 地址,同时板载用户 LED 将点亮。 +- 连接成功后,串口监视器会打印 IP 地址,同时板载 USER LED 会点亮。
-### WiFi 和 MQTT 使用 +### WiFi 与 MQTT 的使用 -MQTT 协议在物联网设备中广泛使用,XIAO ESP32-C5 支持此协议——这意味着您可以使用 XIAO ESP32-C5 开发许多有趣的物联网项目。 +MQTT 协议在物联网设备中被广泛使用,而 XIAO ESP32-C5 支持该协议——这意味着你可以使用 XIAO ESP32-C5 开发许多有趣的物联网项目。 #### 程序 -接下来,将提供一个参考程序来展示如何在 XIAO ESP32-C5 上使用 MQTT 协议。 +接下来将提供一个参考程序,向你展示如何在 XIAO ESP32-C5 上使用 MQTT 协议。 - 安装 `PubSubClient` 库 @@ -690,13 +690,13 @@ void loop() { #### 效果展示 -- 下载任何支持 MQTTX 代理客户端的软件;这里使用 MQTTX [MQTTx](https://mqttx.app/downloads) +- 下载任意支持 MQTTX broker 客户端的软件,这里使用 MQTTX [MQTTx](https://mqttx.app/downloads) -- 打开 MQTTX 并添加客户端信息。这里使用默认客户端地址,所以您只需要添加客户端 ID `ESP32C5Client` 并设置测试客户端名称;其余配置可以保持默认。 +- 打开 MQTTX 并添加客户端信息。此处使用默认客户端地址,因此你只需添加客户端 ID `ESP32C5Client` 并设置测试客户端名称,其余配置保持默认即可。

-- 上传代码并使用 MQTTX 连接。连接成功后,点击左侧的 `New Subscription` 添加订阅。 +- 上传代码并使用 MQTTX 进行连接。连接成功后,点击左侧的 `New Subscription` 来添加订阅。

@@ -704,19 +704,19 @@ void loop() {

-- 配置成功后,您可以看到 XIAO ESP32-C5(作为客户端)每 2 秒发布的消息。您也可以在选择主题后向客户端发送消息,客户端收到后会发布它们。 +- 配置成功后,你可以看到 XIAO ESP32-C5(作为客户端)每 2 秒发布的消息。你也可以在选择主题后向客户端发送消息,客户端在接收到消息后会将其发布。

:::tip -broker.emqx.io 是一个由所有用户共享的公共代理。任何订阅相同主题的人都可以查看您的消息。它仅用于测试目的,不适合传输敏感数据。 +broker.emqx.io 是一个所有用户共享的公共 broker。任何订阅相同主题的人都可以查看你的消息。它仅用于测试目的,不适合传输敏感数据。 ::: ### WiFi & HTTP /HTTPS -- 您可以参考我们为 XIAO ESP32C3 编写的访问 ChatGPT 的示例,其中详细介绍了如何使用 WiFiClient 和 HTTPClient:[学习在 XIAO ESP32C3 上使用 WiFiClient 和 HTTPClient - XIAO ESP32C3 & ChatGPT 实战](https://wiki.seeedstudio.com/cn/xiaoesp32c3-chatgpt/) +- 你可以参考我们为 XIAO ESP32C3 编写的访问 ChatGPT 的示例,其中详细介绍了如何使用 WiFiClient 和 HTTPClient:[Learn to use WiFiClient and HTTPClient on XIAO ESP32C3 - XIAO ESP32C3 & ChatGPT in action](https://wiki.seeedstudio.com/cn/xiaoesp32c3-chatgpt/) -- 如果您只想探索 HTTP 的简单用法,也可以按照以下步骤进行测试和验证。 +- 如果你只想了解 HTTP 的简单用法,也可以按照下面的步骤进行测试和验证。 #### 程序 @@ -799,25 +799,25 @@ void loop() { #### 效果展示 :::tip -`https://jsonplaceholder.typicode.com` 是一个免费的模拟 REST API 测试服务,专门为开发和测试目的而设计。它不支持真实数据的永久修改或持久化。 +`https://jsonplaceholder.typicode.com` 是一个免费的模拟 REST API 测试服务,专为开发和测试目的而设计。它不支持对真实数据进行永久修改或持久化。 ::: -- 上传代码,然后您可以打开 `https://jsonplaceholder.typicode.com/todos/1` 和 Arduino IDE 中的串口监视器工具来检查信息是否一致。 +- 上传代码,然后你可以打开 `https://jsonplaceholder.typicode.com/todos/1` 和 Arduino IDE 中的串口监视器工具,检查信息是否一致。
### WiFi-Mesh -以下是乐鑫系统对 **ESP-WIFI-MESH** 的官方介绍: +以下是乐鑫官方对 **ESP-WIFI-MESH** 的介绍: -ESP-WIFI-MESH 是一个使用乐鑫 SoC 上的同时 AP-STA 功能,以网状拓扑组织节点的无线通信网络。它提供了一个自组织和自愈的网络,易于部署。ESP-WIFI-MESH 的网络拓扑可以在大面积内扩展到 1000 个节点,无需任何特定的 Wi-Fi 基础设施支持。ESP-WIFI-MESH 也可以用于覆盖家庭部署场景中的 Wi-Fi 盲点,即 Wi-Fi 信号无法到达的地方。 +ESP-WIFI-MESH 是一种无线通信网络,其节点在乐鑫 SoC 上利用 AP-STA 同时工作特性,以 Mesh 拓扑结构进行组织。它提供了自组网和自愈能力,易于部署。ESP-WIFI-MESH 的网络拓扑可以在大范围内扩展到多达 1000 个节点,而无需任何特定的 Wi-Fi 基础设施支持。ESP-WIFI-MESH 还可用于在家庭部署场景中覆盖 Wi-Fi 盲区,即 Wi-Fi 信号无法覆盖的区域。 -更多详细信息,请参考乐鑫系统的官方链接: +如需了解更详细的信息,请参考乐鑫官方链接: - [ESP-Wi-Fi-MESH](https://www.espressif.com/en/products/sdks/esp-wifi-mesh/overview) -- [ESP-IDF 编程指南](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/esp-wifi-mesh.html) +- [ESP-IDF Programming Guide](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/esp-wifi-mesh.html) -接下来,我将向您展示一个 ESP-Mesh 的示例,对于这个示例,您需要准备至少两个 ESP32 设备。 +接下来,我将向你展示一个 ESP-Mesh 的示例,对于该示例,你需要至少准备两块 ESP32 设备。 #### 程序 @@ -901,19 +901,19 @@ void loop() { #### 效果展示 -- 将代码上传到两个 XIAO ESP32-C5 设备并打开任何串口工具来检查结果。 +- 将代码上传到两块 XIAO ESP32-C5 设备上,并打开任意串口工具查看结果。 -XIAO ESP32-C5 设备 1 开始网络组建并发送消息。 +XIAO ESP32-C5 设备 1 开始组网并发送消息。

-XIAO ESP32-C5 设备 2 加入网络并接收来自设备 1 的消息。 +XIAO ESP32-C5 设备 2 加入网络并接收来自设备 1 发送的消息。
-### 示例:IoT 智能家居中枢 +### 示例:IoT 智能家居中控 -从上面的 Wi-Fi 示例中,您一定已经掌握了如何在 XIAO ESP32-C5 上使用 Wi-Fi。接下来,将展示一个示例,向您展示如何使用 Wi-Fi AP 模式和 HTTP 网络服务实现智能家居控制中枢——具体来说,如何使用 XIAO ESP32-C5 作为智能家居控制中枢来监控您家的状态。 +通过以上 Wi-Fi 示例,你一定已经掌握了如何在 XIAO ESP32-C5 上使用 Wi-Fi。接下来将通过一个示例向你展示如何使用 Wi-Fi AP 模式和 HTTP 网络服务实现智能家居控制中枢——具体来说,就是如何使用 XIAO ESP32-C5 作为智能家居控制中枢来监控你家中的状态。 - 安装 `ESPAsyncWebServer` 库 @@ -1293,23 +1293,23 @@ void loop() {

-- 输入 IP 地址跳转到网页。 +- 输入 IP 地址以跳转到网页。

:::tip -网页上显示的控件和传感器是可自定义的。您可以根据具体需求添加新的控件并修改生成的网页。参考:[ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) +网页上显示的控件和传感器是可自定义的。您可以根据自己的具体需求添加新的控件,并修改生成的网页。参考:[ESPAsyncWebServer](https://github.com/lacamera/ESPAsyncWebServer) ::: :::tip -XIAO ESP32-C5 生成的 AP 热点默认无法连接到互联网。如果需要互联网连接,您可以采用以下两种方法之一:
-方法 1:将 XIAO ESP32-C5 连接到 Home Assistant。参考:[将 XIAO ESP32-C5 连接到 Home Assistant](https://wiki.seeedstudio.com/cn/xiao_esp32c5_homeassistant/)
-方法 2:使用 MQTT 服务将数据上传到云服务器。注意,此方法可能需要购买一定的服务积分。参考:[Goole Cloud](https://cloud.google.com/)
+XIAO ESP32-C5 生成的 AP 热点默认无法连接互联网。如果需要连接互联网,可以采用以下两种方法之一:
+方法一:将 XIAO ESP32-C5 连接到 Home Assistant。参考:[Connecting XIAO ESP32-C5 to Home Assistant](https://wiki.seeedstudio.com/cn/xiao_esp32c5_homeassistant/)
+方法二:使用 MQTT 服务将数据上传到云服务器。请注意,此方法可能需要购买一定数量的服务点数。参考:[Goole Cloud](https://cloud.google.com/)
::: ## 技术支持与产品讨论 -感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。 +感谢您选择我们的产品!我们将为您提供多种支持,确保您在使用我们产品的过程中尽可能顺利。我们提供多种沟通渠道,以满足不同的偏好和需求。
diff --git a/sites/zh-CN/sidebars.js b/sites/zh-CN/sidebars.js index 77602657589ba7..7472230b51e59e 100644 --- a/sites/zh-CN/sidebars.js +++ b/sites/zh-CN/sidebars.js @@ -1318,7 +1318,7 @@ const sidebars = { label: '无线连接', items: [ 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_WiFi_Usage', - 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Buletooth_Usage', + 'Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C5/Wireless_Connection/cn_XIAO_ESP32C5_Bluetooth_Usage', ], }, {