Main Content

Rocker Switch

Toggle parameter between two values

  • Library:
  • Simulink / Dashboard

  • Rocker Switch block


The Rocker Switch block toggles the value of the connected block parameter between two values during simulation. For example, you can connect the Rocker Switch block to a Switch block in your model and change its state during simulation. Use the Rocker Switch block with other Dashboard blocks to create an interactive dashboard for your model.

Double-clicking the Rocker Switch block does not open its dialog box during simulation and when the block is selected. To edit the block's parameters, you can use the Property Inspector, or you can right-click the block and select Block Parameters from the context menu.

Connect Dashboard Blocks

Dashboard blocks do not use ports to connect to model elements. To connect dashboard blocks to variables and block parameters, use connect mode. Connect mode facilitates the process of connecting dashboard blocks in your model, especially when you want to connect multiple blocks at once. To connect a single dashboard block, you can also use the Connection table in the block dialog box.


You can modify dashboard block connections in your model during normal and accelerator mode simulations.


Dashboard blocks cannot connect to variables until you update the model diagram. To connect dashboard blocks to variables or modify variable values between opening your model and running a simulation, update the model diagram using Ctrl+D.

To enter connect mode, select the block. Then on the block tab, click Connect. In connect mode, when you select one or more signals or blocks, a list of parameters and variables available for connection appears. Select a variable or parameter from the list to connect to the selected dashboard block. To connect another dashboard block, pause on another dashboard block and click the Connect button above it. Then, make a selection of signals and blocks in your model and choose a model element to connect.

When you finish connecting the dashboard blocks in your model, on the block tab, click Done Connecting.


You can hide the message shown on unconnected blocks using the set_param function with the ShowInitialText block parameter. The message also disappears when you connect the block.

Parameter Logging

Tunable parameters connected to dashboard blocks are logged to the Simulation Data Inspector, where you can view the parameter values along with logged signal data. You can access logged parameter data in the MATLAB® workspace by exporting the parameter data from the Simulation Data Inspector by using the UI or the Simulink.sdi.exportRun function. For more information about exporting data using the Simulation Data Inspector UI, see Export Data from the Simulation Data Inspector. The parameter data is stored in a Simulink.SimulationData.Parameter object, accessible as an element in the exported Simulink.SimulationData.Dataset.


  • Except for the Dashboard Scope block and the Display block, dashboard blocks can only connect to real scalar signals.

  • The toolstrip does not support blocks that are inside a panel.

  • You cannot use the Connection table in the block dialog to connect a dashboard block to a block that is commented out. When you connect a dashboard block to a commented block using connect mode, the dashboard block does not display the connected value until the you uncomment the block.

  • Dashboard blocks cannot connect to model elements inside referenced models.

  • When you simulate a model hierarchy, dashboard blocks inside referenced models do not update.

  • Dashboard blocks do not support rapid accelerator simulation.

  • When you specify a block parameter value by indexing a variable array, the parameter does not appear in the Connection table. For example, a block parameter defined as engine(1) using the variable engine does not appear in the table.

    To access the parameter in the Connection table, assign the indexed value to a scalar variable, such as engine_1. Then, use the scalar variable to define the block parameter.

  • When you connect a dashboard block to a variable or parameter during simulation, the data for that variable or parameter is not logged to the Simulation Data Inspector. To log variable and parameter data to the Simulation Data Inspector, connect the dashboard block to the variable or parameter prior to simulation.

  • When you simulate a model in external mode with the Default parameter behavior set to Inlined, dashboard blocks can appear to change parameter and variable values. However, the change does not propagate to the simulation. For example, Gain blocks display changes made to the Gain parameter using the dashboard blocks, but the Gain value used in the simulation does not change.


expand all

Select the variable or block parameter to control using the Connection table. To connect the block to a signal:

  1. Make a selection in the model that includes one or more blocks.

  2. Select the variable or parameter you want to connect.

  3. Click Apply.

To facilitate understanding and debugging your model, you can connect Dashboard blocks to variables and parameters in your model during simulation.


To see workspace variables in the connection table, update the model diagram using Ctrl+D.

Programmatic Use

To programmatically connect a dashboard block to a tunable parameter or a variable, use a Simulink.HMI.ParamSourceInfo object. The Simulink.HMI.ParamSourceInfo object contains four properties. Some of the properties apply to connecting dashboard blocks to parameters, and some apply to connecting dashboard blocks to variables. Not all fields have a value for a connection because a given dashboard block connects to either a parameter or a variable.

Block Parameter: Binding
Type: Simulink.HMI.ParamSourceInfo
Default: []

Pairs of values to assign to the connected variable or parameter and text to display on the block. Switches have two states — Top and Bottom — one corresponding to each switch position. Each state contains a Value and a Label.

  • Value — Value to assign to the connected variable or parameter when the switch is in the corresponding position.

  • Label — Text to display on the block for the corresponding position.

This table describes the default configuration for the block.

PositionState ValueState Label

Programmatic Use

To configure the States for the block programmatically, specify the value of the States parameter as a structure array containing two elements with fields:

  • Value — Scalar double value for the state.

  • Label — String or character array to use as the label for the switch position.

topState.Value = 0;
topState.Label = 'Off';
bottomState.Value = 1;
bottomState.Label = 'On';
switchStates = [topState bottomState];
Block Parameter: States
Type: two element array of structures

Position of the block label. When the block is connected to an element in the model, the label is the name of the connected element.

Programmatic Use

Block Parameter: LabelPosition
Type: character vector
Values: 'Top' | 'Bottom' | 'Hide'
Default: 'Top'

Block Characteristics

Data Types

double | half | integer | single

Direct Feedthrough


Multidimensional Signals


Variable-Size Signals


Zero-Crossing Detection


Extended Capabilities

Introduced in R2015a