Online Help for Item: sensor-network

% avrora -help sensor-network
Avrora [Beta 1.6.0] - (c) 2003-2005 UCLA Compilers Group

Usage: avrora [-action=action] [options] 
Usage: avrora -help [category]


    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
        timing information.
    -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
        onto them.
    -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
        external devices.
    -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
        number generator.
    -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.