{
 "manufacturer": "Schneider Electric",
 "manufacturer_slug": "schneider-electric",
 "model": "Conext CL three-phase PV inverter 18/20/25 kVA",
 "model_slug": "conext-cl",
 "short_model": "Conext CL",
 "aliases": [
  "Conext CL-NA",
  "Conext CL-E",
  "PVSCL18NA",
  "PVSCL20E",
  "PVSCL25E",
  "PVSCL25NA"
 ],
 "equipment_type": "Solar inverter",
 "applies_to": "Conext CL (IEC, PVSCL20E/25E) and Conext CL-NA (PVSCL18NA/25NA) three-phase string inverters, map revision 1.5.",
 "summary": "Schneider's Conext CL is a three-phase grid-tie string inverter with two MPPT inputs and Modbus RTU on RS-485 plus Modbus TCP. All data are holding registers in a vendor map that also embeds SunSpec models 1, 103 and 160 from 0x9C40. This map covers identity strings, lifetime energy, operating state, temperatures, grid voltages, currents, power and frequency, PV input values, the alarm code, the remote on/off command and the active-power limit.",
 "transport": [
  "RTU",
  "TCP"
 ],
 "defaults": {
  "unit_id": 10,
  "baud": 9600,
  "parity": "None",
  "data_bits": 8,
  "stop_bits": 1,
  "tcp_port": 502
 },
 "addressing": {
  "convention": "hex 0-based",
  "note": "The map prints addresses in hex and says they are 0-based ('on the wire') addresses, not 1-based. So 0x17FE (active power) is requested as 6142 decimal with no offset."
 },
 "default_word_order": "ABCD",
 "firmware": null,
 "source": {
  "title": "Modbus Registers Map - Conext CL Three Phase PV Inverter 20/25kVA",
  "doc_number": "503-0243-01-01 Rev 1.5",
  "revision_date": "2016-03-15",
  "url": "https://solar.se.com/au/wp-content/uploads/sites/3/2021/11/Conext-CL_Modbus-Registers-Map_Rev1.5.pdf",
  "pages": "pp. 5-6 (port settings, functions, addressing), 7-21 (registers), 21-23 (alarm codes)"
 },
 "notes": [
  "Scaling: the map writes units as 'kW/X10', 'Vrms/X10', 'C/X10' and so on, meaning the raw value is ten times the real value (scale 0.1).",
  "Lifetime energy 0x0802-0x0803 is the only 32-bit value whose high and low words the map labels (H word first), so it is listed as ABCD. The other 32-bit registers (daily energy 0x0804-0x0811, operating hours 0x081E, event codes, the UTC clock at 0x1920 and the SunSpec acc32 energy at 0x9C9E) carry no word-order statement and are left out.",
  "0x1700 and the SunSpec vendor status 0x9CAD state their codes in hex: 15h = 21, 16h = 22, 17h = 23 decimal.",
  "Remote command 0xEFFE and inverter mode 0xFA90 take the hex command words 6B42-6B45; they are listed in decimal under values (0x6B42 = 27458).",
  "Section 4 of the map lists the alarm codes reported in 0x1828 (e.g. 2450 No-Grid, 2616 PV insulation, 4003 Replace fan); they are not repeated here.",
  "Not listed: software part/build/checksum strings, event logs with time stamps (0x1900-0x193F), the rest of the SunSpec blocks and the reactive-power, LVRT and multifunction-relay settings. Several reactive power and LVRT registers are marked 'Not available' in this revision.",
  "Unused addresses return 0xFF bytes rather than an exception."
 ],
 "registers": [
  {
   "table": "holding_register",
   "address": 1,
   "documented": "0x0001 - 0x0009",
   "name": "Product model designation",
   "description": "Inverter + BOS model as null-terminated ASCII, e.g. PVSCL25E301E.",
   "data_type": "STRING",
   "length": 9,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 20,
   "documented": "0x0014 - 0x001D",
   "name": "Product serial number",
   "description": "Null-terminated ASCII.",
   "data_type": "STRING",
   "length": 10,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40,
   "documented": "0x0028 - 0x0031",
   "name": "Inverter model designation",
   "description": "Null-terminated ASCII, e.g. PVSCL25E.",
   "data_type": "STRING",
   "length": 10,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 2050,
   "documented": "0x0802 (H word) - 0x0803 (L word)",
   "name": "Energy produced (lifetime)",
   "description": "Energy produced since commissioning.",
   "data_type": "UINT32",
   "length": 2,
   "word_order": "ABCD",
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kWh",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5888,
   "documented": "0x1700",
   "name": "Operational mode state",
   "description": "Vendor operating state (hex codes 15h-17h).",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": {
    "2": "Reconnecting to grid",
    "3": "Online and producing power",
    "21": "No PV (15h)",
    "22": "Offline due to services/errors (16h)",
    "23": "Power derate (17h)"
   },
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5889,
   "documented": "0x1701",
   "name": "Control board temperature (ambient)",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "°C",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5890,
   "documented": "0x1702",
   "name": "DC module 1-2 temperature",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "°C",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5891,
   "documented": "0x1703",
   "name": "DC module 3-4 temperature",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "°C",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5893,
   "documented": "0x1705",
   "name": "Grid current (sum of phases)",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "A",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5894,
   "documented": "0x1706",
   "name": "Inverter module A temperature",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "°C",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5895,
   "documented": "0x1707",
   "name": "Inverter module B temperature",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "°C",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5896,
   "documented": "0x1708",
   "name": "Inverter module C temperature",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "°C",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5897,
   "documented": "0x1709",
   "name": "Phase A to neutral voltage",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5898,
   "documented": "0x170A",
   "name": "Phase B to neutral voltage",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 5899,
   "documented": "0x170B",
   "name": "Phase C to neutral voltage",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6129,
   "documented": "0x17F1",
   "name": "Grid apparent power",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kVA",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6132,
   "documented": "0x17F4",
   "name": "Grid reactive power",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kvar",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6136,
   "documented": "0x17F8",
   "name": "Grid voltage L1-L2",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6137,
   "documented": "0x17F9",
   "name": "Grid voltage L2-L3",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6138,
   "documented": "0x17FA",
   "name": "Grid voltage L3-L1",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6139,
   "documented": "0x17FB",
   "name": "Grid current L1",
   "description": "Inverter phase A output current.",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "A",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6140,
   "documented": "0x17FC",
   "name": "Grid current L2",
   "description": "Inverter phase B output current.",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "A",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6141,
   "documented": "0x17FD",
   "name": "Grid current L3",
   "description": "Inverter phase C output current.",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "A",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6142,
   "documented": "0x17FE",
   "name": "Active power",
   "description": "Inverter real output power.",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kW",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6143,
   "documented": "0x17FF",
   "name": "PV1 voltage",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6144,
   "documented": "0x1800",
   "name": "PV1 current",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "A",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6145,
   "documented": "0x1801",
   "name": "PV1 power",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kW",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6146,
   "documented": "0x1802",
   "name": "Grid frequency",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "Hz",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6168,
   "documented": "0x1818",
   "name": "Phase A frequency",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "Hz",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6169,
   "documented": "0x1819",
   "name": "Phase B frequency",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "Hz",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6170,
   "documented": "0x181A",
   "name": "Phase C frequency",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "Hz",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6171,
   "documented": "0x181B",
   "name": "Phase A real power",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kW",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6172,
   "documented": "0x181C",
   "name": "Phase B real power",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kW",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6173,
   "documented": "0x181D",
   "name": "Phase C real power",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kW",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6184,
   "documented": "0x1828",
   "name": "Inverter alarm code",
   "description": "Active alarm number; 0000 = none. Code table is in section 4 of the map.",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6185,
   "documented": "0x1829",
   "name": "PV2 voltage",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "V",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6186,
   "documented": "0x182A",
   "name": "PV2 current",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "A",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 6191,
   "documented": "0x182F",
   "name": "PV2 power",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kW",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 32771,
   "documented": "0x8003",
   "name": "Modbus slave address",
   "description": "1-247, default 10; power-cycle the unit to apply.",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "RW",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 32784,
   "documented": "0x8010",
   "name": "Modbus baud rate",
   "description": "May need a power cycle to apply.",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "RW",
   "values": {
    "0": "9600",
    "1": "19200",
    "2": "38400",
    "3": "57600",
    "4": "115200"
   },
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40072,
   "documented": "0x9C88",
   "name": "SunSpec AC current",
   "description": "Total AC current (SunSpec model 103).",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": {
    "table": "holding_register",
    "address": 40076
   },
   "units": "A",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40076,
   "documented": "0x9C8C",
   "name": "SunSpec AC current scale factor",
   "description": "Power-of-ten exponent for 0x9C88-0x9C8B; documented as -1.",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40084,
   "documented": "0x9C94",
   "name": "SunSpec AC power",
   "description": "",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": {
    "table": "holding_register",
    "address": 40085
   },
   "units": "W",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40085,
   "documented": "0x9C95",
   "name": "SunSpec AC power scale factor",
   "description": "Power-of-ten exponent for 0x9C94; documented as 2.",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40086,
   "documented": "0x9C96",
   "name": "SunSpec AC frequency",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": {
    "table": "holding_register",
    "address": 40087
   },
   "units": "Hz",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40087,
   "documented": "0x9C97",
   "name": "SunSpec AC frequency scale factor",
   "description": "Power-of-ten exponent for 0x9C96; documented as -1.",
   "data_type": "INT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 40108,
   "documented": "0x9CAC",
   "name": "SunSpec operating status",
   "description": "",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "R",
   "values": {
    "1": "Off",
    "3": "Starting",
    "4": "MPPT",
    "5": "Throttled",
    "7": "Fault"
   },
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 61438,
   "documented": "0xEFFE",
   "name": "Remote disable/enable",
   "description": "Write a command code to reset the inverter or take it off/on line.",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "RW",
   "values": {
    "0": "Normal operation (default after reboot)",
    "27458": "Reset inverter (0x6B42, no reply)",
    "27459": "Inverter offline (0x6B43)",
    "27460": "Inverter online (0x6B44)"
   },
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 64025,
   "documented": "0xFA19",
   "name": "User active power limit",
   "description": "Output power cap, 0-25 kW entered as 0-250.",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 0.1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "kW",
   "access": "RW",
   "values": null,
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 64144,
   "documented": "0xFA90",
   "name": "Inverter mode",
   "description": "Grid-tie or local-consumption (PV hybrid) behaviour.",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "",
   "access": "RW",
   "values": {
    "0": "Grid tie mode (default)",
    "27461": "Local consumption mode (0x6B45)"
   },
   "bits": null
  },
  {
   "table": "holding_register",
   "address": 64241,
   "documented": "0xFAF1",
   "name": "User active power percentage",
   "description": "Output power cap as % of rating, default 100.",
   "data_type": "UINT16",
   "length": 1,
   "word_order": null,
   "scale": 1,
   "offset": 0,
   "scale_factor_ref": null,
   "units": "%",
   "access": "RW",
   "values": null,
   "bits": null
  }
 ],
 "integration": {
  "summary": "Read 0x1700 for the operating state, 0x1828 for the alarm, 0x17FE for output power and 0x0802 for lifetime energy with function 3. Limit export by writing 0xFA19 (kW x10) or 0xFAF1 (%), and switch the inverter off or on line by writing 0x6B43 / 0x6B44 to 0xEFFE.",
  "minimum_registers": [
   {
    "table": "holding_register",
    "address": 5888,
    "why": "Operating state"
   },
   {
    "table": "holding_register",
    "address": 6184,
    "why": "Active alarm code"
   },
   {
    "table": "holding_register",
    "address": 6142,
    "why": "AC output power"
   },
   {
    "table": "holding_register",
    "address": 2050,
    "why": "Lifetime energy"
   },
   {
    "table": "holding_register",
    "address": 6146,
    "why": "Grid frequency"
   },
   {
    "table": "holding_register",
    "address": 6139,
    "why": "Phase L1 current"
   },
   {
    "table": "holding_register",
    "address": 64241,
    "why": "Active power limit %"
   },
   {
    "table": "holding_register",
    "address": 61438,
    "why": "Remote on/off command"
   }
  ],
  "enable": "No enable step is described; the RS-485 port answers at the configured address (default 10). Modbus TCP needs the IP address, port 502 and slave address.",
  "watchdog": null,
  "quirks": [
   "Supported functions: 03, 06, 16 and 43 (read device identification).",
   "Addresses are 0-based hex; do not add 40001.",
   "Broadcast writes (slave 0) work on RTU only and are meant for Schneider monitoring devices.",
   "Writing 0x6B42 (reset) to 0xEFFE gets no reply because the inverter restarts."
  ],
  "setup": [
   "Serial default: 9600 baud, 8 data bits, no parity, 1 stop bit; 19200-115200, even/odd parity and 2 stop bits can be selected.",
   "A new slave address (0x8003) only takes effect after a power cycle; a new baud rate (0x8010) may need one too."
  ],
  "gotchas": [
   "Unused register locations read 0xFF instead of raising an exception, so a wrong address looks like data.",
   "0xEFFE reads 0000 again after the inverter reboots; re-check the state in 0x1700 rather than trusting the last command written."
  ]
 },
 "page": "https://easymodbus.com/modbus-register-maps/schneider-electric/conext-cl",
 "address_note": "address = 0-based Modbus wire (PDU) address; documented = as printed in the source.",
 "note": "Re-typed from the manufacturer's public documentation (see source) and verified against it. Registers vary by firmware and options; verify against the live device before writing."
}
