Paso 2: programación
Actualmente hay 2 versiones de LoRaWAN bibliotecas de Arduino:
1. https://github.com/matthijskooijman/arduino-lmic - esta biblioteca es portado de IBM LoRaWAN en la biblioteca de C. El problema con ella es que utiliza mucha memoria (sobre todo por parte de encriptación AES) y no se podía utilizar como es debido a Arduino UNO. Pero puede ser utilizado después de deshabilitar algunas características (que hacen código más pequeño).
2. https://github.com/things4u/LoRa-LMIC-1.51 - este es el mismo puerto de biblioteca de IBM, pero con diferentes lib para encriptación AES (versión reducida).
Tuve problemas con el funcionamiento de un bosquejo de la segunda opción y decidió dejar en la primera.
A hacer lo mismo debe descargar la biblioteca desde el enlace de arriba (Matthijs Kooijman versión) y ponerlo en tu carpeta de 'bibliotecas' de Arduino (descomprimida). Reinicie el IDE de Arduino y usted verá en las bibliotecas y los ejemplos.
En primer lugar ir a la carpeta de biblioteca y archivo abierto 'config.h'. Compruebe la línea
'#define CFG_sx1276_radio 1' es no comentada y comenta '//#define CFG_sx1272_radio 1'.
Descomentar las líneas '#define DISABLE_PING' y '#define DISABLE_BEACONS' ahorrar espacio para Arduino UNO (por Mega se puede omitir esto).
A continuación, abra en el IDE de Arduino: archivo -> ejemplos -> IBM países Marco -> taquipnea transitoria
Verificar pernos, debe ser como esta:
PIN asignación
const lmic_pinmap lmic_pins = {.nss = 10, .rxtx = LMIC_UNUSED_PIN, .rst = 5, .dio = {2, 5, 6},};
Sistema de NWKSKEY, APPSKEY, DEVADDR como conseguiste en tu servidor de red.
Ver archivos adjuntos como ejemplo.
Cargar su sketch en Arduino. Hecho!
Se comenzará a enviar paquetes a su puerta de entrada y luego reenvía al servidor de red.
Si utilizas 'loriot' puede ver paquetes va a su servidor en la página: https://www.loriot.io/apps/gwtap.html?gw=B8-27-EB-... (poner aquí la MAC de tu GW)
Y también puede comprobar los mensajes en el servidor (ver fotos).
Puede convertir HEX a datos ASCII aquí: http://www.rapidtables.com/convert/number/hex-to-a...
En mi caso 48 65 6C 6C 6f 2 c 20 77 6f 72 6C 64 21' significa 'Hola, mundo!'
Pasos a seguir:
Conectar sus real sensores con arduino y programa para enviar datos en vez de "Hola mundo".