{
  "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json",
  "mbmap": 2,
  "vendor": "Entes",
  "model": "EPC-12",
  "models": [
    "EPC-12"
  ],
  "vendor_website": "entes.com.tr",
  "description": "12-input pulse concentrator/data logger with Modbus RTU: 64-bit total counters, 8 tariff counters per input, clock and status, communication and counter settings, identification.",
  "revision": 3,
  "revised": "2026-11-10",
  "sources": [
    {
      "title": "EPC-12 Modbus register table (Turkish)",
      "version": "2012",
      "url": "https://www.entes.com.tr/uploads/files/EPC-12_Modbus_register_tablosu_TR-969.pdf",
      "note": "manufacturer's register table; EPC-12 manual (Conrad copy of the English manual) confirms 64-bit total counters"
    }
  ],
  "notes": [
    "Total counters are 64-bit (4 registers), tariff counters 32-bit (2 registers); both can be written.",
    "The annual, holiday and weekly tariff schedules (32848-32959) are in the table but not mapped here.",
    "The table does not state word order; high word first assumed. Not tested on a device."
  ],
  "byte_order": "big",
  "word_order": "big",
  "address_base": 0,
  "x_status": "official",
  "registers": [
    {"name": "IN1 total counter", "area": "holding", "address": 0, "type": "uint64", "access": "RW"},
    {"name": "IN2 total counter", "area": "holding", "address": 4, "type": "uint64", "access": "RW"},
    {"name": "IN3 total counter", "area": "holding", "address": 8, "type": "uint64", "access": "RW"},
    {"name": "IN4 total counter", "area": "holding", "address": 12, "type": "uint64", "access": "RW"},
    {"name": "IN5 total counter", "area": "holding", "address": 16, "type": "uint64", "access": "RW"},
    {"name": "IN6 total counter", "area": "holding", "address": 20, "type": "uint64", "access": "RW"},
    {"name": "IN7 total counter", "area": "holding", "address": 24, "type": "uint64", "access": "RW"},
    {"name": "IN8 total counter", "area": "holding", "address": 28, "type": "uint64", "access": "RW"},
    {"name": "IN9 total counter", "area": "holding", "address": 32, "type": "uint64", "access": "RW"},
    {"name": "IN10 total counter", "area": "holding", "address": 36, "type": "uint64", "access": "RW"},
    {"name": "IN11 total counter", "area": "holding", "address": 40, "type": "uint64", "access": "RW"},
    {"name": "IN12 total counter", "area": "holding", "address": 44, "type": "uint64", "access": "RW"},
    {"name": "IN1 T1 tariff counter", "area": "holding", "address": 48, "type": "uint32", "access": "RW"},
    {"name": "IN2 T1 tariff counter", "area": "holding", "address": 50, "type": "uint32", "access": "RW"},
    {"name": "IN3 T1 tariff counter", "area": "holding", "address": 52, "type": "uint32", "access": "RW"},
    {"name": "IN4 T1 tariff counter", "area": "holding", "address": 54, "type": "uint32", "access": "RW"},
    {"name": "IN5 T1 tariff counter", "area": "holding", "address": 56, "type": "uint32", "access": "RW"},
    {"name": "IN6 T1 tariff counter", "area": "holding", "address": 58, "type": "uint32", "access": "RW"},
    {"name": "IN7 T1 tariff counter", "area": "holding", "address": 60, "type": "uint32", "access": "RW"},
    {"name": "IN8 T1 tariff counter", "area": "holding", "address": 62, "type": "uint32", "access": "RW"},
    {"name": "IN9 T1 tariff counter", "area": "holding", "address": 64, "type": "uint32", "access": "RW"},
    {"name": "IN10 T1 tariff counter", "area": "holding", "address": 66, "type": "uint32", "access": "RW"},
    {"name": "IN11 T1 tariff counter", "area": "holding", "address": 68, "type": "uint32", "access": "RW"},
    {"name": "IN12 T1 tariff counter", "area": "holding", "address": 70, "type": "uint32", "access": "RW"},
    {"name": "IN1 T2 tariff counter", "area": "holding", "address": 72, "type": "uint32", "access": "RW"},
    {"name": "IN2 T2 tariff counter", "area": "holding", "address": 74, "type": "uint32", "access": "RW"},
    {"name": "IN3 T2 tariff counter", "area": "holding", "address": 76, "type": "uint32", "access": "RW"},
    {"name": "IN4 T2 tariff counter", "area": "holding", "address": 78, "type": "uint32", "access": "RW"},
    {"name": "IN5 T2 tariff counter", "area": "holding", "address": 80, "type": "uint32", "access": "RW"},
    {"name": "IN6 T2 tariff counter", "area": "holding", "address": 82, "type": "uint32", "access": "RW"},
    {"name": "IN7 T2 tariff counter", "area": "holding", "address": 84, "type": "uint32", "access": "RW"},
    {"name": "IN8 T2 tariff counter", "area": "holding", "address": 86, "type": "uint32", "access": "RW"},
    {"name": "IN9 T2 tariff counter", "area": "holding", "address": 88, "type": "uint32", "access": "RW"},
    {"name": "IN10 T2 tariff counter", "area": "holding", "address": 90, "type": "uint32", "access": "RW"},
    {"name": "IN11 T2 tariff counter", "area": "holding", "address": 92, "type": "uint32", "access": "RW"},
    {"name": "IN12 T2 tariff counter", "area": "holding", "address": 94, "type": "uint32", "access": "RW"},
    {"name": "IN1 T3 tariff counter", "area": "holding", "address": 96, "type": "uint32", "access": "RW"},
    {"name": "IN2 T3 tariff counter", "area": "holding", "address": 98, "type": "uint32", "access": "RW"},
    {"name": "IN3 T3 tariff counter", "area": "holding", "address": 100, "type": "uint32", "access": "RW"},
    {"name": "IN4 T3 tariff counter", "area": "holding", "address": 102, "type": "uint32", "access": "RW"},
    {"name": "IN5 T3 tariff counter", "area": "holding", "address": 104, "type": "uint32", "access": "RW"},
    {"name": "IN6 T3 tariff counter", "area": "holding", "address": 106, "type": "uint32", "access": "RW"},
    {"name": "IN7 T3 tariff counter", "area": "holding", "address": 108, "type": "uint32", "access": "RW"},
    {"name": "IN8 T3 tariff counter", "area": "holding", "address": 110, "type": "uint32", "access": "RW"},
    {"name": "IN9 T3 tariff counter", "area": "holding", "address": 112, "type": "uint32", "access": "RW"},
    {"name": "IN10 T3 tariff counter", "area": "holding", "address": 114, "type": "uint32", "access": "RW"},
    {"name": "IN11 T3 tariff counter", "area": "holding", "address": 116, "type": "uint32", "access": "RW"},
    {"name": "IN12 T3 tariff counter", "area": "holding", "address": 118, "type": "uint32", "access": "RW"},
    {"name": "IN1 T4 tariff counter", "area": "holding", "address": 120, "type": "uint32", "access": "RW"},
    {"name": "IN2 T4 tariff counter", "area": "holding", "address": 122, "type": "uint32", "access": "RW"},
    {"name": "IN3 T4 tariff counter", "area": "holding", "address": 124, "type": "uint32", "access": "RW"},
    {"name": "IN4 T4 tariff counter", "area": "holding", "address": 126, "type": "uint32", "access": "RW"},
    {"name": "IN5 T4 tariff counter", "area": "holding", "address": 128, "type": "uint32", "access": "RW"},
    {"name": "IN6 T4 tariff counter", "area": "holding", "address": 130, "type": "uint32", "access": "RW"},
    {"name": "IN7 T4 tariff counter", "area": "holding", "address": 132, "type": "uint32", "access": "RW"},
    {"name": "IN8 T4 tariff counter", "area": "holding", "address": 134, "type": "uint32", "access": "RW"},
    {"name": "IN9 T4 tariff counter", "area": "holding", "address": 136, "type": "uint32", "access": "RW"},
    {"name": "IN10 T4 tariff counter", "area": "holding", "address": 138, "type": "uint32", "access": "RW"},
    {"name": "IN11 T4 tariff counter", "area": "holding", "address": 140, "type": "uint32", "access": "RW"},
    {"name": "IN12 T4 tariff counter", "area": "holding", "address": 142, "type": "uint32", "access": "RW"},
    {"name": "IN1 T5 tariff counter", "area": "holding", "address": 144, "type": "uint32", "access": "RW"},
    {"name": "IN2 T5 tariff counter", "area": "holding", "address": 146, "type": "uint32", "access": "RW"},
    {"name": "IN3 T5 tariff counter", "area": "holding", "address": 148, "type": "uint32", "access": "RW"},
    {"name": "IN4 T5 tariff counter", "area": "holding", "address": 150, "type": "uint32", "access": "RW"},
    {"name": "IN5 T5 tariff counter", "area": "holding", "address": 152, "type": "uint32", "access": "RW"},
    {"name": "IN6 T5 tariff counter", "area": "holding", "address": 154, "type": "uint32", "access": "RW"},
    {"name": "IN7 T5 tariff counter", "area": "holding", "address": 156, "type": "uint32", "access": "RW"},
    {"name": "IN8 T5 tariff counter", "area": "holding", "address": 158, "type": "uint32", "access": "RW"},
    {"name": "IN9 T5 tariff counter", "area": "holding", "address": 160, "type": "uint32", "access": "RW"},
    {"name": "IN10 T5 tariff counter", "area": "holding", "address": 162, "type": "uint32", "access": "RW"},
    {"name": "IN11 T5 tariff counter", "area": "holding", "address": 164, "type": "uint32", "access": "RW"},
    {"name": "IN12 T5 tariff counter", "area": "holding", "address": 166, "type": "uint32", "access": "RW"},
    {"name": "IN1 T6 tariff counter", "area": "holding", "address": 168, "type": "uint32", "access": "RW"},
    {"name": "IN2 T6 tariff counter", "area": "holding", "address": 170, "type": "uint32", "access": "RW"},
    {"name": "IN3 T6 tariff counter", "area": "holding", "address": 172, "type": "uint32", "access": "RW"},
    {"name": "IN4 T6 tariff counter", "area": "holding", "address": 174, "type": "uint32", "access": "RW"},
    {"name": "IN5 T6 tariff counter", "area": "holding", "address": 176, "type": "uint32", "access": "RW"},
    {"name": "IN6 T6 tariff counter", "area": "holding", "address": 178, "type": "uint32", "access": "RW"},
    {"name": "IN7 T6 tariff counter", "area": "holding", "address": 180, "type": "uint32", "access": "RW"},
    {"name": "IN8 T6 tariff counter", "area": "holding", "address": 182, "type": "uint32", "access": "RW"},
    {"name": "IN9 T6 tariff counter", "area": "holding", "address": 184, "type": "uint32", "access": "RW"},
    {"name": "IN10 T6 tariff counter", "area": "holding", "address": 186, "type": "uint32", "access": "RW"},
    {"name": "IN11 T6 tariff counter", "area": "holding", "address": 188, "type": "uint32", "access": "RW"},
    {"name": "IN12 T6 tariff counter", "area": "holding", "address": 190, "type": "uint32", "access": "RW"},
    {"name": "IN1 T7 tariff counter", "area": "holding", "address": 192, "type": "uint32", "access": "RW"},
    {"name": "IN2 T7 tariff counter", "area": "holding", "address": 194, "type": "uint32", "access": "RW"},
    {"name": "IN3 T7 tariff counter", "area": "holding", "address": 196, "type": "uint32", "access": "RW"},
    {"name": "IN4 T7 tariff counter", "area": "holding", "address": 198, "type": "uint32", "access": "RW"},
    {"name": "IN5 T7 tariff counter", "area": "holding", "address": 200, "type": "uint32", "access": "RW"},
    {"name": "IN6 T7 tariff counter", "area": "holding", "address": 202, "type": "uint32", "access": "RW"},
    {"name": "IN7 T7 tariff counter", "area": "holding", "address": 204, "type": "uint32", "access": "RW"},
    {"name": "IN8 T7 tariff counter", "area": "holding", "address": 206, "type": "uint32", "access": "RW"},
    {"name": "IN9 T7 tariff counter", "area": "holding", "address": 208, "type": "uint32", "access": "RW"},
    {"name": "IN10 T7 tariff counter", "area": "holding", "address": 210, "type": "uint32", "access": "RW"},
    {"name": "IN11 T7 tariff counter", "area": "holding", "address": 212, "type": "uint32", "access": "RW"},
    {"name": "IN12 T7 tariff counter", "area": "holding", "address": 214, "type": "uint32", "access": "RW"},
    {"name": "IN1 T8 tariff counter", "area": "holding", "address": 216, "type": "uint32", "access": "RW"},
    {"name": "IN2 T8 tariff counter", "area": "holding", "address": 218, "type": "uint32", "access": "RW"},
    {"name": "IN3 T8 tariff counter", "area": "holding", "address": 220, "type": "uint32", "access": "RW"},
    {"name": "IN4 T8 tariff counter", "area": "holding", "address": 222, "type": "uint32", "access": "RW"},
    {"name": "IN5 T8 tariff counter", "area": "holding", "address": 224, "type": "uint32", "access": "RW"},
    {"name": "IN6 T8 tariff counter", "area": "holding", "address": 226, "type": "uint32", "access": "RW"},
    {"name": "IN7 T8 tariff counter", "area": "holding", "address": 228, "type": "uint32", "access": "RW"},
    {"name": "IN8 T8 tariff counter", "area": "holding", "address": 230, "type": "uint32", "access": "RW"},
    {"name": "IN9 T8 tariff counter", "area": "holding", "address": 232, "type": "uint32", "access": "RW"},
    {"name": "IN10 T8 tariff counter", "area": "holding", "address": 234, "type": "uint32", "access": "RW"},
    {"name": "IN11 T8 tariff counter", "area": "holding", "address": 236, "type": "uint32", "access": "RW"},
    {"name": "IN12 T8 tariff counter", "area": "holding", "address": 238, "type": "uint32", "access": "RW"},
    {"name": "RTC day", "area": "holding", "address": 240, "type": "uint16", "access": "R"},
    {"name": "RTC month", "area": "holding", "address": 241, "type": "uint16", "access": "R"},
    {"name": "RTC year", "area": "holding", "address": 242, "type": "uint16", "access": "R"},
    {"name": "RTC hour", "area": "holding", "address": 243, "type": "uint16", "access": "R"},
    {"name": "RTC minute", "area": "holding", "address": 244, "type": "uint16", "access": "R"},
    {"name": "RTC second", "area": "holding", "address": 245, "type": "uint16", "access": "R"},
    {"name": "Day of week", "area": "holding", "address": 246, "type": "uint16", "access": "R"},
    {"name": "Active tariff", "area": "holding", "address": 247, "type": "uint16", "access": "R"},
    {"name": "Next write block number", "area": "holding", "address": 248, "type": "uint16", "access": "R"},
    {"name": "Alarm status", "area": "holding", "address": 249, "type": "uint16", "access": "R"},
    {"name": "Baud rate", "area": "holding", "address": 32768, "type": "uint16", "access": "RW"},
    {"name": "Parity", "area": "holding", "address": 32769, "type": "uint16", "access": "RW"},
    {"name": "Modbus address", "area": "holding", "address": 32770, "type": "uint16", "access": "RW"},
    {"name": "Password", "area": "holding", "address": 32771, "type": "uint16", "access": "RW"},
    {"name": "Password enable", "area": "holding", "address": 32772, "type": "uint16", "access": "RW"},
    {"name": "Flash record period", "area": "holding", "address": 32773, "type": "uint16", "access": "RW"},
    {"name": "Daylight saving enable", "area": "holding", "address": 32774, "type": "uint16", "access": "RW"},
    {"name": "IN1 pulse multiplier", "area": "holding", "address": 32775, "type": "uint16", "access": "RW"},
    {"name": "IN2 pulse multiplier", "area": "holding", "address": 32776, "type": "uint16", "access": "RW"},
    {"name": "IN3 pulse multiplier", "area": "holding", "address": 32777, "type": "uint16", "access": "RW"},
    {"name": "IN4 pulse multiplier", "area": "holding", "address": 32778, "type": "uint16", "access": "RW"},
    {"name": "IN5 pulse multiplier", "area": "holding", "address": 32779, "type": "uint16", "access": "RW"},
    {"name": "IN6 pulse multiplier", "area": "holding", "address": 32780, "type": "uint16", "access": "RW"},
    {"name": "IN7 pulse multiplier", "area": "holding", "address": 32781, "type": "uint16", "access": "RW"},
    {"name": "IN8 pulse multiplier", "area": "holding", "address": 32782, "type": "uint16", "access": "RW"},
    {"name": "IN9 pulse multiplier", "area": "holding", "address": 32783, "type": "uint16", "access": "RW"},
    {"name": "IN10 pulse multiplier", "area": "holding", "address": 32784, "type": "uint16", "access": "RW"},
    {"name": "IN11 pulse multiplier", "area": "holding", "address": 32785, "type": "uint16", "access": "RW"},
    {"name": "IN12 pulse multiplier", "area": "holding", "address": 32786, "type": "uint16", "access": "RW"},
    {"name": "IN1 pulse divisor", "area": "holding", "address": 32787, "type": "uint16", "access": "RW"},
    {"name": "IN2 pulse divisor", "area": "holding", "address": 32788, "type": "uint16", "access": "RW"},
    {"name": "IN3 pulse divisor", "area": "holding", "address": 32789, "type": "uint16", "access": "RW"},
    {"name": "IN4 pulse divisor", "area": "holding", "address": 32790, "type": "uint16", "access": "RW"},
    {"name": "IN5 pulse divisor", "area": "holding", "address": 32791, "type": "uint16", "access": "RW"},
    {"name": "IN6 pulse divisor", "area": "holding", "address": 32792, "type": "uint16", "access": "RW"},
    {"name": "IN7 pulse divisor", "area": "holding", "address": 32793, "type": "uint16", "access": "RW"},
    {"name": "IN8 pulse divisor", "area": "holding", "address": 32794, "type": "uint16", "access": "RW"},
    {"name": "IN9 pulse divisor", "area": "holding", "address": 32795, "type": "uint16", "access": "RW"},
    {"name": "IN10 pulse divisor", "area": "holding", "address": 32796, "type": "uint16", "access": "RW"},
    {"name": "IN11 pulse divisor", "area": "holding", "address": 32797, "type": "uint16", "access": "RW"},
    {"name": "IN12 pulse divisor", "area": "holding", "address": 32798, "type": "uint16", "access": "RW"},
    {"name": "IN1 unit", "area": "holding", "address": 32799, "type": "uint16", "access": "RW"},
    {"name": "IN2 unit", "area": "holding", "address": 32800, "type": "uint16", "access": "RW"},
    {"name": "IN3 unit", "area": "holding", "address": 32801, "type": "uint16", "access": "RW"},
    {"name": "IN4 unit", "area": "holding", "address": 32802, "type": "uint16", "access": "RW"},
    {"name": "IN5 unit", "area": "holding", "address": 32803, "type": "uint16", "access": "RW"},
    {"name": "IN6 unit", "area": "holding", "address": 32804, "type": "uint16", "access": "RW"},
    {"name": "IN7 unit", "area": "holding", "address": 32805, "type": "uint16", "access": "RW"},
    {"name": "IN8 unit", "area": "holding", "address": 32806, "type": "uint16", "access": "RW"},
    {"name": "IN9 unit", "area": "holding", "address": 32807, "type": "uint16", "access": "RW"},
    {"name": "IN10 unit", "area": "holding", "address": 32808, "type": "uint16", "access": "RW"},
    {"name": "IN11 unit", "area": "holding", "address": 32809, "type": "uint16", "access": "RW"},
    {"name": "IN12 unit", "area": "holding", "address": 32810, "type": "uint16", "access": "RW"},
    {"name": "Set day", "area": "holding", "address": 32811, "type": "uint16", "access": "RW"},
    {"name": "Set month", "area": "holding", "address": 32812, "type": "uint16", "access": "RW"},
    {"name": "Set year", "area": "holding", "address": 32813, "type": "uint16", "access": "RW"},
    {"name": "Set hour", "area": "holding", "address": 32814, "type": "uint16", "access": "RW"},
    {"name": "Set minute", "area": "holding", "address": 32815, "type": "uint16", "access": "RW"},
    {"name": "Set second", "area": "holding", "address": 32816, "type": "uint16", "access": "RW"},
    {"name": "Set day of week", "area": "holding", "address": 32817, "type": "uint16", "access": "RW"},
    {"name": "Device ID", "area": "holding", "address": 60416, "type": "uint16", "access": "R", "reference": "0xD201"},
    {"name": "Device ID version", "area": "holding", "address": 60417, "type": "uint16", "access": "R"},
    {"name": "Serial number high", "area": "holding", "address": 60418, "type": "uint16", "access": "R"},
    {"name": "Serial number low", "area": "holding", "address": 60419, "type": "uint16", "access": "R"}
  ]
}
