{ "device_type": "GreeGMV_1x6", "title": "Gree GMV (1 Outdoor + 6 Indoor)", "group": "g-air-conditioning", "device": { "name": "Gree GMV System", "protocol": "modbus", "response_timeout_ms": 1000, "guard_interval_us": 3500, "parameters": [ { "id": "outdoor_capacity_limit", "title": "Outdoor Capacity Limit (%)", "address": 3302, "reg_type": "holding", "format": "u16", "min": 30, "max": 100, "default": 100, "unit": "%", "order": 10 } ], "channels": [ // ======================== // Outdoor Unit (1#) // ======================== { "name": "Outdoor Operation Mode", "reg_type": "input", "address": 3306, "format": "u16", "enum": [ 0, 1, 2, 3, 4 ], "enum_titles": [ "Invalid", "Cooling Only", "Heating", "Cooling+Heating", "Fan" ], "type": "text", "order": 1 }, { "name": "Outdoor Temperature", "reg_type": "input", "address": 3307, "format": "s16", "scale": 0.1, "unit": "°C", "type": "temperature", "order": 2 }, { "name": "Outdoor Emergency Stop", "reg_type": "coil", "address": 248, "type": "switch", "order": 3 }, { "name": "Outdoor Alarm", "reg_type": "discrete", "address": 8495, "type": "alarm", "order": 4 }, // ======================== // Indoor Units (1-6) - Dynamic Addressing // ======================== // Helper function to generate channels for each indoor unit // Indoor Unit 1 (Base address: 102 for Word, 288 for Bits) { "name": "Indoor 1 - Power", "reg_type": "holding", "address": 102, "format": "u16", "enum": [ 0x55, 0xAA ], "enum_titles": [ "Off", "On" ], "type": "switch", "order": 100 }, { "name": "Indoor 1 - Mode", "reg_type": "holding", "address": 103, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7, 8 ], "enum_titles": [ "Invalid", "Cool", "Dry", "Fan", "Heat", "Auto", "FloorHeat", "QuickHeat", "HeatSupply" ], "type": "text", "order": 101 }, { "name": "Indoor 1 - Set Temperature", "reg_type": "holding", "address": 104, "format": "s16", "scale": 0.1, "min": 16, "max": 30, "unit": "°C", "type": "temperature", "order": 102 }, { "name": "Indoor 1 - Fan Speed", "reg_type": "holding", "address": 105, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7 ], "enum_titles": [ "Invalid", "Auto", "Low", "Med-Low", "Medium", "Med-High", "High", "Turbo" ], "type": "text", "order": 103 }, { "name": "Indoor 1 - Current Temp", "reg_type": "input", "address": 116, "format": "s16", "scale": 0.1, "unit": "°C", "type": "temperature", "order": 104 }, { "name": "Indoor 1 - Energy Saving", "reg_type": "coil", "address": 296, "type": "switch", "order": 105 }, { "name": "Indoor 1 - Swing Vertical", "reg_type": "coil", "address": 294, "type": "switch", "order": 106 }, { "name": "Indoor 1 - Swing Horizontal", "reg_type": "coil", "address": 295, "type": "switch", "order": 107 }, { "name": "Indoor 1 - Alarm", "reg_type": "discrete", "address": 319, "type": "alarm", "order": 108 }, // Indoor Unit 2 (Base address: 102 + 25 = 127) { "name": "Indoor 2 - Power", "reg_type": "holding", "address": 127, "format": "u16", "enum": [ 0x55, 0xAA ], "enum_titles": [ "Off", "On" ], "type": "switch", "order": 200 }, { "name": "Indoor 2 - Mode", "reg_type": "holding", "address": 128, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7, 8 ], "enum_titles": [ "Invalid", "Cool", "Dry", "Fan", "Heat", "Auto", "FloorHeat", "QuickHeat", "HeatSupply" ], "type": "text", "order": 201 }, { "name": "Indoor 2 - Set Temperature", "reg_type": "holding", "address": 129, "format": "s16", "scale": 0.1, "min": 16, "max": 30, "unit": "°C", "type": "temperature", "order": 202 }, { "name": "Indoor 2 - Fan Speed", "reg_type": "holding", "address": 130, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7 ], "enum_titles": [ "Invalid", "Auto", "Low", "Med-Low", "Medium", "Med-High", "High", "Turbo" ], "type": "text", "order": 203 }, { "name": "Indoor 2 - Current Temp", "reg_type": "input", "address": 141, "format": "s16", "scale": 0.1, "unit": "°C", "type": "temperature", "order": 204 }, { "name": "Indoor 2 - Energy Saving", "reg_type": "coil", "address": 360, // 288 + 72 "type": "switch", "order": 205 }, { "name": "Indoor 2 - Alarm", "reg_type": "discrete", "address": 383, // 319 + 64 "type": "alarm", "order": 206 }, // Indoor Unit 3 (Base address: 102 + 50 = 152) { "name": "Indoor 3 - Power", "reg_type": "holding", "address": 152, "format": "u16", "enum": [ 0x55, 0xAA ], "enum_titles": [ "Off", "On" ], "type": "switch", "order": 300 }, { "name": "Indoor 3 - Mode", "reg_type": "holding", "address": 153, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7, 8 ], "enum_titles": [ "Invalid", "Cool", "Dry", "Fan", "Heat", "Auto", "FloorHeat", "QuickHeat", "HeatSupply" ], "type": "text", "order": 301 }, { "name": "Indoor 3 - Set Temperature", "reg_type": "holding", "address": 154, "format": "s16", "scale": 0.1, "min": 16, "max": 30, "unit": "°C", "type": "temperature", "order": 302 }, { "name": "Indoor 3 - Fan Speed", "reg_type": "holding", "address": 155, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7 ], "enum_titles": [ "Invalid", "Auto", "Low", "Med-Low", "Medium", "Med-High", "High", "Turbo" ], "type": "text", "order": 303 }, { "name": "Indoor 3 - Current Temp", "reg_type": "input", "address": 166, "format": "s16", "scale": 0.1, "unit": "°C", "type": "temperature", "order": 304 }, { "name": "Indoor 3 - Energy Saving", "reg_type": "coil", "address": 424, // 288 + 136 "type": "switch", "order": 305 }, { "name": "Indoor 3 - Alarm", "reg_type": "discrete", "address": 447, // 319 + 128 "type": "alarm", "order": 306 }, // Indoor Unit 4 (Base address: 102 + 75 = 177) { "name": "Indoor 4 - Power", "reg_type": "holding", "address": 177, "format": "u16", "enum": [ 0x55, 0xAA ], "enum_titles": [ "Off", "On" ], "type": "switch", "order": 400 }, { "name": "Indoor 4 - Mode", "reg_type": "holding", "address": 178, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7, 8 ], "enum_titles": [ "Invalid", "Cool", "Dry", "Fan", "Heat", "Auto", "FloorHeat", "QuickHeat", "HeatSupply" ], "type": "text", "order": 401 }, { "name": "Indoor 4 - Set Temperature", "reg_type": "holding", "address": 179, "format": "s16", "scale": 0.1, "min": 16, "max": 30, "unit": "°C", "type": "temperature", "order": 402 }, { "name": "Indoor 4 - Fan Speed", "reg_type": "holding", "address": 180, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7 ], "enum_titles": [ "Invalid", "Auto", "Low", "Med-Low", "Medium", "Med-High", "High", "Turbo" ], "type": "text", "order": 403 }, { "name": "Indoor 4 - Current Temp", "reg_type": "input", "address": 191, "format": "s16", "scale": 0.1, "unit": "°C", "type": "temperature", "order": 404 }, { "name": "Indoor 4 - Energy Saving", "reg_type": "coil", "address": 488, // 288 + 200 "type": "switch", "order": 405 }, { "name": "Indoor 4 - Alarm", "reg_type": "discrete", "address": 511, // 319 + 192 "type": "alarm", "order": 406 }, // Indoor Unit 5 (Base address: 102 + 100 = 202) { "name": "Indoor 5 - Power", "reg_type": "holding", "address": 202, "format": "u16", "enum": [ 0x55, 0xAA ], "enum_titles": [ "Off", "On" ], "type": "switch", "order": 500 }, { "name": "Indoor 5 - Mode", "reg_type": "holding", "address": 203, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7, 8 ], "enum_titles": [ "Invalid", "Cool", "Dry", "Fan", "Heat", "Auto", "FloorHeat", "QuickHeat", "HeatSupply" ], "type": "text", "order": 501 }, { "name": "Indoor 5 - Set Temperature", "reg_type": "holding", "address": 204, "format": "s16", "scale": 0.1, "min": 16, "max": 30, "unit": "°C", "type": "temperature", "order": 502 }, { "name": "Indoor 5 - Fan Speed", "reg_type": "holding", "address": 205, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7 ], "enum_titles": [ "Invalid", "Auto", "Low", "Med-Low", "Medium", "Med-High", "High", "Turbo" ], "type": "text", "order": 503 }, { "name": "Indoor 5 - Current Temp", "reg_type": "input", "address": 216, "format": "s16", "scale": 0.1, "unit": "°C", "type": "temperature", "order": 504 }, { "name": "Indoor 5 - Energy Saving", "reg_type": "coil", "address": 552, // 288 + 264 "type": "switch", "order": 505 }, { "name": "Indoor 5 - Alarm", "reg_type": "discrete", "address": 575, // 319 + 256 "type": "alarm", "order": 506 }, // Indoor Unit 6 (Base address: 102 + 125 = 227) { "name": "Indoor 6 - Power", "reg_type": "holding", "address": 227, "format": "u16", "enum": [ 0x55, 0xAA ], "enum_titles": [ "Off", "On" ], "type": "switch", "order": 600 }, { "name": "Indoor 6 - Mode", "reg_type": "holding", "address": 228, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7, 8 ], "enum_titles": [ "Invalid", "Cool", "Dry", "Fan", "Heat", "Auto", "FloorHeat", "QuickHeat", "HeatSupply" ], "type": "text", "order": 601 }, { "name": "Indoor 6 - Set Temperature", "reg_type": "holding", "address": 229, "format": "s16", "scale": 0.1, "min": 16, "max": 30, "unit": "°C", "type": "temperature", "order": 602 }, { "name": "Indoor 6 - Fan Speed", "reg_type": "holding", "address": 230, "format": "u16", "enum": [ 0, 1, 2, 3, 4, 5, 6, 7 ], "enum_titles": [ "Invalid", "Auto", "Low", "Med-Low", "Medium", "Med-High", "High", "Turbo" ], "type": "text", "order": 603 }, { "name": "Indoor 6 - Current Temp", "reg_type": "input", "address": 241, "format": "s16", "scale": 0.1, "unit": "°C", "type": "temperature", "order": 604 }, { "name": "Indoor 6 - Energy Saving", "reg_type": "coil", "address": 616, // 288 + 328 "type": "switch", "order": 605 }, { "name": "Indoor 6 - Alarm", "reg_type": "discrete", "address": 639, // 319 + 320 "type": "alarm", "order": 606 } ], "translations": { "ru": { "Outdoor Operation Mode": "Режим внешнего блока", "Outdoor Temperature": "Температура наружная", "Power": "Питание", "Mode": "Режим", "Set Temperature": "Уставка температуры", "Current Temp": "Текущая температура", "Energy Saving": "Энергосбережение", "Alarm": "Авария" } } } }