- HOLE CIRCLE UTILITY
- FACING UTILITY
- NGCGUI
- USING A VFD
- SPINDLE PAUSE
- Z LEVEL COMPENSATION
- USING A MPG
- PROBING
- RUN FROM LINE
- STYLESHEETS
- ABOUT

# NGCGUI

NGCGUI provides a conversational interface with LinuxCNC. You can organize the subroutines in the order you need them to run and concatenate the subroutines into a single file for a complete part program. This version of NGCGUI only works when embedded into a qtvcp screen. For a standalone version, use the program that gets installed with LinuxCNC.

## Using NGCGUI

- Tabs are provided for each subroutine specified in the INI file.
- New subroutine pages can be added at any time.
- Each subroutine page provides entry boxes for all subroutine parameters.
- The entry boxes can have a default value and a label that are identified by special comments in the subroutine file.
- Subroutines can be concatenated to form a multiple step program. Tabs are read in order from left to right.
- The order of the subroutines can be adjusted by sliding the tabs to the desired order.
- Any single file GCode subroutine that conforms to ngcgui conventions can be used.
- Each subroutine can be specified to include a preamble and postamble helper file.

## INI File Requirements

Any subroutines that are to have tabs automatically created must be specified in the [DISPLAY] section of the INI file. For example:

    [DISPLAY]

    NGCGUI_PREAMBLE = mm_std.ngc

    NGCGUI_POSTAMBLE = post.ngc

    NGCGUI_SUBFILE = db25.ngc

    NGCGUI_SUBFILE = hole_circle.ngc

The PREAMBLE and POSTAMBLE files are optional.

The path to the subroutine files must be specified in the [RS274] section of the INI file. For example:

    [RS274]

    SUBROUTINE_PATH = ~/linuxcnc/nc_files/ngcgui_lib

The SUBROUTINE_PATH line can specify multiple directories, seperated by a colon. The directory that contains the subroutine files must be the first in the list.

## NGCGUI Options

There are a number of checkboxes on the UI panel that determine a specific behaviour of the ngcgui program.

### Expand Sub

When checked, calls to other subroutines are expanded and written to the main subroutine.

### Autosend

When checked, the finalized gcode will be sent to LinuxCNC after the FINALIZE GCODE button is pressed. If unchecked, the finalized gcode only exists as a temporary file in the /tmp directory of the filesystem. If the user subsequently wants to load it into LinuxCNC, he must get the filename from the status display and manually load it through the FILE page.

### Add M2

When checked, an M2 command is appended to the end of a finalized gcode file.

### Save Finalized GCODE to file

When checked, the user is prompted for a save filename. The finalized gcode is then saved to this file. If unchecked, the gcode file is only saved to a temporary file in the /tmp directory of the filesystem. This file is automatically deleted when LinuxCNC terminates.