{
 "manufacturer": "Grundfos",
 "manufacturer_slug": "grundfos",
 "model": "Level Control LC 2X2 (CIM 300 / CIM 500)",
 "model_slug": "lc-2x2-level-control",
 "aliases": [
  "LC 2X2",
  "LC2X2",
  "Grundfos LC 2X2",
  "Level Control LC 2X2",
  "CIM 300",
  "CIM 500",
  "CIU 300",
  "CIU 500"
 ],
 "equipment_type": "Submersible pump level controller",
 "applies_to": "Grundfos Level Control LC 2X2 controllers for submersible pump pits, fitted with a CIM 300 (BACnet MS/TP) or CIM 500 (BACnet IP) module.",
 "summary": "The LC 2X2 controls up to two submersible pumps from a level sensor or float switches. With a CIM 300 or CIM 500 module it exposes a fixed object list: pit level, energy, flow and water-quality readings, daily run-time counters, per-pump status inputs, an overall system status, writable level setpoints in centimetres and a multistate Auto/Forced start/Forced stop command per pump.",
 "bacnet_transport": [
  "BACnet MS/TP",
  "BACnet IP"
 ],
 "firmware": "CIM 300 V04.20.00 / CIM 500 V06.16 (as stated in the PICS)",
 "default_device_instance": null,
 "access_inferred": false,
 "notes": [
  "Object list from section 4.4 of the PICS (pages 24-26). Compared with the LC 2X1 it adds AV 2, BO 1, MI 2, AI 30-38 and BI 34-35, and drops the 16 user digital inputs (BI 18-33).",
  "AI 37/AI 38 (start counters today) are printed with unit 'min' and the same note as the run-time objects; listed as printed.",
  "The same object table is printed in the CIM 500 PICS (98690071, https://api.grundfos.com/literature/Grundfosliterature-6226722.pdf); CIM 300 gives BACnet MS/TP and CIM 500 BACnet IP.",
  "AI 39 bits 0-4 are warnings 1-5 and bits 8-12 alarms 1-5. AI 40 flags fitted sensors: bit 0 flow, 1 power/energy, 2-6 AI sensors 1-5, 7 turbidity, 8 pH, 9 conductivity, 10 pulse flow meter, 11 pressure, 12 level."
 ],
 "integration": {
  "summary": "Read the operating state (MI 0), pit level (AI 6) and the per-pump running and alarm inputs, and use MO 0/MO 1 to put each pump in Auto, Forced start or Forced stop. Alarms are reset with BO 0. The start, stop, high and dry-running levels can be written in centimetres through AO 0-4.",
  "minimum_points": [
   {
    "ref": "MO 0",
    "name": "Control Pump 1",
    "why": "Pump 1: 1 = Auto, 2 = Forced start, 3 = Forced stop"
   },
   {
    "ref": "MO 1",
    "name": "Control Pump 2",
    "why": "Pump 2: 1 = Auto, 2 = Forced start, 3 = Forced stop"
   },
   {
    "ref": "BO 0",
    "name": "Reset alarms",
    "why": "Alarm reset (1 = reset)"
   },
   {
    "ref": "MI 0",
    "name": "System Operating Mode",
    "why": "Operating state: standby, pumping, alarm states..."
   },
   {
    "ref": "AI 6",
    "name": "Pit water level",
    "why": "Pit level in cm"
   },
   {
    "ref": "BI 8",
    "name": "Pump1Running",
    "why": "Pump 1 running status"
   },
   {
    "ref": "BI 9",
    "name": "Pump2Running",
    "why": "Pump 2 running status"
   },
   {
    "ref": "BI 12",
    "name": "Pump1Alarm",
    "why": "Pump 1 alarm"
   },
   {
    "ref": "BI 13",
    "name": "Pump2Alarm",
    "why": "Pump 2 alarm"
   },
   {
    "ref": "AI 0",
    "name": "Fault code",
    "why": "Active Grundfos fault code"
   }
  ],
  "enable": null,
  "heartbeat": null,
  "remote_sensors": null,
  "setup": [
   "CIM 300 is a BACnet MS/TP master at 9600, 19200, 38400 or 76800 baud; CIM 500 uses BACnet IP (Annex J).",
   "AV 0 lets the BMS set a custom device instance (0-0x3FFFFE).",
   "The CIM module fits inside the controller or in an external CIU box; the object list is the same either way.",
   "The PICS states that segmentation is not supported."
  ],
  "gotchas": [
   "The level setpoints AO 0-4 are stored settings; write them only when they change, not cyclically.",
   "Pump 2 has a start-level object (AO 4) but no stop-level object in this table.",
   "AI 0/AI 1 are Grundfos fault and warning codes; decode them with the LC manual.",
   "BI 35 Control Status shows whether the controller is in auto or manual control."
  ]
 },
 "source": {
  "title": "BACnet PICS CIM 300 - Supplement (pumps, booster systems, Level Control LC 2X1 and LC 2X2)",
  "doc_number": "97750025",
  "revision_date": "05.2021",
  "url": "https://api.grundfos.com/literature/Grundfosliterature-6013137.pdf"
 },
 "points": [
  {
   "type": "AV",
   "instance": 0,
   "name": "Custom device object instance number",
   "description": "Custom device instance number (0-0x3FFFFE)",
   "units": "",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 1,
   "name": "Product time and date",
   "description": "Controller clock, UNIX time",
   "units": "s",
   "access": "W",
   "states": ""
  },
  {
   "type": "AV",
   "instance": 2,
   "name": "CIMSoftwareVersion",
   "description": "CIM module software version (decimal)",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BO",
   "instance": 0,
   "name": "Reset alarms",
   "description": "Resets alarms (1 = reset)",
   "units": "",
   "access": "W",
   "states": "0=No resetting, 1=Resetting alarms"
  },
  {
   "type": "BO",
   "instance": 1,
   "name": "Reset EventLog",
   "description": "Resets the event log (1 = reset)",
   "units": "",
   "access": "W",
   "states": "0=No resetting, 1=Resetting alarms"
  },
  {
   "type": "MO",
   "instance": 0,
   "name": "Control Pump 1",
   "description": "Pump 1 command: auto, forced start or forced stop",
   "units": "",
   "access": "W",
   "states": "1=Auto, 2=Forced Start, 3=Forced Stop"
  },
  {
   "type": "MO",
   "instance": 1,
   "name": "Control Pump 2",
   "description": "Pump 2 command: auto, forced start or forced stop",
   "units": "",
   "access": "W",
   "states": "1=Auto, 2=Forced Start, 3=Forced Stop"
  },
  {
   "type": "AO",
   "instance": 0,
   "name": "SetHighLevel",
   "description": "Set high level",
   "units": "cm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 1,
   "name": "SetDryRunningLevel",
   "description": "Set dry running level",
   "units": "cm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 2,
   "name": "SetStartLevelPump1",
   "description": "Set start level for pump 1",
   "units": "cm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 3,
   "name": "SetStopLevelPump1",
   "description": "Set stop level for pump 1",
   "units": "cm",
   "access": "W",
   "states": ""
  },
  {
   "type": "AO",
   "instance": 4,
   "name": "SetStartLevelPump2",
   "description": "Set start level for pump 2",
   "units": "cm",
   "access": "W",
   "states": ""
  },
  {
   "type": "MI",
   "instance": 0,
   "name": "System Operating Mode",
   "description": "Present operating state of the level controller",
   "units": "",
   "access": "R",
   "states": "0=Standby, 1=Start-up delay, 2=Pumping, 3=Stop delay, 4=Pumping max, 5=Stopped, 6=Foam draining, 7=Daily emptying, 8=Pump anti-seizing, 9=Manual control, 10=Interlock control, 11=Mains failure, 12=Level sensor error, 13=All pumps in alarm, 14=All pumps out of operation, 15=Service mode, alarms suppressed"
  },
  {
   "type": "MI",
   "instance": 1,
   "name": "CIM status",
   "description": "CIM module status",
   "units": "",
   "access": "R",
   "states": "1=OK, 2=EEPROM fault, 3=Memory fault, 4=Unknown"
  },
  {
   "type": "MI",
   "instance": 2,
   "name": "System status",
   "description": "Overall system status",
   "units": "",
   "access": "R",
   "states": "1=System OK, 2=Warnings present, 3=Alarms Present, 4=Unknown"
  },
  {
   "type": "MI",
   "instance": 3,
   "name": "System control sensor type",
   "description": "Sensor type controlling the system",
   "units": "",
   "access": "R",
   "states": "1=Analog level sensor, 2=Float switch, 3=Unknown"
  },
  {
   "type": "AI",
   "instance": 0,
   "name": "Fault code",
   "description": "Grundfos fault code",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 1,
   "name": "Warning code",
   "description": "Grundfos warning code",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 2,
   "name": "HighLevel",
   "description": "High level",
   "units": "cm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 3,
   "name": "StartLevelPump1",
   "description": "Start level for pump 1",
   "units": "cm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 4,
   "name": "StopLevelPump1",
   "description": "Stop level for pump 1",
   "units": "cm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 5,
   "name": "StartLevelPump2",
   "description": "Start level for pump 2",
   "units": "cm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 6,
   "name": "Pit water level",
   "description": "Pit water level",
   "units": "cm",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 7,
   "name": "Pit power consumption",
   "description": "Pit power consumption",
   "units": "W",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 8,
   "name": "Pit energy consumption",
   "description": "Pit energy consumption",
   "units": "kWh",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 9,
   "name": "Pit running time",
   "description": "Pit running time",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 10,
   "name": "Analog Input 1 (AI1)",
   "description": "Analog Input 1",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 11,
   "name": "Analog Input 2 (AI2)",
   "description": "Analog Input 2",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 12,
   "name": "Analog input 3 (AI3)",
   "description": "Analog Input 3",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 13,
   "name": "Pump1 time to service",
   "description": "Pump 1 time to service",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 14,
   "name": "Pump2 time to service",
   "description": "Pump 2 time to service",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 15,
   "name": "Pump1 start counter",
   "description": "Pump 1 start counter",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 16,
   "name": "Pump2 start counter",
   "description": "Pump 2 start counter",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 17,
   "name": "Pump1 current",
   "description": "Pump 1 current",
   "units": "A",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 18,
   "name": "Pump2 current",
   "description": "Pump 2 current",
   "units": "A",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 19,
   "name": "Pump1 operating time",
   "description": "Pump 1 overall operating time",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 20,
   "name": "Pump2 operating time",
   "description": "Pump 2 overall operating time",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 21,
   "name": "UserAnalogInput1",
   "description": "User-defined measurement, analog input 1",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 22,
   "name": "UserAnalogInput2",
   "description": "User-defined measurement, analog input 2",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 23,
   "name": "UserAnalogInput3",
   "description": "User-defined measurement, analog input 3",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 24,
   "name": "UserAnalogInput4",
   "description": "User-defined measurement, analog input 4",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 25,
   "name": "UserAnalogInput5",
   "description": "User-defined measurement, analog input 5",
   "units": "%",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 26,
   "name": "Latest operating time pump1",
   "description": "Pump 1 latest running time",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 27,
   "name": "Latest operating time pump2",
   "description": "Pump 2 latest running time",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 28,
   "name": "Energy consumption pump1",
   "description": "Pump 1 energy consumption",
   "units": "kWh",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 29,
   "name": "Energy consumption pump2",
   "description": "Pump 2 energy consumption",
   "units": "kWh",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 30,
   "name": "System Energy today",
   "description": "System energy used today, 0.1 kWh resolution",
   "units": "kWh",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 31,
   "name": "PulseFlowMeter",
   "description": "Flow from the pulse flow meter",
   "units": "l/s",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 32,
   "name": "Turbidity",
   "description": "Turbidity, 0.1 NTU resolution",
   "units": "NTU",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 33,
   "name": "PhMeasure",
   "description": "pH value, 0.1 pH resolution",
   "units": "pH",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 34,
   "name": "Conductivity",
   "description": "Conductivity, 1 S/m resolution",
   "units": "S/m",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 35,
   "name": "Pump1OprTimeToday",
   "description": "Pump 1 run time today",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 36,
   "name": "Pump2OprTimeToday",
   "description": "Pump 2 run time today",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 37,
   "name": "Pump1StartCounterToday",
   "description": "Pump 1 starts today (unit printed as min)",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 38,
   "name": "Pump2StartCounterToday",
   "description": "Pump 2 starts today (unit printed as min)",
   "units": "min",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 39,
   "name": "Alarms 1-5 and warnings 1-5",
   "description": "Bit-coded: bits 0-4 warnings 1-5, bits 8-12 alarms 1-5",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "AI",
   "instance": 40,
   "name": "Sensor present status",
   "description": "Bit-coded sensor-present flags (bits 0-12)",
   "units": "",
   "access": "R",
   "states": ""
  },
  {
   "type": "BI",
   "instance": 0,
   "name": "AcknowledgeAlarm",
   "description": "Alarm acknowledged",
   "units": "",
   "access": "R",
   "states": "0=Not acknowledged, 1=Acknowledged"
  },
  {
   "type": "BI",
   "instance": 1,
   "name": "FloatSwitch1Status",
   "description": "Float switch 1 state",
   "units": "",
   "access": "R",
   "states": "0=Off (Float switch down), 1=On (Float switch up)"
  },
  {
   "type": "BI",
   "instance": 2,
   "name": "FloatSwitch2Status",
   "description": "Float switch 2 state",
   "units": "",
   "access": "R",
   "states": "0=Off (Float switch down), 1=On (Float switch up)"
  },
  {
   "type": "BI",
   "instance": 3,
   "name": "FloatSwitch3Status",
   "description": "Float switch 3 state",
   "units": "",
   "access": "R",
   "states": "0=Off (Float switch down), 1=On (Float switch up)"
  },
  {
   "type": "BI",
   "instance": 4,
   "name": "FloatSwitch4Status",
   "description": "Float switch 4 state",
   "units": "",
   "access": "R",
   "states": "0=Off (Float switch down), 1=On (Float switch up)"
  },
  {
   "type": "BI",
   "instance": 5,
   "name": "FloatSwitch5Status",
   "description": "Float switch 5 state",
   "units": "",
   "access": "R",
   "states": "0=Off (Float switch down), 1=On (Float switch up)"
  },
  {
   "type": "BI",
   "instance": 6,
   "name": "Pump1Present",
   "description": "Pump 1 fitted/detected",
   "units": "",
   "access": "R",
   "states": "0=Not present, 1=Present"
  },
  {
   "type": "BI",
   "instance": 7,
   "name": "Pump2Present",
   "description": "Pump 2 fitted/detected",
   "units": "",
   "access": "R",
   "states": "0=Not present, 1=Present"
  },
  {
   "type": "BI",
   "instance": 8,
   "name": "Pump1Running",
   "description": "Pump 1 running",
   "units": "",
   "access": "R",
   "states": "0=Not running, 1=Running"
  },
  {
   "type": "BI",
   "instance": 9,
   "name": "Pump2Running",
   "description": "Pump 2 running",
   "units": "",
   "access": "R",
   "states": "0=Not running, 1=Running"
  },
  {
   "type": "BI",
   "instance": 10,
   "name": "Pump1CommFault",
   "description": "Pump 1 communication fault",
   "units": "",
   "access": "R",
   "states": "0=No communication fault, 1=Pump or auxiliary device communication fault"
  },
  {
   "type": "BI",
   "instance": 11,
   "name": "Pump2CommFault",
   "description": "Pump 2 communication fault",
   "units": "",
   "access": "R",
   "states": "0=No communication fault, 1=Pump or auxiliary device communication fault"
  },
  {
   "type": "BI",
   "instance": 12,
   "name": "Pump1Alarm",
   "description": "Pump 1 alarm",
   "units": "",
   "access": "R",
   "states": "0=No alarm, 1=Alarm"
  },
  {
   "type": "BI",
   "instance": 13,
   "name": "Pump2Alarm",
   "description": "Pump 2 alarm",
   "units": "",
   "access": "R",
   "states": "0=No alarm, 1=Alarm"
  },
  {
   "type": "BI",
   "instance": 14,
   "name": "Pump1Warning",
   "description": "Pump 1 warning",
   "units": "",
   "access": "R",
   "states": "0=No warning, 1=Warning"
  },
  {
   "type": "BI",
   "instance": 15,
   "name": "Pump2Warning",
   "description": "Pump 2 warning",
   "units": "",
   "access": "R",
   "states": "0=No warning, 1=Warning"
  },
  {
   "type": "BI",
   "instance": 16,
   "name": "Pump1Disabled",
   "description": "Pump 1 out of operation",
   "units": "",
   "access": "R",
   "states": "0=Enabled, 1=Disabled (Out of operation)"
  },
  {
   "type": "BI",
   "instance": 17,
   "name": "Pump2Disabled",
   "description": "Pump 2 out of operation",
   "units": "",
   "access": "R",
   "states": "0=Enabled, 1=Disabled (Out of operation)"
  },
  {
   "type": "BI",
   "instance": 34,
   "name": "Acknowledge ResetEventLogAlarm",
   "description": "Event log reset acknowledged",
   "units": "",
   "access": "R",
   "states": "0=Not Acknowledged, 1=Acknowledged"
  },
  {
   "type": "BI",
   "instance": 35,
   "name": "Control Status",
   "description": "Auto or manual control",
   "units": "",
   "access": "R",
   "states": "0=Auto control, 1=Manual control"
  }
 ],
 "page": "https://easybacnet.com/bacnet-points-lists/grundfos/lc-2x2-level-control",
 "note": "Provided as-is. Point availability varies by firmware and options; verify against the live device.",
 "disclaimer": "DISCLAIMER: reference only, provided AS IS with no warranty. May contain errors or be out of date. You must verify every point against the manufacturer's current documentation and the live device before use. easybacnet.com accepts no liability for its use and is not affiliated with the manufacturer. Terms: https://easybacnet.com/terms#content"
}
