{ "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json", "mbmap": 2, "vendor": "Kohler", "model": "Decision-Maker 6000", "models": ["Decision-Maker 6000"], "vendor_website": "rehlko.com", "revision": 3, "revised": "2026-11-10", "source": "Kohler, \"Protocol Operation: Modbus Communications Protocol\", TP-6113 12/21; https://techcomm.kohler.com/techcomm/pdf/tp6113.pdf", "notes": [ "Decision-Maker 6000 paralleling generator set controller.", "Addresses are zero-based: the manual register 40001 is address 0.", "The manual limits a read to 50 registers. Only the monitoring part of the register table is in this map.", "Data is available over Modbus RTU (8N1); Modbus TCP needs a Modbus/Ethernet converter." ], "parity": "N", "databits": 8, "stopbits": 1, "max_read_registers": 50, "byte_order": "big", "word_order": "little", "address_base": 0, "x_status": "official", "sources": [ {"title": "Protocol Operation: Modbus Communications Protocol (TP-6113)", "version": "12/21", "date": "2021-12", "url": "https://techcomm.kohler.com/techcomm/pdf/tp6113.pdf", "note": "section 7; register tables also compared with edition 9/14"} ], "registers": [ {"name": "L1-L2 Voltage", "area": "holding", "address": 0, "type": "uint16", "unit": "V", "access": "R"}, {"name": "L2-L3 Voltage", "area": "holding", "address": 1, "type": "uint16", "unit": "V", "access": "R"}, {"name": "L3-L1 Voltage", "area": "holding", "address": 2, "type": "uint16", "unit": "V", "access": "R"}, {"name": "L1-L0 Voltage", "area": "holding", "address": 3, "type": "uint16", "unit": "V", "access": "R"}, {"name": "L2-L0 Voltage", "area": "holding", "address": 4, "type": "uint16", "unit": "V", "access": "R"}, {"name": "L3-L0 Voltage", "area": "holding", "address": 5, "type": "uint16", "unit": "V", "access": "R"}, {"name": "L1 Current", "area": "holding", "address": 6, "type": "uint16", "unit": "A", "access": "R"}, {"name": "L2 Current", "area": "holding", "address": 7, "type": "uint16", "unit": "A", "access": "R"}, {"name": "L3 Current", "area": "holding", "address": 8, "type": "uint16", "unit": "A", "access": "R"}, {"name": "Frequency", "area": "holding", "address": 9, "type": "uint16", "scale": 0.01, "unit": "Hz", "access": "R"}, {"name": "Total kW", "area": "holding", "address": 10, "type": "uint16", "unit": "kW", "access": "R"}, {"name": "Percent of Rated kW", "area": "holding", "address": 11, "type": "uint16", "unit": "%", "access": "R"}, {"name": "Total Power Factor", "area": "holding", "address": 12, "type": "int16", "scale": 0.01, "access": "R"}, {"name": "L1 kW", "area": "holding", "address": 13, "type": "uint16", "unit": "kW", "access": "R"}, {"name": "L1 Power Factor", "area": "holding", "address": 14, "type": "int16", "scale": 0.01, "access": "R"}, {"name": "L2 kW", "area": "holding", "address": 15, "type": "uint16", "unit": "kW", "access": "R"}, {"name": "L2 Power Factor", "area": "holding", "address": 16, "type": "int16", "scale": 0.01, "access": "R"}, {"name": "L3 kW", "area": "holding", "address": 17, "type": "uint16", "unit": "kW", "access": "R"}, {"name": "L3 Power Factor", "area": "holding", "address": 18, "type": "int16", "scale": 0.01, "access": "R"}, {"name": "Total kVAR", "area": "holding", "address": 19, "type": "int16", "unit": "kvar", "access": "R"}, {"name": "L1 kVAR", "area": "holding", "address": 20, "type": "int16", "unit": "kvar", "access": "R"}, {"name": "L2 kVAR", "area": "holding", "address": 21, "type": "int16", "unit": "kvar", "access": "R"}, {"name": "L3 kVAR", "area": "holding", "address": 22, "type": "int16", "unit": "kvar", "access": "R"}, {"name": "Total kVA", "area": "holding", "address": 23, "type": "uint16", "unit": "kVA", "access": "R"}, {"name": "L1 kVA", "area": "holding", "address": 24, "type": "uint16", "unit": "kVA", "access": "R"}, {"name": "L2 kVA", "area": "holding", "address": 25, "type": "uint16", "unit": "kVA", "access": "R"}, {"name": "L3 kVA", "area": "holding", "address": 26, "type": "uint16", "unit": "kVA", "access": "R"}, {"name": "Current Lead/Lag", "area": "holding", "address": 27, "type": "uint16", "access": "R"}, {"name": "Oil Pressure", "area": "holding", "address": 32, "type": "uint16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Coolant Temperature", "area": "holding", "address": 33, "type": "int16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Engine Speed", "area": "holding", "address": 34, "type": "uint16", "unit": "rpm", "access": "R"}, {"name": "Local Battery Voltage", "area": "holding", "address": 35, "type": "uint16", "scale": 0.1, "unit": "V", "access": "R"}, {"name": "Fuel Pressure", "area": "holding", "address": 36, "type": "uint16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Fuel Temperature", "area": "holding", "address": 37, "type": "int16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Fuel Rate", "area": "holding", "address": 38, "type": "uint16", "scale": 0.01, "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Used Last Run", "area": "holding", "address": 39, "type": "uint16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Coolant Pressure", "area": "holding", "address": 40, "type": "uint16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Coolant Level", "area": "holding", "address": 41, "type": "uint16", "scale": 0.1, "unit": "%", "access": "R"}, {"name": "Lube Oil Temperature", "area": "holding", "address": 42, "type": "int16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Oil Level", "area": "holding", "address": 43, "type": "uint16", "scale": 0.1, "unit": "%", "access": "R"}, {"name": "Crankcase Pressure", "area": "holding", "address": 44, "type": "uint16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Ambient Temperature", "area": "holding", "address": 45, "type": "int16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "ECM Battery Voltage", "area": "holding", "address": 46, "type": "uint16", "scale": 0.1, "unit": "V", "access": "R"}, {"name": "ECM Status", "area": "holding", "address": 47, "type": "uint16", "access": "R"}, {"name": "Intake Air Temperature", "area": "holding", "address": 48, "type": "int16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "Intake Air Pressure", "area": "holding", "address": 49, "type": "uint16", "access": "R", "description": "Unit follows the controller display setting (metric or English)"}, {"name": "MDEC/ADEC Fault Codes", "area": "holding", "address": 50, "type": "uint16", "access": "R"}, {"name": "Analog Input 00 (Battery Voltage) RO", "area": "holding", "address": 60, "type": "uint16", "unit": "V", "access": "R"}, {"name": "Analog Input 01", "area": "holding", "address": 61, "type": "uint16", "access": "R"}, {"name": "Analog Input 02", "area": "holding", "address": 62, "type": "uint16", "access": "R"}, {"name": "Analog Input 03", "area": "holding", "address": 63, "type": "uint16", "access": "R"}, {"name": "Device ID", "area": "holding", "address": 49998, "type": "uint16", "access": "R", "reference": "0x0029", "description": "Fixed controller type code"} ] }