WARPLab 7
- Downloads
Getting Started
- Sample Buffer Sizes
- Automatic Gain Control
- Examples
- Extending WARPLab
- Debugging Errors
- Porting Code
- Benchmarks
WARPLab 7 Framework
WARPLab 7 Reference Design
Reference Design Modules
- Node
Interface Group
Baseband
Transport
Trigger Manager
Hardware
Trigger Manager Commands Technical Reference
Trigger Manager commands are selected as string inputs to the wl_triggerManagerCmd method in wl_node.m. These strings are each individual cases of the switch statement in procCmd method of wl_trigger_manager.m.
Syntax
MATLAB allows two valid forms of syntax for calling methods
- Let N be a scalar or vector of wl_node objects
- Let command_string be a string containing a particular command
- Let arg be an argument for that command (optional)
Syntax 1: wl_triggerManagerCmd(N, command_string, arg1, arg2, ..., argN)
Syntax 2: N.wl_triggerManagerCmd(command_string, arg1, arg2, ..., argN)
These two different forms of syntax are identical and either may be used for issuing commands to WARP nodes.
Command List and Documentation
add_ethernet_trigger
Associates node to a trigger input
Arguments: (wl_trigger_manager TRIGGER)
Returns: none
delete_ethernet_trigger
Deassociates node to a trigger input
Arguments: (wl_trigger_manager TRIGGER)
Returns: none
clear_ethernet_triggers
Clears all trigger associations in the node
Arguments: none
Returns: none
get_ethernet_trigger
Reads current trigger association from node
Arguments: node
Returns: (uint32 TRIGGER_ASSOCIATION)
TRIGGER_ASSOCIATION: bit-wise AND of associated
trigger IDs
output_config_input_selection
Selects which trigger inputs drive the selected outputs
Arguments: (uint32 OUTPUTS), (uint32 OR_INPUTS), ![optional] (uint32 AND_INPUTS)
Returns: none
OUTPUTS: vector of output trigger IDs, provided by
wl_getTriggerOutputIDs
OR_INPUTS: vector of input trigger IDs, provided by
wl_getTriggerInputIDs. Any triggers in
this vector that assert will cause the
output trigger to assert.
AND_INPUTS: vector of input trigger IDs, provided by
wl_getTriggerInputIDs. Only if all triggers
in this vector assert will the output
trigger assert.
Usage note: This command replaces the current input
selection on the board. Previous state is not saved.
output_config_delay
Configures specified output triggers to be have an
additional delay relative to their inputs
Arguments: (uint32 OUTPUTS), (double DELAY_NS)
Returns: none
OUTPUTS: vector of output trigger IDs, provided by
wl_getTriggerOutputIDs
DELAY_NS: scalar value of the intended delay,
specified in nanoseconds (1e-9 seconds)
output_config_hold_mode
Configures whether specified output triggers should
hold their outputs once triggered
Arguments: (uint32 OUTPUTS), (string MODE)
Returns: none
OUTPUTS: vector of output trigger IDs, provided by
wl_getTriggerOutputIDs
MODE: 'enable' or 'disable'
output_state_read
Reads current state of output triggers. Note: this
command is intended to be used on output triggers
that have enabled their hold mode.
Arguments: (uint32 OUTPUTS)
Returns: (bool STATES)
OUTPUTS: vector of output trigger IDs, provided by
wl_getTriggerOutputIDs
STATES: vector of (true, false) trigger states
corresponding to state of OUTPUTS vector
output_state_clear
Clears current state of output triggers.
Arguments: (uint32 OUTPUTS)
Returns: none
OUTPUTS: vector of output trigger IDs, provided by
wl_getTriggerOutputIDs
input_config_enable_selection
Configures specified input triggers to be enabled
as inputs that feed the trigger manager core.
Note: This command disables all inputs before
enabling the selected inputs -- no previous state is
stored in the node.
Arguments: (uint32 INPUTS)
Returns: none
INPUTS: vector of output trigger IDs, provided by
wl_getTriggerInputIDs
input_config_debounce_mode
Configures specified input triggers to enable or
disable debounce circuit. Note: debounce circuit adds
delay of 4 cycles, where each cycle is a duration
specified in the delayStep_ns property of the
wl_manager_proc.m class.
Arguments: (uint32 INPUTS), (string MODE)
Returns: none
INPUTS: vector of output trigger IDs, provided by
wl_getTriggerInputIDs
MODE: 'enable' or 'disable'
energy_config_busy_threshold
Configures the threshold above which RSSI is
considered as a "busy" medium.
Arguments: (uint32 THRESH)
Returns: none
THRESH: busy threshold. For the MAX2829-based
interfaces, WARP uses a 10-bit ADC for
RSSI (range of [0,1023]).
Note: RSSI averaging in the core does NOT divide by
the number of samples that are summed together.
Averaging by N cycles means that the maximum possible
RSSI post-averaging is N*1023.
energy_config_average_length
Configures the number of samples over which RSSI is
averaged before it is compared to any threshold.
Arguments: (uint32 LENGTH)
Returns: none
LENGTH: Number of samples over which RSSI is
averaged.
Note: For all hardware versions, RSSI is sampled at
10 MHz. Each sample is, therefore, 100 ns.
energy_config_busy_minlength
Average RSSI samples must exceed the busy threshold
for a minimum number of samples before the trigger is
activated. This command sets this minimum value.
Arguments: (uint32 LENGTH)
Returns: none
LENGTH: Minimum number of samples that RSSI must
be busy before trigger is raised.
energy_config_interface_selection
Selects the interfaces from which energy detection
should base its decision
Arguments: (uint32 IFCSELECTION)
Returns: none
IFCSELECTION: One or more interfaces that the
energy detector system should
monitor
Note: IFCSELECTION is intended to be used with the
return values from the wl_getInterfaceIDs method.
test_trigger
Sends a test trigger
Arguments: none
Returns: none