mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
e3eda9a315
Introduces a Makefile that can be included into one's application Makefile in order to remotely control experiments on the IoT-LAB testbed. It requires that cli-tools (https://github.com/iot-lab/cli-tools) are installed. |
||
---|---|---|
.. | ||
Makefile.iot-lab | ||
README.iotlab |
# RIOT integration into IoT-LAB Check the Wiki to see how to build and run RIOT on FIT IoT-LAB: https://github.com/iot-lab/iot-lab/wiki/Riot-support ## Control IoT-LAB via Make ### Requirements This feature requires to have a valid account for the FIT IoT-LAB (registration there is open for everyone) and the [iot-lab/cli-tools](https://github.com/iot-lab/cli-tools) to be installed. ### Description The folder `dist/testbed-support/` contains a `Makefile.iotlab` that defines some targets to control RIOT experiments on IoT-LAB using the GNU Make build system. In order to use this, one has to include this Makefile at the end of the application's Makefile, like this: ``` include $(RIOTBASE)/dist/testbed-support/Makefile.iot-lab ``` ### Variables This Makefile introduces some additional variables (default values in brackets): * IOTLAB_NODES (5) * IOTLAB_DURATION (30 minutes) * IOTLAB_SITE (grenoble.iot-lab.info) * IOTLAB_TYPE (m3:at86rf231) * IOTLAB_AUTH ($HOME/.iotlabrc) * IOTLAB_USER (taken from $IOTLAB_AUTH) * IOTLAB_EXP_ID (taken from first experiment in running state) ### Targets It defines the following targets: * iotlab-exp * iotlab-flash * iotlab-reset * iotlab-term **Please note:** All targets that require an already running experiment will use the first experiment of the user that has already entered state "Running" if `IOTLAB_EXP_ID` is not set. #### iotlab-exp This schedules a new experiment on the FIT IoT-LAB and waits until it enters "Running" state. It will request `IOTLAB_NODES` nodes of type `IOTLAB_TYPE` for `IOTLAB_DURATION` minutes at site `IOTLAB_SITE`. It will also flash the binary of the current application to all registered nodes. The name of the experiment is set to "riot_makefile_experiment" #### iotlab-flash This target updates the application on all registered nodes of the given experiment to the current version of the application. #### iotlab-reset This target resets all registered nodes of the given experiment. #### iotlab-term Uses ssh to login the user on the IoT-LAB server of the specified site and start the `serial_aggregator` to communication with all registered nodes.