Skip to main content

2000 Series Commands, Function Buttons, and Dashboard


The system has many packaged functions called commands. These commands can perform a variety of actions, such as turning on the spindle or zeroing an axis. All commands have an action associated with them. Some actions also have a feedback associated with them, such as the 'Spindle Forward' command where the feedback is whether the spindle is currently running forward or not.

Commands and User Commands can be assigned to function buttons on the control, in order to customize the experience.

User Commands

Additionally custom commands, called User Commands, can be configured in the 'Screen Configuration' dialog. This is accessible through the 'Screen Config' button on the Service/Maintenance tab.


To make a new User Command, press the 'Add' button. Each User Command should have a unique name. To edit a User Command, select its name from the list. A searchable list of actions for the command is available in the first box. This selects the general type of action to be done. The second box, labeled 'Options', is also part of the action and must be selected.

The 'Feedback Source' and 'Feedback Target' sections are optional. They are relevant if the User Command will be assigned to a function button. Some User Commands won't have a logical feedback source. A reasonable example is for a command that turns soft limits on and off: the feedback would be if soft limits is on or off. The feedback target offers a way to do a simple forwarding of the user command state if desired.


One option for user commands are User Scripts. These are lua functions that will be executed as the command, to get the feedback state, or to forward to the target. This is a way to create completely custom functionality. They should always be done in the UserGUIModule.UserStartUpScript function. The following is an example of how to create these lua function in the UserGUIModule.

function UserGUIModule.UserStartUpScript()
  local action_func = function()
          local state = w.GetSignalState(mc.OSIG_OUTPUT0)
          w.SetSignalState(mc.OSIG_OUTPUT0, not state)
  w.CreateUserCommandActionOption("Toggle Output #0", action_func)

  local feedback_func = function()
          return w.GetSignalState(mc.OSIG_OUTPUT0)
  w.CreateUserCommandFeedbackOption("Output #0", feedback_func)
  return true, true, w.FunctionCompleted()

Function Buttons

The 2000 series operator panels and wireless pendants have a number of function buttons on them, labelled F1, F2, etc. These buttons initially do nothing, but can have commands or user commands mapped to them. This is done through the MachMotion operator panel configuration.

Each function button on the operator panels and pendants can have a command mapped to their press action and release action. First select the function button to be configured, and then select which press and release functions are desired. Selecting the blank entry will clear the command from the button.

Upon saving and exiting configuration, these commands will be mapped to the function buttons.


Function buttons on the 2000 series operator panels have an LED light in the corner. This light will reflect the feedback state of the mapped command. If a command is mapped to the press and to the release function of the button, the LED will reflect the feedback of the press command.

On the screen, there are five function buttons underneath the axis DROs. Instructions on how to configure those buttons, as well as how to add more function buttons to the screen, are in the Dashboard section.


dashboard_config.pngThe 2000 series controls have multiple places to customize the interface to meet the users needs. The operator panel has function buttons that can be assigned operations, and there are two dashboards on the screen for the user to place widgets that they want to see. One dashboard is on the far right of the control and is available from all views. The other dashboard available to customize is on the service page.

Dashboards can be configured by right-clicking on them to access their menu. The user can choose how many and which widgets to show on the dashboard, as well as their layout. There is a wide variety of widgets to select from, and some widgets have additional options within them accessible through the 'Configure Widget' menu option.

One particular widget is the 'Function Buttons' widget. It is configurable in a similar way to the overall dashboard, but instead of selecting widgets, the user can select Commands to run on press and release. The user can also set the labels and colors of the button to suit them.


Aside from running Commands, function buttons can be configured to run an MDI command instead. Setting the MDI command to run, either press or release, is accessible through the right-click menu. Those menu options will only be available if the button does not have a Command set for it already.

Most controls have at least three dashboards on the screen, the first one is under the Axis Positions (Labeled '1' in the example below) referred to as the Axis Positions Dashboard, and the second on the right side of the screen referred to as the Side Bar Dashboard (Labeled '2' in the example below).  The third dashboard is on the Service page.


Axis Positions Dashboard

The Axis Position Dashboard is locked to only allow the Function Button widget with 5 configurable buttons. These buttons configurable in the same manner as the function button widget on the Side Bar Dashboard, through the right-click menu. 

Side Bar Dashboard

On the right side of the screen is a large Dashboard with lots of space to add Widgets that will improve productivity.  Configure the dashboard through the right-click menu.


Widgets are small components that can be added to the dashboards to show data like the last probe position or to add buttons for controlling a chip conveyor.  To see the list of available widgets right-click on the edge of a dashboard and select the drop down list.

Many widgets have additional options to configure the way they look or which variables are shown in the widget.  So see a list of options right-click inside the widget and select from the menu.

Widget Customization

Lets test and customize the Pound Variable widget to learn more about its features.  First right click on the Side Bar Dashboard and select the Pound 

Pound Variables 

In this example we are going to add variables to the Pound Variables widget. Right click with your mouse inside the Pound Variables widget and select Configure Widget.


Now from this window we can enter the range of variables we want to view and the press Add.  I entered 500-510.


Now we have the widget showing the values from the variables. 


Next lets rename one of the variables with a name to make it easier to remember. Right-click on the row labeled #501 and select Set Description: #501.


Enter the name Part Width and press OK.


Now we have a widget customized with a description for variable #501.