Skip to content

gradoj/nanoserver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nanoserver

A lightweight micropython implementation of an embedded LoRaWAN server. Combining the gateway forwarder from Pycom and a heavily modified floranet on a Lopy4 allows for a self-contained gateway. The Lopy4 is designed as a LoRaWAN endpoint but can run as a non-LoRaWAN-compliant single-channel gateway. May not want to use this in a production environment but nice for testing or battery operated gateway. This is very early test code in no way ready for actual use. Using a python implementation of aes-cmac from secworks slightly modified for micropython.

https://github.com/secworks/cmac https://github.com/Fluent-networks/floranet https://github.com/pycom/pycom-libraries/blob/master/examples/lorawan-nano-gateway/nanogateway.py

Need to do: -fix hardcoded values for join requests, nonces, etc -handle packet1, packet2 delays better -test abp -put keys in config or somewhere safer -add mqtt or decrypted packets to a file -add support for LoRaWAN v1.1 -clean up code -put MAC code in its own file -lots more

Roughly working: -OTAA join -confirmed packets

To run add main.py, cmac.py, nanogateway.py, nanoserver.py, device.py, config.py onto Lopy4 running Pycom micropython(tested on ver 1.20.0.rc12 [v1.9.4-81167ed]). Appkey is in device.py for now. Need to add it somewhere safe. Looking for help testing and improving.

About

Micropython embedded LoRaWAN server

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages