Skip to content

Overview of Fanuc Focas protocol for MindConnect Software Agent


This protocol is supported for Windows based application only.

The following image shows the data source input window for the Fanuc Focas protocol:


The following device types are supported:

  • FS31i-A
  • FS35i-B
  • FS0i-D
  • FS32i-B
  • PMi-A
  • FS30i-B
  • FS0i-F Plus iHMI
  • FS0i-F
  • FS0i-F Plus
  • FS30i-B 32AX
  • FS30i-B 48AX
  • FS30i-B iHM
  • FS30i-B Plus
  • FS31i-B Plus
  • FS31i-B
  • FS31i-B5 Plus
  • FS31i-B5
  • FS31i-LB
  • FS31i-PB
  • FS31i-WB
  • FS32i-B Plus

In order to connect a Fanuc Focas device, you need to select the Fanuc Focas protocol and enter the following data source parameter:

Parameter Description
IP Address The IP address (and optional port – separated by ‘:’ ) of the device must be filled in Datasource.

Fanuc Focas data point parameter

In order to collect the data of the Fanuc Focas device, click "Add Datapoint" to add new datapoint.

The following picture shows the data point parameter window:


Follow the simple rules to fill the parameters for the Fanuc Focas:

  1. Choose a predefined component for the Datapoint Address.
  2. For every “*” or “?” in the listed item an extra field is displayed, which must be filled as per above example screenshot.
  3. The field “Datapoint Address” is the final address string and displayed read only. It is the result of selected address with combo boxes and user defined parts.
  4. The fields “Type” and “Type Transformation” are limited to the possible types, depending on the selection of the address component.

The following table shows the parameter of the all components, including possible datatype, explanation and example:

Address Data type Comment
Example: position. *(0...99)
- int32,
- default supported
The function can read the position of a defined axis or of all axis.
Note: When reading ALL_AXIS the output structure is model dependent.
programblock.<number> number values:
1…Program name,
2…Block number
- string(1),
- int32(2),
- default supported
The function reads always both items.
alarmstring - string,
- default supported
These two alarm functions are mapped to a string.
Example: pmcdata. *(0...99; 0...65535)
Depends on transformation:
- int8, int16,
With this function you can read different type of data from PMC address range.
The "adrtype" specifies different address ranges. For the various models of CNC machines different ranges of different size exist. It is the responsibility of the user to configure the address in the correct range. The driver will not check range depending on the model.
modal.<blocknumber>. <number>. number values:
1…data, *(0...3),
2…flag1, *(0...3),
3…flag2, *(0...3)
- int32(1),
- uint8(2),
- uint8(3),
- default supported
This function call is rather complex and comprises a lot or variation. The Fanuc Focas driver only supports the type = 108 variant for current active T code. The resulting data comprises a "4-byte"data field and two "1-byte" flag fields.
The interpretation of these fields is machine model dependent, but this must be done by the application.
statinfo.<number> number values:
*(0...99) see comment for value meaning.

- int16,
- default supported
All elements are read with one function call. There are several more but according to requirements they are not needed.
1. hdck: Status of manual handle retrace;
2. tmmode: T/M mode selection;
3. aut: AUTO/MANUAL mode selection;
4. run: Status of automatic operation;
5. motion: Status of axis movement,dwell;
6. mstb: Status of M,S,T,B function;
7. emergency: Status of emergency;
8. alarm: Status of alarm;
9. edit: Status of program editing
Example: param. *(0...32767;0...99 )
Depends on transformation:
- boolean, - int8,
- int16,
- int32
The parameters are dependent on the axis or axis independent (axisnumber 0).
For axis specific parameter, it is possible to read the parameter for all axis or only for a specific axis.
diag.<diagnumber>.<axisnumber>, *(0...32767;0...99 ) Depends on transformation:
- boolean,
- int8,
- int16,
- int32,
- float
There are diagnosis values with the axis dependent, and axis independent (axisnumber 0). For axis specific diagnosis values, it is possible to read the values for all axis or only for a specific axis.
feedrate - int32,
- default supported
One function for one value.
spindlespeed - int32,
- default supported
One function for one value.
sysinfo - string Maximum length of read value is 20 characters. format:<cnc_type><series><version><mt_type>


You need to ensure the parameters entered are valid for Fanuc Focas protocol.

Last update: January 22, 2024