kartben / lorawan-node-simulator

Simulation infrastructure for a LoRaWAN network (gatways and end devices) that's easy to configure and run from your CLI. Also available as a Docker container.
MIT License
103 stars 13 forks source link
iot lorawan lpwan network-simulation simulation

Welcome to lorawan-node-simulator 👋

License: MIT Twitter: kartben Build

This repository contains a simulation infrastructure for LoRaWAN.

It simulates LoRaWAN gateways, and endpoints regularly emitting LoRaWAN radio packets ("Unconfirmed Data Uplink" by default). These packets get picked up by a few (i.e. 1 to 3) gateways that forward them to a network server.

As the initial purpose of this solution was to stress test a LoRaWAN network server, and not necessarily implement a full-blown simulator, only uplink traffic is generated at this point, and devices are expected to be provisioned via ABP.

Install

npm install lorawan-node-simulator -g

Usage

The simulator needs to be configured using the following environment variables (the ones in bold are mandatory):

Once all the required environment variables have been set (defined globally in your environment, or in a .env file in the folder from where you'll run the command, in which case you may want to rename the .env.sample file and use it as a starting point), simply launch the simulation:

lorawan-node-simulator

Docker container

The simulator is also available as a Docker container.

docker run kartben/lorawan-node-simulator

Pre-requisites / Limitations

Author

👤 Benjamin Cabé

🤝 Contributing

Contributions, issues and feature requests are welcome!

Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2020 Benjamin Cabé.

This project is MIT licensed.


This README was generated with ❤️ by readme-md-generator