Deploying from example
Edit me

1. Download & modify existing example

Download from source to current directory one of the cacao example loops:

cacao-loop-deploy -c <examplename>

Tip Run command cacao-loop-deploy with -h option to see list of examples.

The command will create a -conf directory holding configuration files:

  • cacaovars.bash defines the AO loop name, number, key parameters and list of processes to deploy
  • fpssetup.setval.conf has custom (non-default) settings for FPS entries
  • tasklist.txt is the list of deployment tasks to be performed.

The tasklist.txt usually doesn’t need to be edited.

You may also create the directory and populate it with the required files without downloading the example.

1.2. Editing the cacaovars.bash file

Edit file <examplename>-conf/cacaovars.bash as needed The loop number. loop name, DM index and DM simulation index can be changed from their default values by setting the corresponding environment variables. For example:

CACAO_LOOPNUMBER=7 cacao-loop-deploy -c examplename
CACAO_LOOPNUMBER=7 CACAO_DMINDEX="03" cacao-loop-deploy -c examplename

1.3. Editing the fpssetup.setval.conf file

The file has entries in the form:

setval mlat-LOOPNUMBER.NBiter 453

The LOOPNUMBER word will automatically be replaced by the loop number upon deployment, so keep it such.

This is where users can also configure deployment of processes on CPU sets and realtime priorities:

setval mlat-LOOPNUMBER.procinfo.RTprio 40
setval mlat-LOOPNUMBER.procinfo.cset aolRT0

1.3. Editing the tasklist.txt file

A minimum working tasklist.txt file is:

INITSETUP            Initial setup
TESTCONFIG           Test configuration
CACAOSETUP           Run cacao-setup

2. Deploy processes and tmux sessions

2.1. Run deployment (starts the conf processes):

Once the files in the -conf directory have been edited:

cacao-loop-deploy -r <examplename>

Warning Running this commands successive times won’t re-run the deployment steps. To force re-running the steps, remove the taskmanager log files prior to the cacao-loop-deploy command: rm .LOOPNAME.cacaotaskmanager-log/*

Info The copy and run steps can be done at once with: cacao-loop-deploy <examplename>

2.2. Getting ready …

Go to rootdir, from which user controls the loop:

cd LOOPNAME-rootdir

From this point on, all commands should be run from the root directory. To check we are in the correct directory, run cacao-check-cacaovars.

3. Start logging (optional)

Message logging is optional.

4. Select simulation or hardware mode

# Simulation mode
./scripts/aorun-setmode-sim
# Hardare mode, will connect to hardware
./scripts/aorun-setmode-hardw