Easy Modbus
  1. Home
  2. Modbus register maps
  3. Carlo Gavazzi
  4. EM530 / EM540 three-phase energy meters (RS485 Modbus)

Energy meter · Modbus register map

Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) Modbus register map

Updated 28 October 2026

Short answer

The EM530 and EM540 are Carlo Gavazzi's three-phase DIN-rail energy meters (EM530 CT-connected, EM540 direct-connected). The S1 versions talk Modbus RTU on RS485; live values and energy totals are 32-bit integers sent low word first with fixed weights, and functions 03 and 04 return the same data. This map covers volts, amps, powers, PF, frequency, THD, demand, total/partial/phase/tariff energy, run hours, identity, setup, serial settings and resets.

This page lists 109 Modbus registers for the Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) — 16 writable — with the table, 0-based wire address, data type, word order, scale, units and access of each, re-typed from Carlo Gavazzi’s own free documentation (linked below) and checked against it.

Manufacturer
Carlo Gavazzi
Model
EM530 / EM540 three-phase energy meters (RS485 Modbus)
Equipment type
Energy meter
Registers
109 (16 writable)
Transport
Modbus RTU
Default unit ID
1
Default serial
9600 baud, 8N1
Documented addressing
Modicon 3xxxx/4xxxx (drop the prefix, subtract 1)
32-bit word order
CDAB low word first (word-swapped)
Also known as
EM530, EM540, EM530DINAV53XS1X, EM530DINAV53XS1PFA, EM530DINAV53XS1PFB, EM530DINAV53XS1PFC, EM540DINAV23XS1X, EM540DINAV23XS1PFA, EM540DINAV23XS1PFB, EM540DINAV23XS1PFC, EM500 series
Source document
EM530/EM540 Modbus Communication Protocol (public version) · Version 1.3 · rev. 2024-02-13
Download CSV all columns JSON Manufacturer PDF ↗

Integration notes: Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus)

Integration in brief

Read input registers 0000h-0033h (function 04 or 03) for live values and 0034h-005Dh for energy, in blocks of up to 20 registers. Decode INT32 low word first and apply the fixed weights: V, W, VA, var and kWh x0.1, A and PF x0.001, Hz x0.1.

Minimum registers to map

Addresses are 0-based wire addresses. Enough to monitor and run the unit; map more as the job needs.

RegisterNameTypeWhyAccess
IR 0V L1-NINT32 CDABV L1-NRead
IR 12A L1INT32 CDABA L1Read
IR 40W sysINT32 CDABW sysRead
IR 49PF sysINT16PF sysRead
IR 51HzINT16FrequencyRead
IR 52kWh (+) TOTINT32 CDABkWh(+) totalRead
IR 78kWh (-) TOTINT32 CDABkWh(-) totalRead
IR 11Carlo Gavazzi identification codeUINT16Model checkRead

Enable Modbus control & writes

Only the S1 versions have the RS485 Modbus port. Set address, baud, parity and stop bits from the front menu or registers 2000h-2003h.

Byte order & addressing

Network setup

Watch out for

Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) Modbus registers

Address = 0-based wire address (the documented number is shown under it when it differs) · Order: ABCD = high word first, CDAB = low word first · Scale: engineering value = raw × scale.

109 of 109 shown
Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) Modbus register map
TableAddressNameDescriptionTypeOrderScaleUnitsAccessValues / bits
IR0doc 300001 / 0000hV L1-NINT32CDAB× 0.1VRead
IR2doc 300003 / 0002hV L2-NINT32CDAB× 0.1VRead
IR4doc 300005 / 0004hV L3-NINT32CDAB× 0.1VRead
IR6doc 300007 / 0006hV L1-L2INT32CDAB× 0.1VRead
IR8doc 300009 / 0008hV L2-L3INT32CDAB× 0.1VRead
IR10doc 300011 / 000AhV L3-L1INT32CDAB× 0.1VRead
IR11doc 300012 / 000BhCarlo Gavazzi identification codeModel code, e.g. 1760 = EM540 X.UINT16Read1744 = EM530 X; 1745 = EM530 PFA; 1746 = EM530 PFB; 1747 = EM530 PFC; 1760 = EM540 X; 1761 = EM540 PFA; 1762 = EM540 PFB; 1763 = EM540 PFC
IR12doc 300013 / 000ChA L1INT32CDAB× 0.001ARead
IR14doc 300015 / 000EhA L2INT32CDAB× 0.001ARead
IR16doc 300017 / 0010hA L3INT32CDAB× 0.001ARead
IR18doc 300019 / 0012hW L1Negative = exported power.INT32CDAB× 0.1WRead
IR20doc 300021 / 0014hW L2Negative = exported power.INT32CDAB× 0.1WRead
IR22doc 300023 / 0016hW L3Negative = exported power.INT32CDAB× 0.1WRead
IR24doc 300025 / 0018hVA L1INT32CDAB× 0.1VARead
IR26doc 300027 / 001AhVA L2INT32CDAB× 0.1VARead
IR28doc 300029 / 001ChVA L3INT32CDAB× 0.1VARead
IR30doc 300031 / 001Ehvar L1INT32CDAB× 0.1varRead
IR32doc 300033 / 0020hvar L2INT32CDAB× 0.1varRead
IR34doc 300035 / 0022hvar L3INT32CDAB× 0.1varRead
IR36doc 300037 / 0024hV L-N sysINT32CDAB× 0.1VRead
IR38doc 300039 / 0026hV L-L sysINT32CDAB× 0.1VRead
IR40doc 300041 / 0028hW sysNegative = exported power.INT32CDAB× 0.1WRead
IR42doc 300043 / 002AhVA sysINT32CDAB× 0.1VARead
IR44doc 300045 / 002Chvar sysINT32CDAB× 0.1varRead
IR46doc 300047 / 002EhPF L1Sign follows power direction: negative = exporting.INT16× 0.001Read
IR47doc 300048 / 002FhPF L2Sign follows power direction: negative = exporting.INT16× 0.001Read
IR48doc 300049 / 0030hPF L3Sign follows power direction: negative = exporting.INT16× 0.001Read
IR49doc 300050 / 0031hPF sysSign follows power direction: negative = exporting.INT16× 0.001Read
IR50doc 300051 / 0032hPhase sequenceMeaningful on 3-phase systems only.INT16Read1 = L1-L2-L3; -1 = L1-L3-L2
IR51doc 300052 / 0033hHzINT16× 0.1HzRead
IR52doc 300053 / 0034hkWh (+) TOTImported active energy total.INT32CDAB× 0.1kWhRead
IR54doc 300055 / 0036hkvarh (+) TOTINT32CDAB× 0.1kvarhRead
IR56doc 300057 / 0038hW sys DMDSystem active power demand.INT32CDAB× 0.1WRead
IR58doc 300059 / 003AhW sys DMD MAXPeak system power demand.INT32CDAB× 0.1WRead
IR60doc 300061 / 003ChkWh (+) PARTIALResettable imported energy.INT32CDAB× 0.1kWhRead
IR62doc 300063 / 003Ehkvarh (+) PARTIALINT32CDAB× 0.1kvarhRead
IR64doc 300065 / 0040hkWh (+) L1INT32CDAB× 0.1kWhRead
IR66doc 300067 / 0042hkWh (+) L2INT32CDAB× 0.1kWhRead
IR68doc 300069 / 0044hkWh (+) L3INT32CDAB× 0.1kWhRead
IR70doc 300071 / 0046hkWh (+) t1Imported energy on tariff 1.INT32CDAB× 0.1kWhRead
IR72doc 300073 / 0048hkWh (+) t2Imported energy on tariff 2.INT32CDAB× 0.1kWhRead
IR78doc 300079 / 004EhkWh (-) TOTExported active energy total.INT32CDAB× 0.1kWhRead
IR80doc 300081 / 0050hkvarh (-) TOTINT32CDAB× 0.1kvarhRead
IR82doc 300083 / 0052hkWh (-) PARTIALINT32CDAB× 0.1kWhRead
IR84doc 300085 / 0054hkvarh (-) PARTIALINT32CDAB× 0.1kvarhRead
IR86doc 300087 / 0056hkVAh TOTINT32CDAB× 0.1kVAhRead
IR88doc 300089 / 0058hkVAh PARTIALINT32CDAB× 0.1kVAhRead
IR90doc 300091 / 005AhRun hour meterINT32CDAB× 0.01hRead
IR92doc 300093 / 005ChRun hour meter kWh (-)Hours spent exporting.INT32CDAB× 0.01hRead
IR110doc 300111 / 006EhRun hour meter PARTIALINT32CDAB× 0.01hRead
IR112doc 300113 / 0070hRun hour meter kWh (-) PARTIALINT32CDAB× 0.01hRead
IR114doc 300115 / 0072hPF L1 (lead/lag)Negative = leading (capacitive), positive = lagging (inductive).INT16× 0.001Read
IR115doc 300116 / 0073hPF L2 (lead/lag)Negative = leading (capacitive), positive = lagging (inductive).INT16× 0.001Read
IR116doc 300117 / 0074hPF L3 (lead/lag)Negative = leading (capacitive), positive = lagging (inductive).INT16× 0.001Read
IR117doc 300118 / 0075hPF sys (lead/lag)Negative = leading (capacitive), positive = lagging (inductive).INT16× 0.001Read
IR118doc 300119 / 0076hLoad type L1INT16Read1 = Inductive (L); -1 = Capacitive (C)
IR119doc 300120 / 0077hLoad type L2INT16Read1 = Inductive (L); -1 = Capacitive (C)
IR120doc 300121 / 0078hLoad type L3INT16Read1 = Inductive (L); -1 = Capacitive (C)
IR121doc 300122 / 0079hLoad type sysINT16Read1 = Inductive (L); -1 = Capacitive (C)
IR130doc 300131 / 0082hTHD A L1INT32CDAB× 0.01%Read
IR132doc 300133 / 0084hTHD A L2INT32CDAB× 0.01%Read
IR134doc 300135 / 0086hTHD A L3INT32CDAB× 0.01%Read
IR138doc 300139 / 008AhTHD V L1-NINT32CDAB× 0.01%Read
IR140doc 300141 / 008ChTHD V L2-NINT32CDAB× 0.01%Read
IR142doc 300143 / 008EhTHD V L3-NINT32CDAB× 0.01%Read
IR146doc 300147 / 0092hTHD V L1-L2INT32CDAB× 0.01%Read
IR148doc 300149 / 0094hTHD V L2-L3INT32CDAB× 0.01%Read
IR150doc 300151 / 0096hTHD V L3-L1INT32CDAB× 0.01%Read
IR152doc 300153 / 0098hAnNeutral current.INT32CDAB× 0.001ARead
IR154doc 300155 / 009AhI1 DMDINT32CDAB× 0.001ARead
IR156doc 300157 / 009ChI2 DMDINT32CDAB× 0.001ARead
IR158doc 300159 / 009EhI3 DMDINT32CDAB× 0.001ARead
IR160doc 300161 / 00A0hI1 DMDMAXINT32CDAB× 0.001ARead
IR162doc 300163 / 00A2hI2 DMDMAXINT32CDAB× 0.001ARead
IR164doc 300165 / 00A4hI3 DMDMAXINT32CDAB× 0.001ARead
IR172doc 300173 / 00AChW1 DMDINT32CDAB× 0.1WRead
IR174doc 300175 / 00AEhW2 DMDINT32CDAB× 0.1WRead
IR176doc 300177 / 00B0hW3 DMDINT32CDAB× 0.1WRead
IR178doc 300179 / 00B2hW1 DMDMAXINT32CDAB× 0.1WRead
IR180doc 300181 / 00B4hW2 DMDMAXINT32CDAB× 0.1WRead
IR182doc 300183 / 00B6hW3 DMDMAXINT32CDAB× 0.1WRead
IR214doc 300215 / 00D6hVA DMDSystem apparent power demand.INT32CDAB× 0.1VARead
IR216doc 300217 / 00D8hVA DMD MAXINT32CDAB× 0.1VARead
IR768doc 300769 / 0300hDigital input statusINT16Read0 = Open; 1 = Closed
IR769doc 300770 / 0301hActive tariffINT16Read0 = None; 1 = Tariff 1; 2 = Tariff 2
IR770doc 300771 / 0302hFirmware versionHigh byte: major (bits 4-7) and minor (bits 0-3); low byte: revision.UINT16Read
IR774doc 300775 / 0306hAlarm statusINT16Read0 = Not active (or delay running); 1 = Active
IR1340doc 301341 / 053ChHz (high resolution)INT32CDAB× 0.001HzRead
IR1342doc 301343 / 053EhRun hour life counterLifetime hours; not cleared by the total reset.INT32CDAB× 0.01hRead
IR20480doc 320481 / 5000hSerial number13 ASCII characters, two per register, high byte first.STRING[14]Read
IR20487doc 320488 / 5007hProduction yearUINT16Read
IR20498doc 320499 / 5012hDevice stateUINT16Read0 = Run; 1 = Fault; 2 = Configuration error (phase/terminal setup)
HR4096doc 304097 / 1000hPassword0 = no password, up to 9999.UINT16Read/write
HR4098doc 304099 / 1002hMeasuring systemMID models accept only 0 and 1.UINT16Read/write0 = 3Pn (3-phase + neutral); 1 = 3P (3-phase, no neutral); 2 = 2P (2-phase + neutral)
HR4099doc 304100 / 1003hCurrent transformer ratio10-20000 = CT 1.0-2000.0. Read-only on MID; absent on AV2 models.UINT32CDAB× 0.1Read/write
HR4112doc 304113 / 1010hDemand integration timeUINT32CDABRead/write0 = 1 min; 1 = 5 min; 2 = 10 min; 3 = 15 min; 4 = 20 min; 5 = 30 min; 6 = 60 min
HR4353doc 304354 / 1101hTariff selection by ModbusUINT16Read/write0 = Off; 1 = On
HR4355doc 304356 / 1103hMeasurement modeRead-only on MID models, fixed by part number.UINT16Read/write0 = A (absolute); 1 = B (accumulate by phase); 2 = C (bidirectional)
HR4356doc 304357 / 1104hWrong connection detectionUINT16Read/write0 = Disabled; 1 = Enabled
HR4357doc 304357 / 1105hWrong connection statusUINT16Read0 = Correct; 1 = Connection error
HR8192doc 308193 / 2000hRS485 address1-247.UINT16Read/write
HR8193doc 308194 / 2001hRS485 baud rateUINT16Read/write1 = 9600; 2 = 19200; 3 = 38400; 4 = 57600; 5 = 115200
HR8194doc 308195 / 2002hRS485 parityUINT16Read/write1 = None; 2 = Even
HR8195doc 308196 / 2003hRS485 stop bitsUINT16Read/write0 = 1 stop bit; 1 = 2 stop bits
HR8196doc 308197 / 2004hRS485 reply delay0-1000 ms.UINT16msRead/write
HR16387doc 316388 / 4003hReset total countersWrite 1. Non-MID (X) models only; lifetime hours kept.UINT16Write
HR16388doc 316389 / 4004hReset partial countersWrite 1. Clears partial energy and partial hours.UINT16Write
HR16389doc 316390 / 4005hReset demandWrite 1. Clears DMD and DMD max.UINT16Write
HR16390doc 316391 / 4006hReset tariff countersWrite 1.UINT16Write

Notes on this map

Check it against the live device. A register map tells you what the controller can expose; the unit in front of you may differ by firmware or options. Read a few registers and compare them with the unit’s own display; for a 32-bit value the float and byte-order decoder shows all four word orders at once, so a wrong word order or scale is obvious. New to this? Read what a register map is and why addresses are off by one.

Questions about the Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus)

What Modbus registers does the Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) have?

This map lists 109 registers: 92 input registers, 17 holding registers. 16 of them can be written. Registers vary with firmware, options and configuration, so confirm against the device.

Are the Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) Modbus addresses 0-based or 1-based?

The manufacturer's document numbers registers Modicon 3xxxx/4xxxx (drop the prefix, subtract 1). Every address on this page is the 0-based wire address you put in the request; the documented number is shown under it where it differs. Each row shows a 6-digit Modicon number for function 04 (3xxxxx; swap the leading 3 for 4 with function 03) and the hex physical address that goes in the frame. Wire address = physical address: 300001 / 0000h is address 0.

What byte order does the Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) use for 32-bit values?

Multi-register values in this map use CDAB (low word first (word-swapped)). Set your client to this order for every 32/64-bit value in the table.

What are the minimum Modbus registers to integrate the Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus)?

Start with IR 0 V L1-N (V L1-N); IR 12 A L1 (A L1); IR 40 W sys (W sys); IR 49 PF sys (PF sys); IR 51 Hz (Frequency); IR 52 kWh (+) TOT (kWh(+) total); IR 78 kWh (-) TOT (kWh(-) total); IR 11 Carlo Gavazzi identification code (Model check).

How do I enable Modbus control of the Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus)?

Only the S1 versions have the RS485 Modbus port. Set address, baud, parity and stop bits from the front menu or registers 2000h-2003h.

Where is the official Carlo Gavazzi EM530 / EM540 three-phase energy meters (RS485 Modbus) Modbus documentation?

The source is EM530/EM540 Modbus Communication Protocol (public version) (Version 1.3), revision 2024-02-13, published free by Carlo Gavazzi at https://www.gavazziautomation.com/fileadmin/images/PIM/OTHERSTUFF/COMPRO/EM500_CPP_Mod_V1.3_13022024.pdf.

More Carlo Gavazzi Modbus register maps

Source: EM530/EM540 Modbus Communication Protocol (public version) · Version 1.3 · rev. 2024-02-13. Register numbers, types, scaling and units are reproduced as published; descriptions are our own.