Una biblioteca simple solo para empacar (mariscal) y analizar (unmarshal) paquetes Lorawan en C. Se pretende utilizar como base para las pilas de servidor de red de nodo Lorawan de la capa superior. Además de esto, podría ser útil para fines de prueba y verificación de Lorawan.
Al usar esta biblioteca, se necesita conocimiento sobre la especificación de Lorawan. Puede solicitar la especificación de Lorawan aquí: https://www.lora-alliance.org/for-developers
Se implementan los siguientes tipos de mensajes (MTYPE):
Utilizamos esta biblioteca internamente dentro de nuestra fuente de código cerrado (¡lo siento!) Lorawan-stack con sede en Fretos. En Lobaro, intentamos mucho lograr una base de código flexible y modular para realizar proyectos rápidamente. Con el código C incrustado, esto a menudo no es tan fácil como con los idiomas modernos como Golang. Esta podría ser la razón por la cual la mayoría de las implementaciones de Lorawan mezclan la tarea "simple" de la codificación/decodificación de paquetes con la lógica comercial de protocolo.
Esta biblioteca intenta desacoplar la generación de paquetes de Lorawan Stack Logic. Incluye, separado limpiamente, solo el mínimo absoluto del estado de Lorawan necesario como las llaves o los framecounters. Creemos que esta biblioteca de codificación/decodificación de paquetes de Lorawan es valiosa para cualquiera que escriba su propia pila de Lorawan. Escribir una propia pila de Lorawan no es tan difícil y puede ser crucial para aprovechar al máximo el protocolo para una aplicación en particular.
TBD
Agradecemos cualquier comentario, no dude en crear problemas o extraer solicitudes.
Util-Lorawan-Packets tiene licencia bajo la licencia MIT. Consulte la licencia para obtener más información.
AES, CMAC tiene sus propias licencias. Siga los enlaces a continuación para obtener los detalles.