Pruebas Wi-Fi HaLow 802.11ah Hardware — Planet HLB-100 Elemento Detalle Modelo HLB-100 Estándar IEEE 802.11ah (Wi-Fi HaLow) Frecuencia Sub-1 GHz (915 MHz US / 868 MHz EU) Alcance máximo Hasta 1 km en campo abierto Interfaz 1x 10/100BASE-TX RJ45 (LAN/WAN) + conector SMA hembra Sub-1G RS485 Terminal block 3 pines en el panel trasero Modos AP (por defecto) / Station / Gateway Seguridad WPA3 Alimentación 5V DC 2A Temperatura operación -20°C a 60°C Contenido de la caja: HLB-100 Adaptador DC 5V/2A Antena Sub-1G Hoja QR Datos de acceso por defecto Parámetro Valor IP por defecto 192.168.1.253 Usuario admin Contraseña hl + últimos 6 caracteres del MAC ID en minúsculas SSID HaLow PLANET_AH Modo por defecto AP ℹ️ La contraseña se forma con el prefijo hl seguido de los últimos 6 caracteres de la dirección MAC. Por ejemplo si el MAC es 4C:BB:47:C8:C4:9C la contraseña sería hlc8c49c . Podemos encontrar la MAC en la etiqueta de debajo Nos quedamo con los últimos 6 carácteres, e82805 . Configuración inicial — acceso a la interfaz web El HLB-100 se configura exclusivamente por Ethernet — no hay configuración WiFi directa. El módulo no tiene servidor DHCP activo por defecto, por lo que al conectarlo directamente al PC la interfaz ethernet queda con una IP 169.254.x.x (APIPA) — subred diferente a la del módulo. Es obligatorio asignar una IP estática manualmente en el PC antes de acceder. Windows (PowerShell) # Asignar IP estática netsh interface ip set address "Ethernet" static 192.168.1.100 255.255.255.0 # Volver a DHCP al terminar netsh interface ip set address "Ethernet" dhcp Linux # Ver el nombre de la interfaz ethernet ip a # Asignar IP estática (sustituye enp3s0 por tu interfaz) sudo ip addr add 192.168.1.100/24 dev enp3s0 sudo ip link set enp3s0 up # Volver a DHCP al terminar sudo ip addr flush dev enp3s0 sudo dhclient enp3s0 Accede a la interfaz web con Chrome o Firefox: http://192.168.1.253 ⚠️ El módulo responde por HTTP , no HTTPS — a pesar de lo que indica el manual. Usar https:// resultará en error de conexión. Veremos algo así: Reset a fábrica (si se perdió la contraseña o la IP): Mantén pulsado el botón RESET del panel frontal durante 10 segundos. La IP vuelve a 192.168.1.253 . Cuando entremos con user: admin y pswd: hl+MAC , veremos esto: Nos pedirá que escribamos nuevos credenciales, yo lo he dejado como usr: APHaLow y pswd: Admin1234. , obliga a usar ciertas cosas para la contraseña y usr no puede ser admin. Para el que usaré de station será usr: STAHaLow . Nos llevará a esta página: Aquí escogemos el modo de uso, podríamos usar Gateway para conectarlo directamente a un punto de acceso de Internet, pero a nosotros solo nos interesa STA o AP. Si escogemos AP: Veremos: Tenemos dos tipos de conexión para la LAN, Static y DHCP Lo dejamos en Static , y asignamos la IP del AP a 192.168.1.253 , para que no moleste en cuanto nuestros PCs intenten enrutar trafico, no lo intenten por Wi-FI normal, el resto no es importante, dejarlo en defaults. La IP que cambiaremos será para cuando configuremos el STA. Seguimos y veremos esto: Una vez pongamos el Wireless Status: Enable , nos saldrán las otras opciones. Aquí empiezan las risas, solo tenemos disponible la opción de 1Mhz, cosas de Europa. Dejamos el resto igual, guardar SSID y Passphrase , que será lo que necesitará nuestra STA. Lo único que podemos variar de aquí son los canales, que tenemos disponibles 1, 3, 5, 7 y 9. Lo dejaré en 1 para empezar. Canal Frecuencia central Banda 1 863.5 MHz EU 3 864.5 MHz EU 5 865.5 MHz EU 7 866.5 MHz EU 9 867.5 MHz EU Finalmente veremos el resumen: Una vez le demos a Finish tardará un poco en cargar y nos devolverá a la pantalla inicial de Login. Si entramos con nuestros nuevos credenciales: Aquí podemos ya acceder a la típica pantalla de configs y dashboard, ya entraremos en más detalle más tarde. Si escogemos STA: Ahora configuraremos la Station, hacer los mismos pasos de login con MAC de antes, etc.. (Este lo configuraremos con usr: STAHaLow y cuando lleguemos a Mode , veremos: Que es lo mismo que en AP por ahora, aquí lo que haremos será cambiar su IP a IP Adress 192.168.3.252 , para que puedan comunicarse. Si seguimos veremos: Dejamos Use HaLow Radio como está, y en SSID o ponemos el SSID del AP o le damos a Scan para comprobar que hemos hecho bien el config del AP. (Hay que tener encendido el AP, no tiene porqué estar conectado a ningún PC) Y veremos esto: Un pop-up con el módulo que haya detectado, nos chiva su SSID, y sus datos. El RSSI no es el real si hay alguna duda, es un placeholder que hasta que no los emparejemos no cambiará. Si lo clicamos, se nos rellenarán los campos y solo quedará poner la Passphrase . (12345678) Y finalmente, se mostrará como en el anterior el resumen del config. Si le damos a finish, después de cargar un poco, como antes, nos devolverá a la página de login, iniciamos con nuestros nuevos credenciales y veremos: Y ya los tendremos configurados. Importante Ahora el AP es accesible a través de http://192.168.1.253 , pero STA desde http://192.168.1.252 . Ahora si nos fijamos en el dashboard del STA, pone que el Status: OFF, reiniciamos ambos módulos desconectando y conectado y cuando volvamos a entrar estarán emparejados. Podemos hacer una simple prueba, si estamos conectados con el ethernet al AP, si hacemos: ping 192.168.1.252 Y tenemos respuesta, todo va bien, de hecho, si ambos dispositivos están encendidos, podemos entrar a http://192.168.1.252 (STA), estando conectados al 192.168.1.253 por ethernet. Ya están enlazados. Indicadores LED LED Estado Significado PWR Verde fijo Alimentación correcta STA Verde fijo Módulo en modo Station LNK/ACT Verde fijo/parpadeando Enlace Ethernet activo / tráfico RF Signal 3 LEDs verdes Calidad de la señal HaLow Pruebas Haremos las pruebas desde un PC Windows 11 y una Raspberry Pi 5 con Ubuntu 22.04. Las antenas separadas unos 15cm, en línea de visión directa (LOS). Problema de subredes La red local (router, WiFi, internet) usa 192.168.1.x . Al poner los módulos HaLow en la misma subred, el tráfico se enrutaba por WiFi en lugar de por HaLow, causando conflictos de ruta. La solución es mover toda la red HaLow a una subred dedicada 192.168.3.x : Dispositivo IP HLB-100 AP 192.168.3.253 HLB-100 Station 192.168.3.252 PC (ethernet) 192.168.3.100 Pi5 (eth0) 192.168.3.50 Configuración de red en el PC (Windows) # Asignar IP estática en la interfaz ethernet (hacia el AP) netsh interface ip set address "Ethernet" static 192.168.3.100 255.255.255.0 # Volver a DHCP al terminar netsh interface ip set address "Ethernet" dhcp El WiFi sigue en 192.168.1.x para internet — no se ve afectado. Configuración de red en la Pi5 (Linux) # Levantar eth0 y asignar IP sudo ip link set eth0 up sudo ip addr add 192.168.3.50/24 dev eth0 # Verificar ip a show eth0 # Verificar que la ruta hacia 192.168.3.x sale por eth0 ip route show | grep 192.168.3 Los cambios con ip no son persistentes tras reinicio. Para hacerlos permanentes edita el netplan o usa nmcli. Conectividad simultánea HaLow + internet + SSH PC: ethernet en 192.168.3.100 (HaLow) + WiFi en 192.168.1.x (internet) Pi5: eth0 en 192.168.3.50 (HaLow) + wlan0 en 192.168.1.45 (internet y SSH) El SSH a la Pi5 sigue funcionando por wlan0 y no se ve afectado por los cambios en eth0 . Verificar el enlace HaLow # En la Pi5 — comprobar que eth0 recibe tráfico sudo tcpdump -i eth0 -c 10 # Si no aparece tráfico, forzar negociación ethernet sudo apt install -y ethtool sudo ethtool -s eth0 speed 100 duplex full autoneg off sudo ip link set eth0 up Conectividad básica # Desde PC ping a Pi5 ping 192.168.3.50 # Ping con estadísticas (Linux) ping -c 100 192.168.3.50 # Ping continuo (Windows) ping -t 192.168.3.50 Throughput — iperf3 # Instalar sudo apt install -y iperf3 # Linux # Windows: descargar desde https://iperf.fr # Pi5 como servidor iperf3 -s # PC como cliente — test TCP 60 segundos iperf3 -c 192.168.3.50 -t 60 # Test UDP con bitrate realista para HaLow EU iperf3 -c 192.168.3.50 -u -b 200K -t 60 # Test bidireccional iperf3 -c 192.168.3.50 -t 60 --bidir Resultados obtenidos Condiciones: LOS a 15cm, canal 1 MHz, canal 1 (863.5 MHz), WPA3. Throughput TCP Dirección Throughput medio Patrón PC → Pi5 (downstream) ~125-191 Kbits/sec Ráfagas de 128KB cada ~7s Pi5 → PC (upstream) ~34-70 Kbits/sec Ráfagas menos frecuentes El patrón de ráfagas seguidas de silencio es consecuencia directa del duty cycle del 1% en la banda 868 MHz EU — el módulo transmite durante ~0.07 segundos y luego debe guardar silencio el resto del ciclo. Throughput UDP Bitrate objetivo Resultado Pérdida 5 Mbps 0 bytes recibidos 100% — el enlace no puede absorberlo 200 Kbps ~170-200 Kbits/sec estables 0.74% Para UDP hay que ajustar el bitrate al límite real del enlace (~150-200 Kbps). A 5 Mbps el buffer del módulo se satura y descarta todos los paquetes. Latencia Métrica HaLow 868 MHz (1 MHz BW) Wi-Fi 2.4 GHz Latencia mínima ~19 ms ~2.8 ms Latencia media ~38-53 ms ~6.9 ms Latencia máxima ~119 ms ~34.7 ms Jitter (mdev) ~13-30 ms ~5.5 ms Pérdida de paquetes 0-12.5% 0% Throughput TCP ~125-191 Kbps >100 Mbps RSSI y estado del enlace Desde la interfaz web del AP ( http://192.168.3.253 ) → HaLow → Connection Status : Campo Valor (LOS 15cm) RSSI -7 dBm TX Link Speed 3.5 Mbps RX Link Speed 3.5 Mbps Uptime estable >1h Con las antenas a 15cm en LOS el RSSI es prácticamente perfecto. Habría que repetir esta lectura a cada distancia/obstáculo durante las pruebas para correlacionar señal con throughput y latencia. Limitaciones de HaLow EU Duty cycle del 1% Es la limitación más jodida. La regulación europea obliga a que los dispositivos en 868 MHz solo transmitan durante el 1% del tiempo, en la práctica esto significa que por cada 70ms de transmisión hay ~7 segundos de silencio obligatorio. Esto explica el patrón de ráfagas que se ve en iperf3 y hace que el throughput medio sea muy bajo. En USA (915 MHz) no existe esta restricción — los módulos HLB-100 versión US pueden transmitir continuamente y el throughput real se acerca a los 3-4 Mbps con canal de 4 MHz. Ancho de canal limitado a 1 MHz En Europa el espectro disponible es solo de 5 MHz (863-868 MHz), lo que limita el ancho de canal máximo a 1 MHz. En USA hay 26 MHz disponibles y se pueden usar canales de 1, 2, 4 y 8 MHz — con 8 MHz el throughput sube a ~15 Mbps. Jitter alto El jitter de 13-30 ms hace que HaLow EU no sea apto para aplicaciones en tiempo real estricto como streaming de vídeo o para un caso especial LiDARs. Mejoras posibles Antenas direccionales Las antenas omnidireccionales incluidas son adecuadas para entornos abiertos. En entornos con muchos obstáculos, antenas Yagi o patch direccionales en el conector SMA pueden mejorar el RSSI y reducir la pérdida de paquetes. Prueba de penetración de obstáculos Coloca los módulos en distintas posiciones y anota el throughput y latencia: Escenario Throughput TCP Latencia Pérdida Misma habitación (LOS 15cm) ~150 Kbps ~38 ms 0-12% Una pared de yeso Dos paredes de yeso Pared de hormigón Dos plantas Extremos opuestos de la casa Estabilidad — test de larga duración # iperf3 durante 1 hora con reporte cada minuto iperf3 -c 192.168.3.50 -t 3600 -i 60 # Ping continuo con log ping 192.168.3.50 | tee halow_ping_log.txt # Linux ping -t 192.168.3.50 > halow_ping_log.txt # Windows Notas sobre regulación europea En Europa (868 MHz): Duty cycle máximo del 1% — 0.7 segundos de transmisión por cada 70 segundos Potencia máxima de transmisión limitada a 25 mW ERP Solo canales de 1 MHz disponibles en el rango 863-868 MHz Para pruebas puntuales en interior no suele ser un problema legal, pero hay que tenerlo en cuenta para despliegues permanentes. Referencias Planet HLB-100 — Página oficial Planet HLB-100 — Quick Installation Guide (PDF) 802.11ah EU spectrum limitations — Notebookcheck iperf3