% avrora -help sensor-network
Avrora [Beta 1.6.0] - (c) 2003-2005 UCLA Compilers Group
Usage: avrora [-action=action] [options]
Usage: avrora -help [category]
SENSOR NETWORK SIMULATION OVERVIEW
The sensor network simulation is used for simulating multiple sensor nodes
simultaneously. These nodes can communicate with each other wirelessly to
exchange packets that include sensor data and routing information for a
multi-hop network. Currently, only the "mica2" platform sensor nodes are
This simulation type supports simulating multiple sensor network nodes
that communicate with each other over radios. There are options to specify how
many of each type of sensor node to instantiate, as well as the program to be
loaded onto each node, and an optional topology file that describes the
physical layout of the sensor network. Also, each node's sensors can be
supplied with random or replay sensor data through the "sensor-data" option.
-clockspeed: long = 8000000
This option specifies the clockspeed of the microcontroller
when the platform is not specified. The speed is given in
cycles per second, i.e. hertz.
-external-clockspeed: long = 0
This option specifies the clockspeed of the external clock
supplied to the microcontroller when the platform is not
specified. The speed is given in cycles per second, i.e.
hertz. When this option is set to zero, the external clock is
the same speed as the main clock.
-interrupt-schedule: string =
This option, when specified, contains the name of a file that
contains an interrupt schedule that describes when to post
interrupts (especially external interrupts) to the program.
This is useful for testing programs under different interrupt
loads. For multi-node simulations, the interrupt schedule is
only applied to node 0.
-mcu: string = atmega128
This option selects the microcontroller from a library of
supported microcontroller models.
-monitors: list = (null)
This option specifies a list of monitors to be attached to the
program. Monitors collect information about the execution of
the program while it is running such as profiling data or
-nodecount: list = 1
This option is used to specify the number of nodes to be
instantiated. The format is a list of integers, where each
integer specifies the number of nodes to instantiate with each
program supplied on the command line. For example, when set to
"1,2" one node will be created with the first program loaded
onto it, and two nodes created with the second program loaded
-platform: string = mica2
This option selects the platform on which the microcontroller
is built, including the external devices such as LEDs and
radio. If the platform option is not set, the default platform
is the microcontroller specified in the "mcu" option, with no
-random-seed: long = 0
This option is used to seed a pseudo-random number generator
used in the simulation. If this option is set to non-zero,
then its value is used as the seed for reproducible simulation
results. If this option is not set, those parts of simulation
that rely on random numbers will have seeds chosen based on
system parameters that vary from run to run.
-random-start: interval = [0,0]
This option inserts a random delay before starting each node
in order to prevent artificial cycle-level synchronization.
The starting delay is pseudo-randomly chosen with uniform
distribution over the specified interval, which is measured in
clock cycles. If the "random-seed" option is set to a non-zero
value, then its value is used as the seed to the pseudo-random
-seconds: double = 0.0
This option is used to terminate the simulation after the
specified number of simulated seconds have passed.
-sensor-data: list = (null)
This option accepts a list describing the input data for each
sensor node. The format for each entry in this list is
$sensor:$id:$data, where $sensor is the name of the sensor
device such as "light", $id is the integer ID of the node, and
$data is the name of a file or the special '.' character,
indicating random data. A sensor data input file consists of
an initial sensor reading which is interpreted as a 10-bit ADC
result, then a list of time value pairs separated by
whitespace; the sensor will continue returning the current
value until the next (relative) time in seconds, and then the
sensor will change to the new value.
-stagger-start: long = 0
This option causes the simulator to insert a progressively
longer delay before starting each node in order to avoid
artificial cycle-level synchronization between nodes. The
starting times are staggered by the specified number of clock
cycles. For example, if this option is given the value X, then
node 0 will start at time 0, node 1 at time 1*X, node 2 at
time 2*X, etc.
-topology: string =
This option can be used to specify the name of a file that
contains information about the topology of the network. When
this option is specified. the free space radio model will be
used to model radio propagation.
-update-node-id: boolean = true
When this option is set, the sensor network simulator will
attempt to update the node identifiers stored in the flash
memory of the program. For TinyOS programs, this identifier is
labelled "TOS_LOCAL_ADDRESS". For SOS programs, this
identifier is called "node_address". When loading a program
onto a node, the simulator will search for these labels, and
if found, will update the word in flash with the node's ID
For more information, see the online documentation at
To report bugs or seek help, consult the Avrora mailing list:
Please include the version number [Beta 1.6.0] when posting to the list.