-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Welcome to the SDWSN-controller wiki!
This repository is part of the ELISE project, which is a Software-Defined Networking (SDN) based solution for Wireless Sensor Networks (WSNs). ELISE adopts Contiki-NG as its operating system for resource-constrained devices in the Internet of Things (IoT). For more information on the ELISE project please click here.
The online presence of the SDWSN controller can be found in:
- GitHub repository: https://github.com/fdojurado/SDWSN-controller
- Documentation: https://github.com/fdojurado/SDWSN-controller/wiki
- Twitter: https://twitter.com/fdojurado
- Python>= 3.10
- stable_baselines3
- pymongo
- plac
- pandas
- python-daemon
- networkx
- docker
Before running the examples run the following command in the cooja folder of the Contiki-NG-SDWSN repository.
ant run
Docker for Mac can be installed following the instructions in here.
If you want to run the controller in your computer environment but Cooja running in Docker, you need to open the serial port in the docker file, you can do this by adding -p 60001:60001 \
in your contiker alias. You also need to set the path of the SDWSN controller.
Put the following lines into ~/.profile
or similar below the CNG_PATH
and CTRL_PATH
definition.
export CTRL_PATH=<absolute-path-to-your-sdwsn-controller>
export CNG_PATH=<absolute-path-to-your-contiki-ng>
alias contiker="docker run --privileged \
--mount type=bind,source=$CNG_PATH,destination=/home/user/contiki-ng \
--mount type=bind,source=$CTRL_PATH,destination=/home/user/sdwsn-controller \
--sysctl net.ipv6.conf.all.disable_ipv6=0 \
-e DISPLAY=docker.for.mac.host.internal:0 \
-p 60001:60001 \
-ti contiker/contiki-ng"
If you run into trouble opening X11 display in macOS; this has worked for me
- In the repository folder run
python setup.py build
python setup.py install
This is used when you are currently making changes in your code, so they update immediately in the package.
- Simply run
python setup.py develop