Comunicación LoRa ESP8266 & Radio RFM95 #1

Una de las tecnologías mas nombradas para ser implementadas para el Internet de las cosas, la cual tiene características muy llamativas comunicación a larga distancia y baja potencia reflejada en su bajo consumo, LoRa Lo ng – Ra nge”, este tipo de modulación se ha vuelto muy popular en proyectos de envió y recepción de datos, existen algunas librerías ya implementadas para las plataformas ESP8266, Arduino, Raspberry pi y ESP32.

Documentación de ESP-LoRa mas abajo.

En esta oportunidad realizaremos una prueba muy sencilla con ESP8266 y RFM95 LoRa.

Hace un tiempo me llegaron 2 modulos/radios LoRa  referencia RFM95 de HopeRF , a una frecuencia de 915.0 MHz, a continuación un tutorial recomendado  Introducción  LoRa y la revisión rápida al modulo RFM95:

Introduccion LoRa & Modulo RFM95 Hoperf

Introduccion LoRa & Modulo RFM95 Hoperf



Pruebas Realizadas

Utilizaremos 2 modulos ESP8266 NodeMCU, los cuales se comunicaran a través del bus SPI con los modulos RFM95 utilizando la libreria RH_RF95.h de RadioHead, esta prueba sera muy sencilla, el envió de una mensaje mas un contador desde un modulo hacia otro a 915MHz, demarcado de fabrica en la parte trasera del PCB.

En este tutorial se utilizara la modulacion LoRa, no implementaremos LoRaWAN no confundir.

En detalle para esta prueba solo se utiliza la modulación LoRa, no se esta implementando LoRaWAN en esta caso, pendiente para próximas pruebas.

Cabe aclarar que ya venden modulos ESP8266 y ESP32 con modulos LoRa un modulo/pcb pero considero mejor realizar una prueba con módulos independientes para que la prueba sea mas asequible al momento de comprar componentes y tener en cuenta la banda/frecuencia del modulo según su zona/area o región y reglamentaciones, información completa sobre usos legales LoRa.

Una ventaja, el diseño/pinout de el Radio RFM95 es compatible con las PCB’s blancas Adaptadoras para ESP8266, facilitando el montaje en protoboard.

IMPORTANTE: quitar las 3 resistencias y reguladores de voltaje a las PCB adaptadoras Blancas, para soldar los RFM95. 

Materiales MUY Baratos!!



Codigo Arduino IDE

En esta oportunidad utilizaremos la libreria RH_RF95.h de RadioHead, muy utilizada en ejemplos de Adafruit para la prueba de sus PCB y modulos, tecnicamente el modulo ESP8266 configura los parámetros del RFM95 a traves del protocolo bus SPI.

Nota: Enlaces de descarga y/o github mas  abajo.

Dado que es una prueba muy sencilla solo se configuraran los siguientes parametros en ambos modulos:

  • Potencia de transmision :  23  dBm        =  rf95.setTxPower(23, false)
  • Frecuencia/Banda:  915MHz                 =  #define RF95_FREQ 915.0

Importante la correcta configuración de Pines para ESP8266:

  • RFM95_CS   = CS (Selector de Chip o Selector de esclavo ).
  • RFM95_RST = Reset Radio al inicializar.
  • RFM95_INT = Interrupcion desde salida DIO0.

Ejemplo de Transmisión Modulo  #1

Se realizara en envió del mensaje “PDAControl – ” y el valor de un contador de mensajes/paquetes enviados.

Nota: Enlaces de descarga y/o github mas  abajo.

 

  • Terminal Serial … Transmitiendo Mensaje.



Ejemplo de Recepción Modulo #2

El modulo esta en modo recepción.

Nota: Enlaces de descarga y/o github mas  abajo.

 

  • Terminal Serial … Recibiendo, Mensaje y RSSI

Fabricación de Antena

Para esta prueba se ha fabricado la antena con Cable UTP (Unshielded Twisted Pair) o Par trenzado no apantallado, se tomo uno hilo/alambre de 7.8 cm, agradecimientos a Automatizanos.com por la informacion, para calcular la longitud de la antena, solo he modificado el parámetro mas importante Frecuencia, en el caso de mi modulo es a 915.0.

Video: Communication LoRa ESP8266 & Radio RFM95 # 1



Conexiones

Nota: Los GPIO’s del Radio RFM95 funciona a 3.3v,  voltajes superiores los quemaran!!.

            ESP8266      –  RFM95/96

  • Gpio15/D8   – NSS
  • Gpio13/D7   – MOSI
  • Gpio12/D6   – MISO
  • Gpio14/D5   – SCK
  • Gpio05/D1   – DIO0
  • Gpio02/D4   – DIO1
  • Gpio16/D0   – RST
  • VCC            – 3.3V
  • GND           – GND

Conclusiones

Como indique anteriormente en esta prueba no se esta implementando LoRaWAN, solamente se esta utilizando la tencologia LoRa es decir solo la modulacion y comunicacion de los radios.

Aplicaciones de esta clase de proyectos, creación de Gateway  LoRa-Wifi, para el envió de datos de sensores remotos a aplicaciones en internet.

Crear sensores para envio a larga distancia bajo consumo de bateria y es libre, A diferencia de GSM y 4G.

Me atrevería a decir que que LoRa es la tecnología perfecta para el Internet de las Cosas.

En este caso no se utilizara el Wifi de los ESP8266 12E.

En proximos tutoriales mediremos la maxima distancia con esta clase de antena y este modulo, supongo que dado que es un modulo muy economico y adsequible dudo un poco de lo 10 o 20Km en campo abierto y probaremos a ver .



Actualización Prototipo ESP-LoRa

Para avanzar en este proyecto luego muchas pruebas en protoboard, he creado una PCB para esp8266 12e y los modulos/radio RFM95 o LORA1276-C1, Permitiendo la posibilidad de Configurar como modulo LoRa y LoRaWAN – GATEWAY  & LoRaWAN – NODE para posibles conexiones con TTN o “The Things Network” plataforma IoT basada en redes LPWAN  Low-Power Wide-Area Network.

En el siguiente tutorial indicare como diseñar 10 prototipos PCB con la empresa Seeedstudio con ayuda de KICAD.

Recomendado: 10 PCB’s Profesionales con Seeed Studio Fusion – Prototipos ESP-LoRa

10 PCB’s Profesionales con Seeed Studio Fusion – Prototipos ESP-LoRa

Communication ESP-LoRa V1.0 ESP8266 & Radio RFM95 #LoRa



Tutoriales Recomendados

Internet de las cosas: LoRa, larga distancia, baja potencia  por Automatizanos.com

Referencias

Descargas/Github



Leave a Reply