Skip to main content
Version: 5.0.x {stable}

emGUI basics I : Hands-on

this tutorial walks through some of the very first things-to-do with the emGUI.

info
  • Let's presume that a successful comlink with the device was already established (the device is connected, connection options were set, the driver was installed, etc.)
  • Let's presume that we are manipulating with just a single device.

Search for nodes

Usually, the first thing to do after starting the emGUI, is to hit the Search button. This will initiate the search operation (discovery, login, tree and value fetch) for all the connected devices.

emgui

notice
  • Accessing some items may be restricted. Depending on your firmware, not all items will be always visible/writable.
  • The comlink is designed to be plug-and-play. If the session has been severed (e.g. you unplugged and plugged back the USB cable), the device icon and the Target status will change to indicate this. You may still operate the emGUI but the context might have diverged. Attempt to regain the session through the device's context menu, without losing the context.

emgui

info
  • If the connection options have been set with a broadcast device address, the emGUI attempts to discover multiple devices and allows to work with them simultaneously.
  • The Search procedure may be configured in the options menu.

Viewing the value of a state variable

tip

The simplest way: you see the value in the contents column. By pressing F1 on a selected variable, the value will be refreshed. A state variable can be read-only.

By double-clicking a state variable, this dialog will pop up. Another way of invocation is through the context menu. You may dock the dialog inside the main emGUI window.

emgui

For a one-time refresh, click the refresh button. If you wish to refresh automatically, check the autorefresh option. You may also want to set a refresh period in milliseconds.

For bulk value pull, you can issue the value get command (keyboard F1). Either on the entire device or through a folder's context menu (values will be refreshed recursively):

emgui

For automatic bulk value pull, you can open the relevant folder's (or entire device's) dialog through its context menu:

emgui

and check autopull option. You may also want to set a refresh period in milliseconds:

emgui

info

In all the variable viewing dialogs, the bad result of the communication with the device regarding value exchange is indicated by a background color of the value's string:

  • orange - an arbitration miss. The value exchange has not been successful.
  • red - a critical error (no response from device, etc).

Viewing the values of other variable types

tip

All variables are also accessible through YOS/Shell. Moreover, real-time sampling of any variable(s) can be set up with the plot/scope mechanism.

The general rules for viewing other variables are similar to those described above, with a few remarks:

  • parameters are read-write accessible and may have extended metadata (such as minimum/maximum/default/presets,... ) and can be saved/loaded to/from an internal non-volatile memory.

  • permanent variables are read-only (as well as state variables), but most importantly, their values are preserved after reboot.

    emgui

  • dynamic variables are read-write accessible and may be added/removed during run-time with YOS scripting or when executing asynchronous tasks (motor identification, etc). For a running script with function calls, you can also view the script's stack memory. If you wish to refresh the list of dynamic variables, use fetch subtree command:

    emgui