This article includes the following sections:
Reminder: equipment discontinued and no longer supported.
1. How to add a DEXGate to the platform
In order to start receiving data to your account from your DEXGate follow these steps:
1. In the upper right corner of your main page select "Settings ":
2. Once in the Settings page select Gateways:
3. Select "Register a new gateway":
4. Select DEXGate and click "Next" :
5. Choose a name for your DEXGate device and type the Serial Number:
2. DEXGate Quick Start Guide
In order to be able to follow this guide, you'll need
- DEXGate
- Power supply
- A computer
- Ethernet network cable
- Internet connection configuration
This quick guide includes the following subsections:
2.1 Setting up the network
There are three options to connect the DEXGate to the Internet:
- Ethernet Cable
- Power the DEXGate up
- Connect an ethernet cable to the eth0 port of the DEXGate and to your local network
- Set up your computer to automatically get an IP from DHCP
- Connect an ethernet cable to your computer and the eth1 port of the DEXGate
- Use your internet browser to access http://172.16.0.1
- Enter the username and password (the defaults are admin/admin)
- Go to Wired Networks and choose the network configuration for your local network (contact your network administrator if you don't know how to do this)
- Wireless
- Power the DEXGate up
- Set up your computer to automatically get an IP from DHCP
- Connect an ethernet cable to your computer and the eth1 port of the DEXGate
- Use your internet browser to access http://172.16.0.1
- Enter the username and password (the defaults are admin/admin)
- Go to Wireless Networks and choose the network configuration for your wireless network (contact your network administrator if you don't know how to do this)
- 3G/GPRS
- Insert the SIM card (preferably without PIN) in the SIM holder in the center of the DEXGate board
- Power the DEXGate up
- Set up your computer to automatically get an IP from DHCP
- Connect an ethernet cable to your computer and the eth1 port of the DEXGate
- Use your internet browser to access http://172.16.0.1
- Enter the username and password (the defaults are admin/admin)
- Go to Mobile Connections and select the most suitable configuration for your SIM card
2.2 Connect to the server
- Go to "Settings"
- Go to Gateways and click under "Register new gateway"
- Select DEXGate and click on "Next"
- Add the corresponding MAC and click on "Save"
2.3 Connect and configure the meters
Connect the meters to the DEXGate. There's more information on this topic in the full user manual.
3. DEXGate Full User Manual
Menu
- Device Information
- Quick Start
- Accessing the web administration interface
- System information
- System configuration
- Wired network
- Remote Access
- Debug
- Data Sources
- Modbus Configuration
- Modbus Custom Devices
- 4Noks Configuration
- Kromschroeder Configuration
- IEC 870-5-102 Configuration
- Configuring DEXGate to work with FLTA
- Update
- Reboot and Halt
- Change password
3.1 Device Information
3.1.1 Ports
Serial port: 1 RS232 port
Eth0: Power over Ethernet port. The default address is 192.168.1.150. PoE capable.
Eth1: Ethernet administration port. It uses the address 172.16.0.1. Provides a 172.16.0.x IP address.
USB: 2x USB 2.0
DC in: Power input 7-20V
3.1.2 Specifications
Processor: AMD Geode LX800 500MHz
3.1.3 Compatible technologies
To get internet:- Ethernet
- Wireless a/b/g (optional module)
- 3G/GPRS (optional module)
- Web interface
- Optional remote access by technical support via VPN
- Modbus-RTU over RS485 (USB)
- Modbus-TCP
- 4-Noks for ZigBee devices
- Kromschroeder
- IEC 870-5-102
3.1.4 DEXGate network requirements
DEXGate will need an IP address. This IP address can be obtained using DHCP or statically configured.
DEXGate only uses outgoing connections, so if you don't have a firewall and use NAT it will work out of the box. It uses the following ports:
- Basic:
- Sending data to the server: TCP port 80 to insert.dexcell.com
- Sending data to the server: TCP port 443 to insert.dexcell.com
- Optional:
- Remote control of the device: UDP port 1196 to vpn.dexcell.com
- Using internet to sync time: UDP port 123 to various servers
- Registering to DEXCell from the DEXGate: TCP port 80 to www.dexcell.com
3.2 Quick Start
In order to start sending data we need to follow a 4 step process: configure the network, register the gateway, configure the meters and verify the reception.
3.2.1 Network configuration
The DEXGate is capable of connecting to the Internet using a cable, wireless or mobile connection:
Cable
- Connect the network cable to the eth0 connector.
- Prepare your computer to obtain a IP address using DHCP or assign an IP in the 172.16.0.2-254 range.
- Connect another network cable to our computer and the eth1 connector.
- Open your web browser and access http://172.16.0.1.
- Log in (the default username and password are admin/admin)
- Configure the local network accessing the section "Wired Network" (if you don't know how to configure it contact your systems administrator)
Wireless (only with the wireless optional module)
- Prepare your computer to obtain a IP address using DHCP or assign an IP in the 172.16.0.2-254 range.
- Connect another network cable to our computer and the eth1 connector.
- Open your web browser and access http://172.16.0.1.
- Log in (the default username and password are admin/admin)
- Configure the local wireless network accessing the section "Wireless Network" (if you don't know how to configure it contact your systems administrator)
3G/GPRS (only with the 3G/GPRS optional module)
- Insert the SIM card before powering the DEXGate.
- Prepare your computer to obtain a IP address using DHCP or assign an IP in the 172.16.0.2-254 range.
- Connect another network cable to our computer and the eth1 connector.
- Open your web browser and access http://172.16.0.1.
- Log in (the default username and password are admin/admin)
- Configure the mobile network accessing the section "Mobile Configuration" (if you don't know how to configure it contact your mobile network provider)
3.2.2 Configure the meters
We can divide the configuration of the meter into two steps:
- Physical meter configuration
- Bridge configuration
Every meter works in its own way, so we strongly recommend to read the user manual of the meter.
You can configure the bridge through the web administration interface. If you're using modbus devices you need to specify the address and type of each meter. It is important to configure properly the modbus address in order to indicate it on DEXGate system configuration.
3.2.3 Verify the reception
It takes a few minutes for a message to be processed and visible in the platform. Although you can check if the messages have been obtained from the meter and send in the "Debug" section of the web administration interface of the DEXGate
3.3 Accessing the web administration interface
- Prepare your computer to obtain an IP address using DHCP or assign an IP in the 172.16.0.2-254 range.
- Connect another network cable to our computer and the eth1 connector.
- Open your web browser and access http://172.16.0.1.
- Log in using your username and password (the default ones are admin/admin)
3.4 System information

This screen provides some basic information about the device:
- Device name
- Serial Number
- Uptime
- IP addresses
- Disk usage
- Memory usage
- Internet connection (if the internet connection is restricted in any way the detection may fail)
- Remote access
- Current date
3.5 System configuration
This section is used to configure some basic parameters of the DEXGate:
- Device name: change the device name in order to differentiate various DEXGates inside the same local area network
- NTP time synchronization: enable it to synchronize the time regularly with internet time.
- Manual time adjust: some networks don't allow ntp time synchronization. This option allows manual modification of the DEXGate time
3.6 Wired network
There are 2 wired network interfaces: eth0 and eth1. Eth1 is not configurable and it's set to 172.16.0.1. Eth0 can be configured to use DHCP or to use a static IP address. Please contact your systems administrator to obtain the configuration.
3.7 Remote Access
DEXGate can be remotely administered by an engineer from DEXMA in order to diagnose several problems. In order to accomplish that the DEXGate establishes a VPN connection that allows a bidirectional connection. This VPN connection uses the port 1196 UDP. The DEXGate needs to be registered in order to connect to the VPN server.
The DEXGate is prepared to connect to vpn.dexcell.com. If you need to connect to another server you'll need to update the certificate to be able to connect to the new server. You can download it from the server or upload it manually from your computer
3.8 Debug
This section provides information on various processes running in the DEXGate. This are the most frequent messages:
- INFO [MBusManager :: main] - <Publishing 72messages to the server>: 72 messages have been read from the meter(s) and are being sent to the server
- INFO [JSONMessagePublisher :: main] - <Insert server response: OK>: Messages correctly received by the server
- [MBusManager :: main] - <FOUND: 2 nodes>: Number of configured devices
- INFO [JSONMessagePublisher :: main] - <Publishing to address: http://dexcell.com/insert-json.htm>: Messages are being sent to the server
3.9 Data Sources
In this section, you'll find the state of various bridges. You need to refresh the webpage in order to update the values.
3.10 Modbus Configuration
DEXGate supports two Modbus protocols:
-
Modbus TCP
- Modbus RTU
In order to configure the Modbus bridge we need:
- Connect an ethernet cable between your computer and the ETH1 port of the DEXGate
- Go to your browser and access http://172.16.0.1
- Log in (the default username and password are admin/admin)
- Click on Bridge Configuration:
- You'll find two configuration files: 4Noks and Modbus.
- Make the changes you need
- Save
- Reboot
- You're done
In the configuration file you can use these options:
Option | Meaning |
bridge.speed | Speed of the local Modbus RTU bus |
bridge.scheduled-polling-interval | Polling interval of the bridge. Mínimum 2 minutes |
proxy.host | Proxy host |
proxy.port | Proxy port |
hardcoded.server-url | DEXCell server url address |
hardcoded.gateway-mac | This identificator will override the default one |
Queue path | File where the data is stored before sending it to the server. Do not change |
remotebridge-mbX | IP address and port (optional) of a remote modbus-TCP device or bridge in the format IP:port |
devices.manufacturer-model | Coma separated list of modbus addresses of devices of this kind |
profile.manufacturer-model | low (default), medium or high. The profile dictates the amount of parameters sent to the server |
gateway.interface | Interface used to get the id of the gateway. Do not change |
bridge.device | Local device where the Modbus RTU bus is connected. Do not change |
bridge.ip | IP of the local Modbus TCP/RTU bus. Do not change |
bridge.port | Port of the local Modbus TCP/RTU bus. Do not change |
3.10.1 Profiles
There are 3 profiles: Low, medium and high. They are used to minimize the unnecessary data sent to the server.
Low:
- Active Energy
- Active Power
- Reactive Energy
- Reactive Power
Medium:
- All Low Services
- Apparent Energy
- Apparent Power
- Cos Phi
- Power Factor
High: Everything
By default, if no profile is selected, DEXGate will apply the low profile.
3.10.2 Example file 1
bridge.speed=9600
bridge.device=/dev/ftdi485
bridge.ip=127.0.0.1
bridge.port=9003
bridge.scheduled-polling-interval=15
# Proxy configuration
proxy.host=
proxy.port=
# Remote TCP Modbus bridges
remotebridge.mb1=10.123.12.32:502
remotebridge.mb2=
remotebridge.mb3=
# Ids of Accuenergy devices
devices.accuenergy-accuvimii=
# Ids of Atec devices
devices.atec-mdm3100=
# Ids of Brainchild devices (example 1[p1[403(100)];a2[500]],2[r2[100]] )
devices.brainchild-daio=
# Ids of Carlo Gavazzi devices
devices.carlogavazzi-em21=
devices.carlogavazzi-em24=
# Ids of Circutor devices
devices.circutor-cvm-mini=1
profile.circutor-cvm-mini=high
devices.circutor-cvm-96=
devices.circutor-cvm-144=
devices.circutor-cvmk=
devices.circutor-cvmk2=
devices.circutor-edmk=
devices.circutor-lm-4i-4o=
devices.circutor-lm24=
devices.circutor-lm50=
devices.circutor-mk30-60=
devices.circutor-mkd=
devices.circutor-nrg96=
# Ids of Electrex devices
devices.electrex-femto=
# Ids of Enerdis devices
devices.enerdis-cct=mb1:5[402(0.02);0;0;0;402(1);419(0.001);419(0.001);0]
devices.enerdis-enerium30=
devices.enerdis-enerium50=
devices.enerdis-enerium150=
devices.enerdis-ulys=
profile.enerdis-ulys=
# Ids of General Electric devices devices.generalelectric-MTDN3L=
devices.generalelectric-MTDN3R4M=
# Ids of Janitza devices devices.janitza-umg96rm=
devices.janitza-umg96s=
devices.janitza-umg103=
devices.janitza-umg508=
# Ids of Lovato devices
devices.lovato-dmg210=
devices.lovato-dmg300=
devices.lovato-dmg700=
devices.lovato-dmg800=
devices.lovato-dmg900=
devices.lovato-dmecd=
# Ids of Millenial/LEM devices
devices.millenial-emn=
devices.millenial-wizone=
devices.millenial-wistat=
devices.millenial-wipulse=
devices.millenial-witemp=
devices.millenial-meshnode=
devices.millenial-meshgate=
# Ids of Panasonic devices
devices.panasonic-kw1m=
devices.panasonic-kw2g=
# Ids of Schneider devices
devices.schneider-pm9c=
devices.schneider-pm710=
devices.schneider-pm800=
devices.schneider-sim=
# Ids of Siemens devices
devices.siemens-pac3100=
devices.siemens-pac3200=
# Ids of Socomec devices
devices.socomec-a10=
devices.socomec-a20=
devices.socomec-a40=
devices.socomec-e30=
devices.socomec-e40=
devices.socomec-e50=
devices.socomec-e60=
devices.socomec-eci2=
#Ids of Step devices
devices.step-thdg=
# Ids of 4Noks devices
devices.fournoks-thl=
devices.fournoks-thi=
devices.fournoks-tid-ci=
# Auto detect gateway ID using interface
gateway.interface=eth0
# Hardcoded properties, must be empty or they will be used overriding dynamic configuration
hardcoded.gateway-mac=
hardcoded.server-url=
# Properties about the queuedev
queue.path=/var/tmp/tempQueueMaster.txt
# Properties about publication
publish.local=True
publish.server=True
In this example, there are 2 meters: 1 circutor cvm-mini and 1 enerdis cct. The circutor meter is connected to the local bus and the enerdis device is connected to a remote modbus-tcp bridge running on 10.123.12.32:502. The cvm-mini has the profile high active (it will send all the information available).
The cct is a 8 input pulse counter and its configuration is quite complex: mb1:5[402(0.02);0;0;0;402(1);419(0.001);419(0.001);0]
- mb1: This device is connected to the remote bus 1 (10.123.12.32:502)
- 5: The modbus address of the cct is 5
- [
- 402(0.02);: The first pulse input has an energy counter connected. Each pulse represents 0.02kWh
- 0;: The second pulse input is disconnected
- 0;: The third pulse input is disconnected
- 0;: The fourth pulse input is disconnected
- 402(1);: The fifth pulse input has an energy counter connected. Each pulse represents 1 kWh
- 419(0.001);: The sixth pulse input has a gas counter connected. Each pulse represents 1l or 0.001m³
- 419(0.001);: The seventh pulse input has a gas counter connected. Each pulse represents 1l or 0.001m³
- 0: The eighth pulse input is disconnected
3.10.3 Example file 2
bridge.speed=9600
bridge.device=/dev/ftdi485
bridge.ip=127.0.0.1
bridge.port=9003
bridge.scheduled-polling-interval=15
# Proxy configuration
proxy.host=
proxy.port=
# Remote TCP Modbus bridges
remotebridge.mb1=192.168.1.43:10000
remotebridge.mb2=192.168.1.42
remotebridge.mb3=
# Ids of Brainchild devices (example 1[p1[403(100)];a2[500]],2[r2[100]] )
devices.brainchild-daio=
# Ids of Carlo Gavazzi devices
devices.carlogavazzi-em21=
devices.carlogavazzi-em24=
# Ids of Circutor devices
devices.circutor-cvm-mini=mb1:1,mb2:1,40
profile.circutor-cvm-mini=high
devices.circutor-cvm-96=
devices.circutor-cvm-144=
devices.circutor-cvmk=
devices.circutor-cvmk2=
devices.circutor-edmk=
devices.circutor-lm-4i-4o=98[402;0;419(0.001);0],mb1:98[402]
devices.circutor-lm24=
devices.circutor-lm50=
devices.circutor-mk30-60=
devices.circutor-mkd=
devices.circutor-nrg96=
# Ids of Electrex devices
devices.electrex-femto=
# Ids of 4Noks devices
devices.fournoks-thl=
devices.fournoks-thi=
devices.fournoks-tid-ci=
# Ids of General electric devices
devices.generalelectric-MTDN3L=
devices.generalelectric-MTDN3R4M=
# Ids of Millenial/LEM devices
devices.millenial-emn=
devices.millenial-wizone=
devices.millenial-wistat=
devices.millenial-meshnode=
devices.millenial-meshgate=
# Ids of Schneider devices
devices.schneider-pm9c=13
devices.schneider-pm710=
# Ids of Socomec devices
devices.socomec-a10=12
devices.socomec-a20=
devices.socomec-e30=
devices.socomec-e40=
devices.socomec-e50=
#Ids of Step devices
devices.step-thdg=
# Auto detect gateway ID using interface
gateway.interface=eth0
# Hardcoded properties, must be empty or they will be used overriding dynamic configuration
hardcoded.gateway-mac=
hardcoded.server-url=
# Properties about the queue
queue.path=/var/log/dexma/tempQueueMaster.txt
This configuration file configures the following devices:
- Local:
- Address 1: Circutor CVM-Mini - Profile: high
- Address 12: Socomec Diris A10 - Profile: low
- Address 13: Schneider PM9C - Profile: low
- Address 98: Circutor LM4I4O - First port counts kWh (402), the second port is disconnected (0), the third port counts water in liters, the international system uses m³ therefore a scale 0.001 is used (419(0.001)) and the fourth port is disconnected.
- Remote bridge 1 (192.168.1.43:10000):
- Address 1: Circutor CVM-Mini - Profile: high
- Address 98: Circutor LM4I4O - Al four ports count kWh
- Remote bridge 2 (192.168.1.42:502):
- Address 1: Circutor CVM-Mini - Profile: high
----------------------------------------------------------------------------------------------------------------------------------------------------
The identifiers for every measure type supported by the platform are available here
3.11 Modbus Custom Devices
Since version 4.6.0 DEXGate can obtain information from custom devices. In order to do so, a json device template must be created with the format explained below. After creating a file called "yourdevice" you'll need to add a line "customdevice.yourdevice=" in your modbus configuration file followed by the modbus addresses of your custom devices. For example, if your device is called myPLC and it has the modbus address 13 you'll use this line:
customdevice.myPLC=13
Custom device JSON format:
[ device1, device2, device3]
For Modbus bridge versions lower than v5.2.10, each device is a dictionary containing:
{
"name-ext": String
"services": [ service1, service2, service3, ...]
}
Since Modbus bridge version v5.2.10, each device is a dictionary containing:
{
"name-ext": String
"delay": Integer
"services": [ service1, service2, service3, ...]
}
The delay param is the time in ms between each register reading.
Each service is a dictionary containing:
{
"initial-register": Integer,
"type-of-register": String,
"dexcell-service": Integer,
"operation": String,
"operand": Float,
"type-of-value": String
}
- Initial-register (address) is the initial modbus register (a integer between 0 and 65535).
Note that address = register - 1 - Type-of-register is either: 'input' or 'holding'
- Dexcell-service is the dexcell service identificator. You can find them here.
- Operation is either:
- nothing
- multiply
- divide
- sum
It can be very useful if, for example, we want to get the data in kW instead of W. In this case, you will have to set the value to "divide"
5. Operand is the operand of the operation. For example, in the kW to W case, we would set the operand value to 1000 to set the divisor of the operation to 1000.
6. Type of value is one of the following:
- uint8_msb
- int8_msb
- uint8_lsb
- int8_lsb
- uint16
- int16
- uint32
- int32
- uint32inv
- int32inv
- uint48
- int48
- uint64
- int64
- float
Example: Circutor CVM-mini
[
{
"name-ext" : "",
"services" :[
{
"initial-register" : 30,
"type-of-register" : "input",
"dexcell-service" : 401,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 32,
"type-of-register" : "input",
"dexcell-service" : 403,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 34,
"type-of-register" : "input",
"dexcell-service" : 407,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 66,
"type-of-register" : "input",
"dexcell-service" : 409,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 70,
"type-of-register" : "input",
"dexcell-service" : 406,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 72,
"type-of-register" : "input",
"dexcell-service" : 413,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 36,
"type-of-register" : "input",
"dexcell-service" : 411,
"operation" : "divide",
"operand" : 100,
"type-of-value": "int32"
},
{
"initial-register" : 38,
"type-of-register" : "input",
"dexcell-service" : 412,
"operation" : "divide",
"operand" : 100,
"type-of-value": "int32"
},
{
"initial-register" : 80,
"type-of-register" : "input",
"dexcell-service" : 701,
"operation" : "divide",
"operand" : 10,
"type-of-value": "int32"
},
{
"initial-register" : 60,
"type-of-register" : "input",
"dexcell-service" : 402,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 62,
"type-of-register" : "input",
"dexcell-service" : 404,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 64,
"type-of-register" : "input",
"dexcell-service" : 408,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 86,
"type-of-register" : "input",
"dexcell-service" : 410,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
}
]
},
{
"name-ext" : "a",
"services" :[
{
"initial-register" : 0,
"type-of-register" : "input",
"dexcell-service" : 405,
"operation" : "divide",
"operand" : 10,
"type-of-value": "int32"
},
{
"initial-register" : 2,
"type-of-register" : "input",
"dexcell-service" : 406,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 4,
"type-of-register" : "input",
"dexcell-service" : 406,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 6,
"type-of-register" : "input",
"dexcell-service" : 403,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 74,
"type-of-register" : "input",
"dexcell-service" : 409,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 8,
"type-of-register" : "input",
"dexcell-service" : 412,
"operation" : "divide",
"operand" : 100,
"type-of-value": "int32"
},
{
"initial-register" : 48,
"type-of-register" : "input",
"dexcell-service" : 422,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 54,
"type-of-register" : "input",
"dexcell-service" : 423,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
}
]
},
{
"name-ext" : "b",
"services" :[
{
"initial-register" : 10,
"type-of-register" : "input",
"dexcell-service" : 405,
"operation" : "divide",
"operand" : 10,
"type-of-value": "int32"
},
{
"initial-register" : 12,
"type-of-register" : "input",
"dexcell-service" : 406,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 14,
"type-of-register" : "input",
"dexcell-service" : 406,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 16,
"type-of-register" : "input",
"dexcell-service" : 403,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 76,
"type-of-register" : "input",
"dexcell-service" : 409,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 18,
"type-of-register" : "input",
"dexcell-service" : 412,
"operation" : "divide",
"operand" : 100,
"type-of-value": "int32"
},
{
"initial-register" : 50,
"type-of-register" : "input",
"dexcell-service" : 422,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 56,
"type-of-register" : "input",
"dexcell-service" : 423,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
}
]
},
{
"name-ext" : "c",
"services" :[
{
"initial-register" : 20,
"type-of-register" : "input",
"dexcell-service" : 405,
"operation" : "divide",
"operand" : 10,
"type-of-value": "int32"
},
{
"initial-register" : 22,
"type-of-register" : "input",
"dexcell-service" : 406,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 24,
"type-of-register" : "input",
"dexcell-service" : 406,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 26,
"type-of-register" : "input",
"dexcell-service" : 403,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 78,
"type-of-register" : "input",
"dexcell-service" : 409,
"operation" : "nothing",
"operand" : 0,
"type-of-value": "int32"
},
{
"initial-register" : 28,
"type-of-register" : "input",
"dexcell-service" : 412,
"operation" : "divide",
"operand" : 100,
"type-of-value": "int32"
},
{
"initial-register" : 52,
"type-of-register" : "input",
"dexcell-service" : 422,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
},
{
"initial-register" : 58,
"type-of-register" : "input",
"dexcell-service" : 423,
"operation" : "divide",
"operand" : 1000,
"type-of-value": "int32"
}
]
}
]
3.12 4Noks Configuration
The DEXGate supports a wide range of 4Noks devices. In order to be able to use them first, you need to create your 4Noks network and assign unique addresses to all your devices. Once you've done that you'll be able to connect the 4Noks USB device to the DEXGate and start sending data to the server.
The default configuration (below) will work if all your devices have addresses between 15 and 20. If you need more addresses or you don't want to use that range you can change it modifying the lines bridge.first-node-id
and bridge.last-node-id
of the configuration file available in the bridge configuration section of the DEXGate web management interface.
Once the USB device is connected in the debug section you should be able to spot a line similar to this:
The devices showing an X are those that haven't been found while the devices with their address are those that are successfully communicating with the USB device.
Default configuration
# Properties about the mbus bridge:
bridge.speed=19200
bridge.device=/dev/4noks
bridge.ip=127.0.0.1
bridge.port=9001
bridge.polling-interval=30
bridge.first-node-id=15
bridge.last-node-id=20
# Properties about the gateway
gateway.interface=eth0
# Properties about publishing data
publish.local=false
publish.server=true
# Properties about the server
server.default-url=is2.dexcell.com
# Hardcoded properties, must be empty or they will be used overriding dynamic configuration
hardcoded.gateway-mac=
hardcoded.server-url=
# Properties about the queue
queue.path=/var/tmp/4NoksTempQueue.txt
This section provides a basic interface to modify the 4Noks bridge configuration. The most relevant parameters are:
Option | Meaning |
bridge.speed | Speed of the local Modbus RTU bus |
bridge.scheduled-polling-interval | Polling interval of the bridge. Mínimum 2 minutes |
proxy.host | Proxy host |
proxy.port | Proxy port |
hardcoded.server-url | DEXCell server url address |
hardcoded.gateway-mac | This identificator will override the default one |
Queue path | File where the data is stored before sending it to the server. Do not change |
bridge.first.node | First modbus address scanned by the bridge to find active meters. Default 15 |
bridge.last.node | Last modbus address scanned by the bridge to find active meters. Default 20 |
gateway.interface | Interface used to get the id of the gateway. Do not change |
bridge.device | Local device where the Modbus RTU bus is connected. Do not change |
bridge.ip | IP of the local Modbus TCP/RTU bus. Do not change |
bridge.port | Port of the local Modbus TCP/RTU bus. Do not change |
3.13 Kromschroeder Configuration
This section provides a basic interface to modify the Kromschroeder bridge configuration. The most relevant parameters are:
Option | Meaning |
pulsecounter | Coma-separated list of ids of the pulse counters |
temphum | Coma-separated list of ids of the temperature and humidity devices |
temp | Coma-separated list of ids of the temperature devices |
retries | Number of attempts to comunicate with the devices |
default-pulse | Default service number of the pulse generator. Default: 502 |
server-url | URL of the server. Default: is2.dexcell.com |
queue-path | File where the pending messages will be buffered. Do not change |
hardcoded.gateway-mac | This identificator will override the default one |
Queue path | File where the data is stored before sending it to the server. Do not change |
persistence-path | File where the timestamps data is stored. Do not change |
serial-device | Name of the serial device. Do not change |
serial-speed | Speed of the serial device |
serial-timeout | Timeout time of the serial port. Do not change |
3.14 IEC 870-5-102 Configuration
One of the most useful tools, in order to detect possible errors in the facility, is using the logs menu.
This section explains how to obtain the logs of an IEC meter connected with a DEXGate.
Once the DEXGate is registered on the platform, we will obtain a "Gateway token":

token = XXXXXXXXXXXXXXXXXXXX


Most common errors:
18/10/2013 02:08:48 CEST - WARNING - IecContinousServer - iec-XXXXX4028104436 - Problem sending preamble. Link address or connection problem. Message: No answer1 received
Error getting the serial number. Check the password
18/10/2013 03:11:50 CEST - WARNING - IecContinousServer - iec-XXXXXX041100451 - Error getting serial-number, possible password problem.
Option | Meaning |
link | Link address. It can be generally obtained from the meter menu. Default 1 |
measure | Measure point. It can be generally obtained from the meter menu. Default 1 |
password | Password. It cannot be obtained from the meter. The usual values are 1, 2 or 7. Default 1 |
log | Log level |
device | Name of the serial device. Do not change |
speed | Speed of the serial device |
parity | Parity of the serial device. It can be E, O or N (even, odd, none) |
3.15 Configuring DEXGate to work with FLTA
DEXGate is compatible with devices connected through the Produal FLTA like the PAFL (pulse counter) or the TEFL (temp/hum sensor). When you have these devices configured with the FLTA you should configure the DEXGate following the next steps:
1. Check the DEXGate's Modbus version
- In the DEXGate's web interface, go to Version on the left-side menu.
- Check that your Modbus is v5.3.4 or greater. If not, please contact your support.
2. Modify the Modbus configuration:
- In the DEXGate's web interface, go to "Modbus Configuration" on the left-side menu.
- Look for the Produal configuration lines. If they are not in the configuration add the following lines:
# Ids of Produal devices (example x@y where "x=modbus address" and "y=sensor SID" ) devices.produal-pafl= devices.produal-tefl=
If we have:
- FLTA modbus address: 5
- Device connected to the FLTA: PAFL
- SID of the device connected to the FLTA: 99
devices.produal-pafl=5@99
3.16 Update
The technical support team won't give you updates to install anymore.
3.17 Reboot and Halt
This sections are designed to reboot and halt the device. It is recommended to use this option instead of directly removing current from the device.
3.18 Change password
Change the password required to log in the administration interface.