Skip to content

alexandervalach/lora-ap-sim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 

Repository files navigation

LoRa@FIIT Access Point and End Nodes simulator

STIoT packet generator which simulates LoRa@FIIT wireless access point and LoRa@FIIT end nodes.

Supported features and TODO

Access Points features

LoRa Concentrator Features Support

  • Pseudo-random RSSI, SNR generation
  • Sending frequency data in STIoT messages
  • Command line interface
  • Duty cycle contraints and refresh

Thread-safe Features

  • Non-blocking socket communication to improve scalability
  • Thread-safe message queuing

QoS Support

  • Emergency message support
  • Priority queue for emergency messages

Collisions

  • Uplink collision simulation
  • Downlink collision simulation

End Nodes Features

  • End node duty cycle constraints and refresh
  • Processing network data from network server to adapt communication parameters
  • Calculate time-on-air (TOA) for each message
  • Data retransmission in case of collision
  • Support for MABP statistical model and channel selection

Command line interface

End nodes generation is required if data folder is empty

You should run

generator.py

Single access point usage

Recommended approach. Could be displayed by running main.py -h or main.py --help commands

main.py -i <access-point-id>

-i <dev_id>, --id=<dev_id> - Specify LoRa AP hardware id

-r, --register - Include end nodes registration process

-s, --shuffle - Shuffle list of end nodes

-f <file_path>, --file=<file_path> - Specify LoRa node id file

-b, --bandit - Activating bandit nodes support

-t, --test - Using test scenario for developing purposes

Multi access point usage

Just run the file. It generates 10x[number of files] new access points. This usage is buggy and can cause memmory leaks. Use at your own risk.

run.py

About

STIoT packet generator which simulates LoRa@FIIT wireless access point.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages