El esquema abierto para un gateway LoRa de bajo costo, desagrega e interconecta componentes de hardware y software.
El mini-gateway es modular, el componente de software para la gestión de gateways y paquete de datos se implementa sobre un Raspberry Pi, conectado por Ethernet a la red local y con dirección IP fija.
En el manejo de software se prioriza integrar la gestión de dispositivos usando mensajes MQTT y de esta manera simplificar la integración al broker del esquema IoT general.
Componentes
El punto de partida la propuesta es gateway entre LoRa y Ethernet/Wifi. El fabricante Heltec presenta un «mini-Gateway» con el Módulo HT-M01. El módulo de hardware se conecta por medio del software «Packet-forwarder» (en un Raspbery Pi) hacia un administrador de gateways que puede estar en la red local (ChirpStack) o en la nube (The Things Network).
Componentes de Hardware
- Heltec HT-M01 mini gateway conectado mediante SPI o cable USB. https://heltec.org/project/ht-m01/
- Raspberry Pi. (pruebas con modelo 2 y 3 B+)
- memoria SD de 8GB para almacenamiento
La conexión del módulo HT-M01 se puede realizar con SPI usando una placa de conexión hacia el Raspberry Pi. Si no se tiene la placa, también se la puede construir siguiendo las instrucciones en:
https://robotzero.one/heltec-lora-gateway-things-network/
En la documentación se recomienda verificar que el cable USB sea de buena calidad, pues también lleva la alimentación de energía del módulo.
Componentes de Software
- Raspberry Pi OS de 32 bits
- Balena Etcher para transferir la imagen el OS a la SD
- Heltec Packet-forwarder
- MQTT – Mosquitto
- ChirpStack: Gateway-bridge, Network – Server, Application-Server.
El proceso de instalación del Raspberry Pi se encuentra descrito en la Raspberry Pi OS-Instalar.
Packet-forwarder se instala siguiendo las instrucciones del fabricante.
Inicialmente se usó USB como conexión del módulo Heltec HT-M01, luego se usó SPI solo para comprobar las modalidades de implementación. Se utiliza SPI en la versión de operación regular.
Conexión entre componentes
- módulo Heltec HT-M01 y Raspberry, SPI o USB
- Ethernet desde la Raspberry Pi , usando dirección fija
La conexión Ethernet facilita la comunicación con el esquema existente y en operación, facilitando la ubicación de los componentes de software en otros «servidores» en los Raspberry Pi.
Referencia: Heltec automation https://heltec-automation-docs.readthedocs.io/en/latest/gateway/ht-m01/qucik_start.html
Hardware con Raspberry pi Zero y adaptador Ethernet
Para el caso de usar mas de un Gateway LoRa con Raspberry Pi Zero que no tiene conector Ethernet, se requiere un adaptador USB a Ethernet.
Algunos adaptadores USB a Ethernet «económicos» tienen la misma dirección Mac que al utilizar varios en una red local (todos en el mismo segmento) genera inconvenientes en la comunicación.
La dirección MAC se puede revisar con la instrucción:
ipconfig
se obtiene el la MAC en funcionamiento:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.10.50 netmask 255.255.255.0 broadcast 192.168.10.255 inet6 fe80::329:a9da:ae23:c663 prefixlen 64 scopeid 0x20 ether 00:e0:4c:53:44:58 txqueuelen 1000 (Ethernet)
El asunto se resuelve cambiando la dirección MAC desde el sistema operativo, lo que requiere crear un archivo:
sudo nano /etc/systemd/network/00-default.link
con los parámetros a continuación, donde en [Match] tiene la MAC previa, y en [Link[ se ubica la MAC nueva:
[Match] MACAddress=00:e0:4c:53:44:58 [Link] MACAddress=00:e0:4c:53:44:01
Referencia: How to change your Ethernet’s Mac address on boot (Linux)