Skip to content

KEPServerEX to EMQX Neuron Migration Guide

Overview

  • Migration goal: Convert acquisition configuration from KEPServerEX (V6.0 and above) into a configuration that EMQX Neuron can import.

  • Conversion method: Use the online configuration migration tool provided on the EMQ website.

Supported protocols for conversion

KEPServerEX protocolSupportedNotes
Modbus TCP/IP EthernetYesBCD and arrays not supported
Modbus RTU SerialYesBCD and arrays not supported
Modbus ASCII SerialYesBCD and arrays not supported
OPCUA ClientYesCertificates cannot be exported
Mitsubishi EthernetYesBCD and arrays not supported
Allen-Bradley ControlLogix EthernetYesOnly ControlLoginc 5500 devices supported. BCD and arrays not supported
Allen-Bradley DF1YesBCD and arrays not supported
Siemens TCP/IP EthernetYesBCD and arrays not supported
Omron FINS EthernetYesBCD and arrays not supported
BACnet/IPYesCurrently only analog, binary, and multi-state objects are supported
CODESYSYesOnly V3 protocol; single array element reads supported; whole-array reads not supported

TIP

Protocols not listed are not supported for conversion for now.

How to export configuration from KEPServerEX

Follow these steps to export configuration in KEPServerEX:

  • In the File menu, click Save As;

  • Choose not to encrypt;

  • Select JSON as the save format.

Official conversion tool

Upload and convert

Open the official migration tool page.

Set the source to KEPServerEX.

Upload the export file obtained in How to export configuration from KEPServerEX.

Wait for the server to finish conversion and review the summary (device count, tag success/failure statistics, etc.).

Click Download EMQX Neuron configuration JSON to download the converted configuration file.

Conversion failure scenarios

When you download the EMQX Neuron configuration JSON, devices and tags that were not converted successfully (e.g. unsupported drivers) are automatically excluded; the file only contains successfully converted devices and their tags.

After expanding a device, you can see the detailed reasons for conversion failures:

Tag nameTypeAddressStatusFailure reason
outputuint64uint64H:0OK-
inputstringstringI:0FailedString length exceeded

Import and verify on the EMQX Neuron side

  • Ensure EMQX Neuron and KEPServerEX are on the same network so that EMQX Neuron can reach the devices that KEPServerEX was collecting from.

  • Log in to the EMQX Neuron Dashboard.

  • On the South Devices page under the data acquisition module, click Import.

  • Check the connection status of the imported drivers and ensure connections succeed.

  • On the Data Monitoring page, verify that acquisition data looks normal.

Detailed description of conversion protocols

Data model mapping

KEPServerEX fieldNeuron fieldDescription
common.ALLTYPES_NAMEnameDevice node name
servermain.MULTIPLE_TYPES_DEVICE_DRIVER:"Modbus TCP/IP Ethernet"plugin: "Modbus TCP"Plugin name
servermain.DEVICE_ID_STRINGparams.host, slave idIP and station number <192.168.10.111>.1, needs to be parsed out
modbus_ethernet.DEVICE_ETHERNET_PORT_NUMBERparams.portPort number
modbus_ethernet.DEVICE_ZERO_BASED_ADDRESSINGparams.address_baseStart address

true->0

false->1
servermain.DEVICE_CONNECTION_TIMEOUT_SECONDSparams.timeoutSeconds->milliseconds
servermain.DEVICE_RETRY_ATTEMPTSparams.max_retriesMaximum retry count
servermain.DEVICE_INTER_REQUEST_DELAY_MILLISECONDSparams.intervalInterval between command sends
modbus_ethernet.DEVICE_FIRST_WORD_LOWparams.endianessByte order for 4-byte data

true->ABCD

false->CDAB
modbus_ethernet.DEVICE_FIRST_DWORD_LOWparams.endianess_64true->12 34 56 78

false->87 65 43 21
common.ALLTYPES_NAMEtag nameTag name
servermain.TAG_ADDRESStag addressTag address
servermain.TAG_DATA_TYPEtag typeTag type
servermain.TAG_READ_WRITE_ACCESStag r/wTag read/write attributes false->r

true->rw

Register area mapping

KEPServerEXNeuronR/WDescription
00Read-onlyCoil
11R/WDiscrete Input
33Read-onlyInput Register
44R/WHold Register

Data type mapping

KEPServerEXNeuronDescription
112boolean
54uint16
43int16
76uint32
65int32
89float
910double
013string

TIP

Neuron strings support a maximum length of 128; KEPServerEX supports 240. Neuron does not support arrays; KEPServerEX does.

Grouping strategy

EMQX Neuron supports multiple acquisition groups under a single driver; each group can have its own acquisition interval. Tags under a group cannot have individual acquisition intervals, and every tag must belong to a group.

KEPServerEX supports grouped and ungrouped tags, and nested sub-groups under a group (multi-level hierarchy).

KEPServerEX → EMQX Neuron conversion rules:

  • Ungrouped tags: placed in the Global acquisition group.

  • Grouped tags: placed in a groupname-subgroupname-… acquisition group (group names concatenated top-down with hyphens -).

  • In KEPServerEX, each tag can have its own acquisition interval. During conversion, for each acquisition group the minimum interval among all tags in that group is used as the group’s interval in EMQX Neuron; if no valid value can be parsed from the configuration, the conversion tool’s internal default is used.

Special notes on supported conversion protocols

Protocol details

1) Protocol name: Modbus TCP

Neuron Modbus TCP address format: {slave_id}!{area_code}{address}|[.bit|.len]

  • Ordinary numeric types: 1!40000 (slave_id=1, Hold Register, address=0)

  • String type: 1!40000.55H (55-byte string at address 0)

  • Register bit type: 1!40000.0 (Hold Register address=0, bit 0)

KEPServerEX Modbus TCP address pattern: [H|]|{area_code}{address}|[.bit|.len]| [size]; KEPServerEX supports decimal and hexadecimal addressing.

KEPServerEX → Neuron conversion steps:

  • Parse slave ID

  • Determine addressing radix

  • Obtain register area

  • Convert address value according to radix

  • Convert type value

  • Convert read/write attributes

2) Protocol name: OPC UA

  • Polling and subscription modes are supported

  • KEPServerEX does not support exporting certificates. If certificates are configured, conversion to Neuron uses auto-generated certificates, which the user should update afterward.

3) Protocol name: Mitsubishi Ethernet

  • The tool maps different Mitsubishi Ethernet device models in KEPServerEX to three different Neuron drivers respectively.