Hardware
STM32WL: el SoC de ST con radio LoRa integrada en el mismo chip
Guía técnica del STM32WL de ST: SoC con radio sub-GHz LoRa en el mismo chip, Cortex-M4/M0+, consumo ultralow y cuándo us
STM32WL: el SoC de ST con radio LoRa integrada en el mismo chip
Actualizado: 2026-05-24
Resumen ejecutivo
- STM32WL es la familia de SoCs de STMicroelectronics que integra en un único paquete un microcontrolador ARM Cortex-M4 a 48 MHz más una radio sub-GHz compatible con LoRa (modulación propietaria de Semtech) y FSK/GFSK/MSK/BPSK — sin chip de radio externo.
- Es el MCU de referencia para construir nodos LoRaWAN de bajo consumo para redes LPWANLTérminoLPWANLPWAN (Low-Power Wide-Area Network) es una categoría de redes inalámbricas de largo alcance y bajo consumo para IoT. Incluye LoRaWAN, NB-IoT y LTE-M.Ver perfil de largo alcance (hasta 15 km en rural, 2-5 km urbano).
- La variante dual-core STM32WL55 añade un Cortex-M0+ dedicado a la gestión de la radio, liberando al M4 para aplicaciones — reduciendo el consumo activo de comunicación.
- Comparado con ESP32 o nRF52840: ninguno de los dos tiene radio sub-GHz nativa. Para LoRa con ESP32
HardwareESP32WiFi + BT/BLE SoC dual-core a precio de €Ver perfil se necesita un SX1276 externo por SPI, lo que añade complejidad, BOM y consumo. El STM32WLSTérminoSTM32WLEl STM32WL es un microcontrolador de STMicroelectronics con radio LoRa sub-GHz integrada en el mismo chip, pensado para nodos LoRaWAN.Ver perfil elimina esa pieza.
- Cuándo NO usar: proyectos que requieren Wi-Fi o BLEBTérminoBluetooth Low Energy (BLE)Bluetooth Low Energy (BLE) es la variante de bajo consumo de Bluetooth, para enviar pocos datos de forma intermitente con mínima batería. Domina wearables y proximidad. Lo mantiene el Bluetooth SIG.Ver perfil (no los tiene), prototipado rápido con ecosistema Arduino
EmpresaArduinoPlataforma de hardware y software open source para makersVer perfil simple, casos donde el volumen justifica usar un ESP32 + SX1276 externo por menor coste de componente.
Qué es el STM32WL y por qué importa en LoRaWAN
En el ecosistema IoT, los nodos de largo alcance con batería son el caso de uso donde el STM32WL brilla. En cualquier nodo LoRaWAN convencional se combinan dos chips: un MCU (para la lógica de aplicación) y un transceptor LoRa como el Semtech SX1276, SX1261 o SX1262, conectados por SPI. El STM32WL fusiona ambos en un único die bajo el mismo encapsulado.
El resultado práctico:
- PCB más pequeña (menos componentes, menos soldaduras, menos fallos en producción).
- Consumo de sistema más bajo porque la interfaz SPI desaparece.
- Una sola herramienta de desarrollo, un solo HAL, un solo ciclo de certificación.
- El MCU controla directamente los registros de la radio sin latencia de bus.
STMicroelectronics
EmpresaSTMicroelectronicsFabricante europeo de semiconductores: STM32, sensores y ToFVer perfil posiciona el STM32WL como chip para despliegues de nodos masivos: agricultura de precisiónATérminoAgricultura de precisiónLa agricultura de precisión usa sensores IoT, GPS y datos para optimizar riego, fertilización y cosecha por zonas, aumentando rendimiento y eficiencia.Ver perfil, medidores inteligentes, trackers de activos, redes municipales de sensores. Es el chip que aparece en la mayoría de proyectos del catálogo de hardware IoT donde la autonomía y el alcance son los dos parámetros no negociables. Justo los escenarios donde el coste de la BOM por unidad, el consumo y la autonomía de la batería pesan más que el rendimiento de cómputo.
Especificaciones técnicas clave
| Característica | STM32WL55 (dual-core) | STM32WLE5 (single-core) |
|---|---|---|
| CPU principal | ARM Cortex-M4 @ 48 MHz | ARM Cortex-M4 @ 48 MHz |
| CPU radio | ARM Cortex-M0+ @ 48 MHz | — (radio gestionada por el M4) |
| Flash | 256 KB | 256 KB |
| RAM | 64 KB SRAM | 64 KB SRAM |
| Radio sub-GHz | LoRa + (G)FSK/MSK/BPSK | LoRa + (G)FSK/MSK/BPSK |
| Banda radio | 150 – 960 MHz (EU: 868 MHz, US: 915 MHz) | |
| Potencia TX máx. | +22 dBm (LP PA) / +15 dBm (HP PA) | |
| Sensibilidad RX | -148 dBm (LoRa SF12, 125 kHz BW) | |
| Consumo TX (@+14 dBm) | ~18 mA | |
| Consumo RX | ~5 mA | |
| Consumo sleep (Stop 2) | ~1,08 µA | |
| ADC | 12-bit, 16 canales | |
| Periféricos | SPI, I2C, UART, LPUART, PWM, LPTIM | |
| GPIOs | Hasta 43 | |
| Temperatura | -40 °C a +85 °C (grado industrial: -40 a +105 °C) | |
| Encapsulado | WLCSP59, QFN48, VFQFPN48 | |
| Precio ref. | ~4-7 USD chip | ~3-6 USD chip |
La arquitectura dual-core del WL55 es notable: el Cortex-M0+ corre el stack de la radio (LoRaMAC, protocolo LoRaWAN
ProtocoloLoRaWANLPWAN abierta de largo alcance y bajo consumoVer perfil) de forma independiente, y los dos núcleos se comunican por memoria compartida e interrupciones. El M4 puede entrar en modo Stop mientras el M0+ gestiona una ventana de recepción RX1/RX2 de LoRaWAN sin despertar la CPU principal.
La radio sub-GHz integrada: LoRa sin chip externo
El transceptor interno del STM32WL es funcionalmente equivalente al SX1261/SX1262 de Semtech — de hecho comparte el mismo IP de radio, licenciado por ST. Esto garantiza interoperabilidad con cualquier gateway LoRaWAN del mercado.
Configuraciones de radio habituales en nodos LoRaWAN EU868:
| Parámetro | Valor típico |
|---|---|
| Frecuencia canales EU | 868,1 / 868,3 / 868,5 MHz (+ canales adicionales TTN) |
| Spreading Factor (SF) | SF7-SF12 (adaptativo ADR) |
| BW (Bandwidth) | 125 kHz (habitual), 250/500 kHz |
| CR (Coding Rate) | 4/5 a 4/8 |
| Time on Air (SF12, 51B) | ~2,5 s |
| Potencia TX | +14 dBm (límite ETSI) |
Con SF12 y BW 125 kHz la sensibilidad llega a -148 dBm, lo que permite links en radio enlace con más de 150 dB de path loss — suficiente para penetrar muros de hormigón o llegar a 10-15 km en campo abierto.
Stacks de software y ecosistema de desarrollo
STM32CubeMX + STM32CubeWL
ST ofrece el HAL oficial en STM32CubeWL, con código de referencia LoRaWAN basado en la implementación de Semtech (LoRaMac-node). El flujo típico:
- Configurar pines y periféricos en STM32CubeMX (GUI).
- Generar código C con el HAL y el middleware LoRaMAC.
- Compilar con STM32CubeIDE (basado en Eclipse/GCC) o con CMake + arm-none-eabi-gcc.
- Flashear por SWD con ST-LINK/V2 o ST-LINK/V3.
Ejemplo: join LoRaWAN OTAA y envío de payload
#include "lora_app.h"
#include "sys_app.h"
#include "stm32_timer.h"
/* Configuración OTAA en lorawan_conf.h */
// #define LORAWAN_JOIN_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }
// #define LORAWAN_DEV_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 }
// #define LORAWAN_NWK_KEY { 0x2B, 0x7E, ... }
static void SendTxData(void)
{
uint8_t payload[4];
int16_t temp_c = ReadTemperatureSensor(); /* función del usuario */
payload[0] = (temp_c >> 8) & 0xFF;
payload[1] = temp_c & 0xFF;
payload[2] = ReadBatteryLevel();
payload[3] = 0x00; /* flags */
LmHandlerSend(&AppData, LORAMAC_HANDLER_UNCONFIRMED_MSG, false);
}
/* En main.c: inicializar, hacer join OTAA y enviar cada 15 min */
int main(void)
{
HAL_Init();
SystemClock_Config();
MX_LoRaWAN_Init(); /* generado por CubeMX */
while (1)
{
MX_LoRaWAN_Process(); /* gestiona la máquina de estados LoRaWAN */
}
}Zephyr RTOS (alternativa)
El proyecto Zephyr soporta el STM32WL (board nucleo_wl55jc) con driver de radio sub-GHz y soporte LoRaWAN en su módulo lorawan. Útil si ya se trabaja con Zephyr en otros chips del proyecto (como el nRF52840nTérminonRF52840El nRF52840 es un SoC de Nordic Semiconductor con Cortex-M4F y radio multiprotocolo (BLE 5 e IEEE 802.15.4) de muy bajo consumo, base de muchos dispositivos Matter/Thread.Ver perfil):
/* Zephyr: lorawan_send() */
#include <zephyr/lorawan/lorawan.h>
uint8_t data[] = {0x01, 0x02, 0x03};
lorawan_send(1, data, sizeof(data), LORAWAN_MSG_UNCONFIRMED);STM32WL vs alternativas
| MCU | Radio LoRa | Wi-Fi/BLE | Consumo sleep | Precio chip | Cuándo elegir |
|---|---|---|---|---|---|
| **STM32WL55** | Nativa integrada | No | ~1 µA | ~5 USD | Nodo LoRaWAN producción, BOM reducida |
| **[ESP32](/hardware/esp32) + SX1276** | Externa (SPI) | Wi-Fi + BLE | ~10 µA | ~5+3 USD | Prototipos, ya tienes ESP32 en BOM |
| **[nRF52840](/hardware/nrf52840) + SX1262** | Externa (SPI) | BLE/Thread | ~1,5 µA | ~6+3 USD | BLE + LoRa simultáneo en mismo nodo |
| **Murata CMWX1ZZABZ** | STM32L0+SX1276 (módulo) | No | ~1,5 µA | ~8-12 USD | Menor tiempo de diseño PCB |
| **nRF9160** | LTE-M/NB-IoT | No | ~2,5 µA | ~8 USD | Cobertura celular, sin LoRa |
La ventaja del STM32WL sobre "ESP32 + SX1276" no es solo de integración: el stack LoRaWAN de ST está optimizado para que el M0+ gestione los slots de recepción sin despertar el M4, algo imposible de replicar con la misma eficiencia en una arquitectura MCU + radio separados por SPI.
Cuándo NO usar el STM32WL
- Necesitas Wi-Fi o BLE: el STM32WL no tiene radio 2.4 GHz. Para Wi-Fi usa ESP32; para BLE con LoRa simultáneo, una combinación nRF52840 + SX1262 o un módulo RAK4631.
- Prototipado rápido con Arduino: el ecosistema Arduino del STM32WL es limitado comparado con el ESP32. Si solo quieres probar LoRaWAN rápido, una placa con RFM95W y un Arduino Mega es más inmediata.
- Cobertura celular: si la red LoRaWAN no existe en la zona de despliegue y necesitas cobertura garantizada, las redes LTE-MLProtocoloLTE-MIoT celular con movilidad y vozVer perfil/NB-IoT
ProtocoloNB-IoTLPWAN celular standardizada por 3GPP — cobertura operadorVer perfil con módems Nordic nRF9160 o Quectel BG77 son más robustas. - Proyectos con alta carga de cómputo: el Cortex-M4 a 48 MHz con 64 KB de RAM es correcto para leer sensores y enviar paquetes, pero insuficiente para DSP pesado, protocolos TLS completos en RAM o procesado de imágenes.
- Volumen muy bajo y ya tienes ESP32: si haces 5 unidades y tienes ESP32 + SX1276 en casa, la integración del STM32WL no compensa el coste de aprendizaje del entorno ST.
Placas de desarrollo y módulos de referencia
Nucleo-WL55JC
La dev board oficial de ST. Integra ST-LINK/V3 para debug/programación SWD sin hardware adicional. Dos botones, LEDs, conectores Arduino/Morpho para expansión. Precio ~25 USD. Primera opción para cualquier proyecto de evaluación o prototipo.
RAK3172 (RAKwireless)
Módulo certificado CE/FCC basado en STM32WLE5CC. Encapsulado SMD, AT commands por UART o programable directamente con STM32CubeIDE. Ampliamente usado en productos IoTITérminoIoT (Internet de las cosas)El IoT (Internet of Things) es la red de objetos físicos con sensores, software y conectividad que recogen e intercambian datos y actúan de forma autónoma.Ver perfil comerciales europeos.
LoRa-E5 (Seeed Studio)
Módulo basado en STM32WLE5JC, compatible con AT commands del stack LoRaWAN de ST. Disponible en versión mini (21 × 28 mm) y en placa de desarrollo (LoRa-E5-Dev). Muy usado en prototipos que luego pasan a PCB propia.
Recursos primarios
- STMicroelectronics — STM32WL Series (acceso: 2026-05)
- STM32WL55JC Datasheet (acceso: 2026-05)
- LoRa Alliance — LoRaWAN Specification (acceso: 2026-05)
Preguntas frecuentes
¿Qué diferencia hay entre STM32WL55 y STM32WLE5?+
El STM32WL55 es dual-core: tiene un Cortex-M4 para la aplicación y un Cortex-M0+ dedicado a gestionar la radio. Esto permite que el núcleo de aplicación entre en sleep profundo mientras el M0+ gestiona las ventanas de recepción LoRaWAN. El STM32WLE5 es single-core (solo M4), más simple pero con el mismo consumo combinado algo mayor en los slots RX. Para nodos de producción con batería larga, el WL55 es la elección; para prototipos o volúmenes pequeños, el WLE5 es suficiente.
¿El STM32WL funciona con The Things Network?+
Sí. El stack LoRaWAN de ST implementa LoRaWAN 1.0.3 y 1.1.0, compatible con cualquier Network Server estándar: The Things Network, ChirpStack, Helium, servidores privados. El proceso de join OTAA es estándar: configuras DevEUI, JoinEUI y AppKey en el código, y el dispositivo se registra en la consola TTN o ChirpStack como cualquier otro nodo LoRaWAN.
¿Cuánta autonomía da el STM32WL con batería?+
Depende del ciclo de envío, SF y payload. Un cálculo típico: nodo que envía 10 bytes cada 15 minutos a SF9, con batería de 2.400 mAh (2× AA). Consumo medio ponderado ~6 µA → autonomía estimada >4 años. Con envíos cada hora a SF12, se puede superar los 10 años. Son estimaciones; la temperatura, la autodescargas de la batería y los periféricos conectados modifican el resultado real.
¿Se puede programar el STM32WL con Arduino?+
Con limitaciones. Existe soporte en STM32duino (el core Arduino para STM32) para algunas placas basadas en STM32WL, pero el soporte no es tan maduro como el de ESP32 o Arduino AVR. Para producción seria es mejor usar STM32CubeIDE con el HAL oficial, que tiene soporte completo del stack LoRaWAN y ejemplos de consumo optimizados.
¿Qué gateway LoRaWAN necesito para usar el STM32WL?+
Cualquier gateway LoRaWAN compatible con el protocolo estándar: gateways Semtech (basados en SX1302/SX1303), RAK Wireless, Dragino, TTIG de The Things Industries, o uno montado en Raspberry Pi con HAT SX1302. El nodo STM32WL no requiere ningún gateway específico de ST.
¿El STM32WL tiene certificación CE para Europa?+
El chip por sí solo no tiene certificación de sistema, pero los módulos certificados basados en él (RAK3172, LoRa-E5, Murata CMWX1ZZABZ) sí la tienen. Para un producto comercial que vaya a mercado europeo, es recomendable partir de uno de estos módulos precertificados en lugar del chip pelado.