GD6 Diseño de hardware: ESP32-S3, SX1302 y backhaul — ManThink
Portada del artículo técnico de ManThink

Contenido del artículo

El primer artículo presentó la pasarela LoRaWAN de código abierto GD6 como producto. Este abre el hardware: el razonamiento detrás de cada elección de componente clave y los compromisos de ingeniería implicados.

El hardware del GD6 no es exótico: un ESP32-S3 como controlador principal, un Semtech SX1301 o SX1302 como concentrador LoRa, además de Ethernet, Wi-Fi y backhaul 4G opcional. Pero hacer que todo esto funcione de forma fiable en conjunto dentro de una carcasa de pasarela de interior —manteniendo el sistema de código abierto y personalizable— implica una serie de decisiones de ingeniería deliberadas que merece la pena comentar.


Controlador principal: por qué el ESP32-S3 N8R8

El GD6 utiliza el ESP32-S3-WROOM-1, concretamente la variante N8R8: 8 MB de Flash QIO + 8 MB de PSRAM Octal, ambos funcionando a 80 MHz.

Esta elección no es arbitraria. El GD6 es más que un reenviador de datos LoRa: ejecuta simultáneamente una consola web, gestiona comunicaciones cifradas con TLS, mantiene dos conexiones MQTT (una para el reenvío de datos y otra para la configuración remota), administra un sistema de archivos SPIFFS y ejecuta la verificación OTA de particiones A/B. Todo esto en ejecución concurrente impone exigencias nada triviales sobre la memoria.

Por qué importan los 8 MB de PSRAM

La SRAM integrada del ESP32-S3 es de solo 512 KB, demasiado poca para ejecutar un servidor web con TLS junto con el almacenamiento en búfer de datos LoRa multicanal. La PSRAM Octal proporciona 8 MB de memoria adicional con un ancho de banda de 80 MHz, suficiente para gestionar el almacenamiento en búfer de datos bajo alta carga de canales y solicitudes concurrentes de la consola web. Sin una PSRAM adecuada, el funcionamiento bajo alta carga podría provocar pérdida de paquetes o una respuesta web lenta.

Asignación de los 8 MB de Flash

Los 8 MB de Flash deben alojar: el firmware de la aplicación (dos copias, una por partición A/B), el sistema de archivos de configuración SPIFFS y los archivos de recursos estáticos web. El diseño de doble partición A/B implica que dos imágenes de firmware completas deben caber simultáneamente en la Flash, una razón clave por la que la capacidad de Flash no puede ser demasiado pequeña.

Por qué no ESP32 o STM32

El clásico ESP32 tiene soporte limitado de PSRAM y carece del ancho de banda de PSRAM Octal del ESP32-S3, lo que empeora notablemente el rendimiento de la consola web + TLS. Los MCU de la serie STM32 son potentes pero carecen de Wi-Fi integrado: añadir un módulo Wi-Fi externo aumenta el coste y la complejidad, y el ecosistema de desarrollo es menos amigable para aplicaciones web que ESP-IDF. El ESP32-S3 equilibra rendimiento, ancho de banda de memoria, integración de Wi-Fi y ecosistema de código abierto.

El análisis anterior se basa en las especificaciones publicadas del GD6 y en las capacidades conocidas del ESP32-S3. La documentación oficial de ManThink no detalla el razonamiento de selección; esta sección es un análisis de ingeniería basado en las especificaciones.


Concentrador: SX1301 y SX1302 en paralelo

El GD6 ofrece tanto el SX1301 (sufijo de modelo 1) como el SX1302 (sufijo de modelo 2) como opciones de concentrador, en lugar de elegir solo uno.

Diferencias entre las dos generaciones

El SX1301 es el chip de banda base LoRaWAN de primera generación de Semtech, lanzado en 2015. Está ampliamente probado y cuenta con extensa documentación de la comunidad. El SX1302 es su sucesor, con mejoras en consumo de energía y sensibilidad, y un área de die menor.

Ambos usan la misma arquitectura LoRa Type-A en el GD6: una sola antena LoRa, 8 puntos de frecuencia, 65 canales, semidúplex. Esto significa que la capacidad de canales de RF es idéntica independientemente del chip elegido; la diferencia radica en las características de rendimiento inherentes al chip.

Por qué se mantienen ambas opciones

Distintos proyectos tienen distintos requisitos. Algunos clientes priorizan el coste y la fiabilidad probada, donde el SX1301 es la elección sensata. Otros necesitan menor consumo de energía o mejor sensibilidad, donde el SX1302 es más apropiado. Distinguir por sufijo de modelo hace que la selección sea sencilla: no se necesita ninguna discusión de configuración adicional.

Qué significa la arquitectura Type-A y sus límites

Type-A es una configuración estructural LoRa para los concentradores de Semtech: una sola antena LoRa, 8 puntos de frecuencia, 65 canales, funcionamiento semidúplex. Semidúplex significa que la pasarela no puede transmitir y recibir simultáneamente: no puede enviar datos de enlace descendente durante una ranura de recepción de enlace ascendente, y viceversa.

Esto es suficiente para la mayoría de los escenarios de interior. Los sensores dentro de edificios (temperatura/humedad, seguimiento de personal, contadores de energía) suelen tener baja frecuencia de enlace ascendente y mínimos comandos de enlace descendente, por lo que el retardo de conmutación semidúplex no es un cuello de botella. Sin embargo, en escenarios que requieren una programación densa de enlace descendente (por ejemplo, multidifusión a grandes flotas de dispositivos Clase B/C), el semidúplex limita la capacidad de enlace descendente; en tales casos podría ser necesaria una solución full-dúplex.

La definición de la arquitectura Type-A proviene de la especificación oficial del GD61x. Las diferencias de rendimiento entre SX1301/SX1302 se basan en materiales públicos de Semtech y en conocimiento general del sector. El manual del GD6 no declara valores uniformes de potencia de transmisión y sensibilidad; estos dependen de la versión específica de RF, del front-end y de la configuración de la antena.


Lleva esta guía a tu proyecto

ManThink ofrece productos IoT para conectar dispositivos, desplegar redes y trabajar con datos. Consulta estos recursos de producto junto con las recomendaciones técnicas del artículo:

PMC51x Módulo de gateway LoRa Mini-PCIe · GD61 Gateway LoRaWAN para interiores

Conoce los productos de ManThink y consulta tu proyecto →

Versiones de RF: por qué GD614 y GD618

El GD6 está disponible en dos versiones de RF: GD614 (clase 400 MHz, compatible con CN470 y EU433) y GD618 (clase 800 MHz y superiores, compatible con EU868, AS923, AU915, US902).

Por qué las bandas no se pueden cambiar por software

Esta es una pregunta frecuente. La frecuencia de RF de LoRa la determina el hardware: el front-end de RF (PA, LNA, filtros) y la antena están diseñados para bandas de frecuencia específicas. Una antena de 400 MHz es extremadamente ineficiente a 868 MHz, y viceversa. Las bandas de paso de los filtros del front-end son específicas de cada frecuencia.

Por lo tanto, el firmware de GD614 no presentará una opción EU868, y GD618 no presentará CN470. Esto no es una limitación de software: es una limitación física.

Por qué dos versiones en lugar de una versión de banda ancha

En teoría, un front-end de RF de banda ancha podría cubrir 400–960 MHz. Pero esto implica comprometer el rendimiento en todas las bandas: las bandas de paso de filtro más anchas introducen más interferencia fuera de banda, y la eficiencia del PA es inconsistente en un rango amplio de frecuencias. Dividir en dos versiones permite optimizar el front-end de RF y la antena de cada versión para sus bandas objetivo, lo que ofrece mejor rendimiento y cumplimiento normativo.

Estrategia de cobertura global

Las dos versiones juntas cubren las principales bandas LoRaWAN del mundo:

Versión Rango de frecuencia Regiones compatibles
GD614 Clase 400 MHz CN470 (China), EU433 (Europa 433)
GD618 Clase 800 MHz y superiores EU868 (Europa 868), AS923-1~4 (Asia-Pacífico), AU915 (Australia), US902 (Norteamérica)

El código de región debe coincidir con el hardware de RF y la normativa local. El US902 código del nombre del modelo corresponde al parámetro regional LoRaWAN US915 (902–928 MHz).


Backhaul: diseño de triple enlace con conmutación por error automática

El diseño de backhaul del GD6 es una de las características que lo distinguen de muchas pasarelas de su rango de precio. No todas las pasarelas ofrecen Ethernet, Wi-Fi y 4G simultáneamente.

Ethernet: W5500

El GD6 utiliza el controlador Ethernet W5500: 10/100 Mbps, interfaz RJ45. El W5500 es un chip de pila TCP/IP cableado: el procesamiento del protocolo Ethernet ocurre dentro del chip, no en la CPU del controlador principal. Esto importa para el ESP32-S3: el controlador principal necesita sus ciclos para el procesamiento de datos LoRa y el servicio web, no para ejecutar una pila de red por software.

Ethernet admite DHCP o IP estática, con puerta de enlace y DNS primario/secundario configurables. La consola web incluye una opción "Ethernet Power" que controla la alimentación en tiempo de ejecución del controlador Ethernet interno de la pasarela; no es salida PoE externa.

Wi-Fi: AP + STA concurrentes

El Wi-Fi de 2.4 GHz integrado en el ESP32-S3 admite el funcionamiento concurrente en modo AP (punto de acceso) y STA (cliente). Esto significa que la pasarela puede conectarse al Wi-Fi del sitio como enlace de backhaul (STA) mientras proporciona simultáneamente el LGW-Config punto de acceso para la gestión local (AP).

Consideraciones de diseño para la concurrencia AP + STA:

  • Modo STA sirve como enlace de backhaul, conectándose al Wi-Fi del sitio; adecuado para despliegues sin red cableada.
  • Modo AP funciona independientemente del enlace de backhaul, proporcionando siempre un punto de entrada de configuración local. Incluso si todos los enlaces de backhaul fallan, un administrador aún puede conectarse al punto de acceso y acceder a la consola web en 192.168.4.1 para la resolución de problemas.
  • SSID predeterminado del punto de acceso: LGW-Config, contraseña: lgw12345678, dirección de gestión: 192.168.4.1.

4G: LTE Cat 1 + miniPCIe

4G es una configuración opcional (el modelo G incluye 4G y PoE; N no). El módulo 4G utiliza una interfaz miniPCIe y puede cambiarse para adaptarse a diferentes bandas de frecuencia de operador.

El módulo 4G predeterminado es LTE Cat 1, compatible con las siguientes bandas:

Tipo Bandas
LTE-FDD B1 / B3 / B5 / B8
LTE-TDD B34 / B38 / B39 / B40 / B41

Posicionamiento de LTE Cat 1: las velocidades de enlace ascendente/descendente son más que suficientes para el backhaul de una pasarela LoRaWAN (normalmente decenas de KB por segundo), mientras que el consumo de energía y el coste son mucho menores que los de los módulos Cat 4/6. Para sitios industriales o despliegues temporales sin red cableada, Cat 1 es una opción rentable.

La interfaz miniPCIe permite sustituir el módulo: si un proyecto se despliega en el extranjero, se puede instalar un módulo 4G compatible con las bandas locales sin reemplazar toda la pasarela. La tarjeta SIM utiliza una ranura externa. Si la SIM tiene un PIN establecido, debe introducirse (4–8 dígitos) en la consola web.

Prioridad de enlaces y conmutación por error automática

Prioridad de enlaces predeterminada: Ethernet > Wi-Fi STA > 4G.

  • Ethernet y Wi-Fi STA proporcionan conmutación por error automática primario/respaldo: se utiliza Ethernet cuando está en buen estado; en caso de fallo, el tráfico cambia a Wi-Fi STA.
  • Los modelos con 4G lo añaden como tercer enlace: cuando Ethernet y Wi-Fi STA no están disponibles, el tráfico cambia a 4G.

La importancia de este diseño: en la mayoría de los escenarios interiores, Ethernet es el enlace principal, Wi-Fi es el de respaldo y 4G es el último recurso. La probabilidad de que fallen los tres enlaces simultáneamente es extremadamente baja, lo que mejora drásticamente la fiabilidad del backhaul.


Alimentación: tres opciones y una restricción

El GD6 admite tres métodos de alimentación:

Método Voltaje Caso de uso
Type-C 5V DC Depuración de escritorio, desarrollo
Borne DC 5–24V DC Alimentación industrial de amplio voltaje
PoE mediante RJ45 solo configuración AG: alimentación y datos por un solo cable

Por qué PoE se incluye junto con 4G

PoE solo está disponible en la G configuración (que incluye tanto 4G como PoE). La lógica de esta combinación es sólida: PoE sirve principalmente a despliegues que necesitan un cableado simplificado (por ejemplo, montajes en techo donde tender un cable de alimentación no es práctico), y estos escenarios a menudo también requieren backhaul 4G (las ubicaciones sin red cableada normalmente tampoco tienen tomas de corriente). Empaquetar ambos cubre el caso de despliegue interior remoto "sin red, sin corriente".

La N configuración (sin 4G) está dirigida a escenarios interiores estándar con Ethernet y alimentación disponibles: no se necesita PoE.

Por qué no se recomienda el uso simultáneo de varias fuentes de alimentación

El manual indica explícitamente que no se recomienda conectar varias fuentes de alimentación simultáneamente. Sin una circuitería de ORing ideal entre las rutas de alimentación, la conexión simultánea puede provocar retorno de corriente o conflictos de tensión. El GD6 está diseñado para que el usuario seleccione un método de alimentación, no para redundancia de alimentación. Si un proyecto requiere redundancia de alimentación, debe resolverse con un UPS externo — no enchufando Type-C y DC a la vez.

Los terminales A+ / B-

El bloque de terminales DC tiene cuatro posiciones: 5–24V, G, A+, B-. Los A+ y B- son interfaces RS-485 reservadas sin funcionalidad de usuario en la versión actual. El manual advierte contra conectar alimentación a estos terminales.


OTA de doble partición A/B: del diseño a la recuperación

La actualización de firmware del GD6 utiliza un diseño de doble partición A/B — un enfoque más robusto que la partición única con respaldo.

Cómo funciona

  1. La Flash del gateway contiene dos particiones de firmware (A y B). Una está activa; la otra está inactiva.
  2. Durante la actualización, el nuevo firmware se escribe en la partición inactiva.
  3. Una vez completada la escritura, se verifica el firmware.
  4. Si la verificación es correcta, la partición de arranque cambia a la recién escrita.
  5. El siguiente arranque carga desde la nueva partición.

Recuperación ante interrupciones

Si se produce una pérdida de alimentación, una desconexión de red o un fallo de verificación durante la actualización:

  • Firmware nuevo no escrito por completo o verificación fallida → la partición de arranque no cambia → el dispositivo arranca normalmente desde la partición activa original.
  • Firmware nuevo escrito pero el arranque falla → el manual recomienda esperar el reinicio automático. Si sigue inaccesible, use el AP Wi-Fi o la recuperación serie controlada — no reinicie cíclicamente la alimentación repetidamente.

Por qué A/B en lugar de partición única + respaldo

En un esquema de partición única + respaldo, la partición de respaldo normalmente almacena solo una imagen de recuperación mínima con funcionalidad limitada. En el esquema A/B, ambas particiones contienen firmware completo — siempre hay disponible un sistema totalmente utilizable. Si se detectan problemas tras la actualización, puede volver a la versión anterior sin reflashear.

La contrapartida es el espacio de Flash — dos particiones de firmware completas consumen el doble de espacio que una sola partición, lo cual es una razón por la que el GD6 requiere 8 MB de Flash.

Origen del firmware

Los archivos de .bin firmware pueden compilarse por cuenta propia — el firmware del GD6 y el sistema de configuración web son de código abierto en GitHub (github.com/ManThink/gd6-open). Cárguelos y flashee mediante la página "Firmware Upgrade" de la consola web.

El manual advierte: no cargue una imagen de fabricación completa de Flash como firmware OTA Web. Use un .bin firmware que coincida con el modelo de gateway, la versión de hardware y la región de destino.


Almacenamiento y configuración: SPIFFS y protección del directorio web/

Sistema de archivos SPIFFS

El GD6 utiliza SPIFFS (SPI Flash File System) para el almacenamiento de configuración. Los archivos JSON de configuración bajo /spiffs almacenan todos los ajustes — red, LoRaWAN, MQTT, etc. Las configuraciones surten efecto tras el reinicio y sobreviven a la pérdida de alimentación.

La página "File System" de la consola web proporciona gestión directa de los archivos /spiffs , permitiendo ver y editar el JSON de configuración. Esto abre una vía para la personalización profunda — los usuarios avanzados pueden modificar los archivos de configuración directamente, más allá de las opciones expuestas en la interfaz web.

Protección del directorio web/

El directorio /spiffs/web/ almacena los recursos estáticos de la consola web (HTML, CSS, JS). El manual contiene una advertencia explícita:

  • Sobrescribir los archivos web/ puede dejar la consola inaccesible.
  • El restablecimiento de fábrica no restaura los archivos web dañados.
  • No modifique este directorio salvo para realizar mantenimiento controlado.

Este diseño es algo paradójico — el sistema de archivos está abierto, pero los archivos de recursos web están fuera de límites. En la práctica, se trata de una estratificación razonable: los archivos de configuración están abiertos a la personalización del usuario, mientras que los recursos web son componentes del sistema cuya modificación conlleva un alto riesgo y queda fuera del uso normal. Si realmente se necesita personalizar la interfaz web, el enfoque correcto es compilar desde el código fuente — no sobrescribir archivos en línea.

Configuración segura ante pérdida de alimentación

Una vez que SPIFFS escribe en la Flash, los datos son persistentes y no dependen de la RAM. Esto significa que las configuraciones sobreviven a una pérdida de alimentación inmediata tras la escritura. Sin embargo, los cambios de configuración requieren un reinicio para surtir efecto — tras modificar un JSON de configuración, el gateway debe reiniciarse para que se apliquen los nuevos ajustes.

Límites del restablecimiento de fábrica

Mantener pulsado el botón REC durante 2 segundos activa el restablecimiento de fábrica. El alcance:

  • Se restablece: red, LoRaWAN, MQTT, configuración remota, ajustes de 4G, contraseña de inicio de sesión (vuelve a wifi!0804).
  • Se conserva: el Gateway EUI escrito.
  • No se restaura: los archivos estáticos web (directorio web/ ).

El Gateway EUI es el identificador único del gateway, normalmente escrito en fábrica o en la primera configuración. Conservarlo tras el restablecimiento de fábrica significa que el registro del gateway en el servidor de red no queda invalidado por el restablecimiento.


Otros detalles del diseño de hardware

Diseño de antena

Solo la antena LoRa es externa en el GD6 (conector SMA). Las antenas Wi-Fi y 4G son internas. Este diseño reduce el cableado externo y simplifica la instalación — el usuario solo necesita conectar una antena.

El manual enfatiza: conecte la antena LoRa antes de encender. Transmitir desde el concentrador LoRa sin antena conectada dañará el PA frontal.

Indicador LED

Estado Patrón Significado
Funcionamiento normal Parpadeo lento (1s encendido / 1s apagado) Sistema funcionando normalmente
Restablecimiento de fábrica Fijo a 2s → 3 parpadeos rápidos → reinicio Realizando restablecimiento de fábrica

Los patrones de LED son mínimos: principalmente indican el estado de ejecución y el progreso del restablecimiento de fábrica. Para conocer el estado detallado de los enlaces (estado de conexión de Ethernet/Wi-Fi/4G, estado del servicio LoRa), se debe consultar la página de resumen de la consola web.

Interfaz reservada RS-485

Los A+ y B- terminales del bloque de CC son interfaces RS-485 reservadas sin funcionalidad de usuario en la versión actual. Pueden ser interfaces de expansión reservadas para versiones futuras o personalizadas.

Instalación física

Colocación sobre escritorio o montaje en pared mediante el soporte giratorio inferior. El manual advierte contra bloquear los orificios de ventilación inferiores: el módulo ESP32-S3 + SX1302 + 4G genera algo de calor a plena carga, y la ventilación inferior forma parte del diseño de refrigeración pasiva.


Resumen de especificaciones de hardware

Categoría Especificación
Controlador principal ESP32-S3-WROOM-1 N8R8
Flash 8 MB QIO, 80 MHz
PSRAM 8 MB Octal, 80 MHz
Concentrador LoRa Semtech SX1301 (sufijo 1) o SX1302 (sufijo 2)
Arquitectura LoRa Tipo A: antena única, 8 puntos de frecuencia, 65 canales, semidúplex
Ancho de banda de canal Multicanal por defecto 125 kHz; LoRa Std configurable
Versión de RF GD614 (clase 400 MHz) / GD618 (clase 800 MHz y superiores)
Soporte de regiones CN470, EU433, EU868, AS923 (1~4), AU915, US902
Ethernet W5500, 10/100 Mbps, RJ45
Wi-Fi 2.4 GHz, AP + STA simultáneos
4G (opcional) LTE Cat 1, miniPCIe, módulo reemplazable
Bandas 4G (módulo por defecto) FDD: B1/B3/B5/B8; TDD: B34/B38/B39/B40/B41
Conmutación por error de enlace Ethernet > Wi-Fi STA > 4G, automática
Alimentación Type-C 5V / DC 5–24V / PoE (solo configuración AG)
OTA Doble partición A/B
Almacenamiento de configuración SPIFFS, seguro ante cortes de energía
Gestión Consola web (CN/EN), API REST, MQTT remoto
Seguridad Certificados TLS, autenticación por Token, inicio de sesión con contraseña
Antenas LoRa externa; Wi-Fi / 4G interna
Instalación Escritorio o montaje en pared con soporte giratorio

Resumen

La filosofía de diseño de hardware del GD6 puede resumirse así: usar soluciones de chips probadas para una implementación de ingeniería fiable, y dejar flexibilidad a la capa de software y de código abierto.

Elegir el ESP32-S3 N8R8 no se trata de llevar los límites de rendimiento al extremo, sino de encontrar el punto de equilibrio entre memoria, integración de Wi-Fi, ecosistema de desarrollo y coste. Ofrecer tanto SX1301 como SX1302 no es indecisión técnica: cubre necesidades de proyectos diferentes. La combinación de backhaul de triple enlace + OTA de doble partición A/B + gestión de configuración SPIFFS da a esta puerta de enlace una posición razonable entre "plug-and-play" y "profundamente personalizable".

El siguiente artículo pasa del hardware al software: cómo usar el repositorio de código abierto GD6: clonar el código, compilar el firmware, personalizar el sistema de configuración web y llamar a la API REST.


Enlaces relacionados


ManThink — Haciendo el desarrollo de IoT más eficiente.

ManThink: de los dispositivos a las aplicaciones de datos

¿Planeas una nueva instalación o modernizar un sistema existente? Comparte con ManThink la región, el número de dispositivos, las interfaces de campo y las condiciones de conectividad y alimentación para conversar sobre la selección de productos y la integración.

PMC51x Módulo de gateway LoRa Mini-PCIe

PMC51x — PMC51x es el módulo de radio LoRa de la serie GD6, con formato Mini-PCIe e interfaz SPI para el host. Basado en SX1302, admite ocho vías de recepción en paralelo y una de transmisión para integración en gateways.

Ver información oficial del producto →

GD61 Gateway LoRaWAN para interiores

GD61 — Gateway asequible para interiores con Ethernet, Wi-Fi y 4G opcional, y consola web para gestionar red y equipos. Basado en ESP32-S3, sin ThinkLink integrado; se conecta a una plataforma en la nube o autogestionada.

Ver información oficial del producto →

Consulta tu proyecto con ManThink →

Confirma los modelos, las configuraciones y las condiciones de uso en la documentación oficial y según los requisitos de tu proyecto.

Artículos relacionados