Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
W
Wiki
  • Project overview
    • Project overview
    • Details
    • Activity
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • TEC
    • P
      Public
  • FlockLab
  • Wiki
  • Wiki
    • Man
  • SetupGuide

Last edited by Reto Da Forno Nov 09, 2020
Page history

SetupGuide

Setup Guide


This guide explains the necessary steps to setup a new FlockLab testbed.
A FlockLab testbed consists of a server part and an observer part. The observers interact with the devices under test (targets) and locally store the test data. The server provides a user interface and is responsible for starting and stopping tests as well as fetching the test data from the observers.


Server

The FlockLab server must provide the following three components:

  • test management
  • database
  • webpage

These components can either be on the same machine or distributed on separate servers.

Test management

  • Copy the files to your test management server.
  • Adjust the config file and copy it to the server.
  • Adjust the path to the config file in flocklab.py.
  • Install crontab to periodically call the scheduling and cleanup scripts.
  • Install all required python packages.
  • Make sure the user that runs the test management scripts has SSH access to all your FlockLab observers via public key authentication.

Database

  • Create a MySQL-compatible database flocklab on your DB server.
  • Use the provided template to create all necessary tables.
  • Create the user flocklab_testmng and grant it access to the database flocklab.
  • Start to populate the database tables: tbl_serv_observer, tbl_serv_architectures, tbl_serv_platforms, tbl_serv_tg_adapt_types and tbl_serv_tg_adapt_list.
  • Make sure the database access credentials in flocklab_config.ini on the test management server are correct.

Webpage

  • Copy the webpage files to your webserver.
  • Adjust the path to the flocklab_config.ini file in include/config.php.
  • Adjust the XML validation template xml/flocklab.xsd.
  • Adjust the floor plan (pics/flocklab_floormap.png) and node positions (scripts/flocklab-observer-positions.js).

Note: you can use the update server script to copy the files to your test management and webserver (don't forget to adjust the HOST variable).


Observer

Hardware setup and calibration

A guide on how to prepare the observer hardware in available on request.

BeagleBone Green setup

  • Download the latest Debian flasher image (console version is sufficient) from eLinux (monthly builds) or beagleboard.org (releases). Use e.g. Balena Etcher to write the image to a microSD card.
  • Insert the microSD card and press and hold the user button while powering up the BeagleBone until all 4 LEDs are on. The Debian image will then be flashed onto the eMMC (takes ~10 minutes). After completion, the BeagleBone will shut down (all LEDs off).
  • Replace the flasher SD card with an empty one (formatted to ext4).
  • Make sure the network connectivity to the BeagleBone works.
  • Clone the repository to your computer and run the basic setup script: cd observer/debian && ./setup_system.sh [beaglebone_address]
  • Adjust the parameters in the following scripts:
    • HOSTNAME in the ping watchdog script
    • HOSTPREFIX and OBSIDS in the observer update script
  • Run the main setup script to install all required packages, tools and scripts on the BeagleBone: ./setup_observer.sh [beaglebone_address]
  • Pair the BeagleBone with a FlockLab 2 cape and install the correct calibration files.
Clone repository
  • Man
    • CoojaPlugin
    • Description
    • Examples
    • FAQ
    • GpioAssignmentTargetAdapter
    • HowTo
    • QuickStart
    • Services
    • ServicesOld
    • SetupGuide
    • Targets
    • Tutorials
    • Tutorials
      • Tutorial1
      • Tutorial2
      • Tutorial3
View All Pages