UNPKG

iobroker.ecoflow-mqtt

Version:
2,323 lines (2,321 loc) 69.8 kB
const panelStates = { //new shp1 heartbeat: { number: { backupChaTime: { min: 0, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'Backup discharge time' }, workTime: { min: 0, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'Device work time' }, backupBatPer: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'Backup battery percentage' }, backupFullCap: { min: 0, max: 80000, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', role: 'value', name: 'Backup full capacity' }, backupDayWatth: { min: 0, max: 864000, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', role: 'value', name: 'Backup electricity consumption per day' }, gridDayWatth: { min: 0, max: 864000, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'Grid electricity consumption per day' } }, diagnostic: { gridSta: { entity_type: 'text', entity_category: 'diagnostic', name: 'Grid electricity status', role: 'info', gridSta: { '0': 'off', '1': 'on' } } }, array: { errorCodes: { entity_type: 'text', entity_category: 'diagnostic', name: 'Error Codes', role: 'list' } } }, backupCmdChCtrlInfos: { number: { powCh_10: { min: 0, max: 12, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number DP1' }, priority_10: { min: 0, max: 10, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel priority DP1' }, powCh_11: { min: 0, max: 12, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number DP2' }, priority_11: { min: 0, max: 10, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel priority DP2' } }, level: { ctrlSta_10: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type DP1 0 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_11: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type DP2 0 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' } }, switch: { ctrlMode_10: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode DP1 0-Auto/1-Manual/Grid', ctrlMode_10: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_11: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode DP2 0-Auto/1-Manual/Grid', ctrlMode_11: { '0': 'Auto', '1': 'Manual/Grid' } } } }, loadCmdChCtrlInfos: { number: { powCh_0: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #1' }, priority_0: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #1' }, powCh_1: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #2' }, priority_1: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #2' }, powCh_2: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #3' }, priority_2: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #3' }, powCh_3: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #4' }, priority_3: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #4' }, powCh_4: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #5' }, priority_4: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #5' }, powCh_5: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #6' }, priority_5: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #6' }, powCh_6: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #7' }, priority_6: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #7' }, powCh_7: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #8' }, priority_7: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #8' }, powCh_8: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #9' }, priority_8: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #9' }, powCh_9: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Channel number #10' }, priority_9: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Priority channel #10' } }, level: { ctrlSta_0: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #1 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_1: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #2 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_2: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #3 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_3: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #4 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_4: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #5 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_5: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #6 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_6: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #7 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_7: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #8 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_8: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #9 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' }, ctrlSta_9: { min: 0, max: 2, unit_of_measurement: '', mult: 1, entity_type: 'select', role: 'level', select: [ 'Grid supply', 'storage power supply', 'close/off' ], select_obj: { 'Grid supply': 0, 'storage power supply,': 1, off: 2 }, states: { 0: 'Grid supply', 1: 'storage power supply,', 2: 'off' }, name: 'Power supply type channel #10 Grid supply, 1 storage power supply, 2 close/off', subrole: 'mode' } }, switch: { ctrlMode_0: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #1 0-Auto/1-Manual/Grid', ctrlMode_0: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_1: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #2 0-Auto/1-Manual/Grid', ctrlMode_1: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_2: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #3 0-Auto/1-Manual/Grid', ctrlMode_2: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_3: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #4 0-Auto/1-Manual/Grid', ctrlMode_3: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_4: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #5 0-Auto/1-Manual/Grid', ctrlMode_4: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_5: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #6 0-Auto/1-Manual/Grid', ctrlMode_5: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_6: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #7 0-Auto/1-Manual/Grid', ctrlMode_6: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_7: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #8 0-Auto/1-Manual/Grid', ctrlMode_7: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_8: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #9 0-Auto/1-Manual/Grid', ctrlMode_8: { '0': 'Auto', '1': 'Manual/Grid' } }, ctrlMode_9: { entity_type: 'switch', role: 'switch', payload_off: 'auto', payload_on: 'manual', name: 'Contol mode channel #10 0-Auto/1-Manual/Grid', ctrlMode_9: { '0': 'Auto', '1': 'Manual/Grid' } } } }, //latestQuotas cfgSta: { diagnostic: { sta: { entity_type: 'text', entity_category: 'diagnostic', name: 'config status', role: 'info', sta: { '0': 'Config pending?', '1': 'Config done?' } } } }, epsModeInfo: { switch: { eps: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'EPS mode', role: 'switch', eps: { '0': 'off', '1': 'on' } } } }, chUseInfo: { diagnostic: { isEnable_0: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #1', role: 'info', isEnable_0: { '0': 'off', '1': 'on' } }, isEnable_1: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #2', role: 'info', isEnable_1: { '0': 'off', '1': 'on' } }, isEnable_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #3', role: 'info', isEnable_2: { '0': 'off', '1': 'on' } }, isEnable_3: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #4', role: 'info', isEnable_3: { '0': 'off', '1': 'on' } }, isEnable_4: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #5', role: 'info', isEnable_4: { '0': 'off', '1': 'on' } }, isEnable_5: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #6', role: 'info', isEnable_5: { '0': 'off', '1': 'on' } }, isEnable_6: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #7', role: 'info', isEnable_6: { '0': 'off', '1': 'on' } }, isEnable_7: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #8', role: 'info', isEnable_7: { '0': 'off', '1': 'on' } }, isEnable_8: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #9', role: 'info', isEnable_8: { '0': 'off', '1': 'on' } }, isEnable_9: { entity_type: 'text', entity_category: 'diagnostic', name: 'Load status channel #10', role: 'info', isEnable_9: { '0': 'off', '1': 'on' } } } }, splitPhaseInfo: { diagnostic: { linkMark_0: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #1', role: 'info', linkMark_0: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_1: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #2', role: 'info', linkMark_1: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #3', role: 'info', linkMark_2: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_3: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #4', role: 'info', linkMark_3: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_4: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #5', role: 'info', linkMark_4: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_5: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #6', role: 'info', linkMark_5: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_6: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #7', role: 'info', linkMark_6: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_7: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #8', role: 'info', linkMark_7: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_8: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #9', role: 'info', linkMark_8: { '0': 'Not be split', '1': 'Should be split' } }, linkMark_9: { entity_type: 'text', entity_category: 'diagnostic', name: 'Split status channel #10', role: 'info', linkMark_9: { '0': 'Not be split', '1': 'Should be split' } } }, number: { linkCh_0: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #1' }, linkCh_1: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #2' }, linkCh_2: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #3' }, linkCh_3: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #4' }, linkCh_4: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #5' }, linkCh_5: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #6' }, linkCh_6: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #7' }, linkCh_7: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #8' }, linkCh_8: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #9' }, linkCh_9: { min: 0, max: 9, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'Split channel number #10' } } }, loadChInfo: { string: { chName_0: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #1 nick name', role: 'info' }, chName_1: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #2 nick name', role: 'info' }, chName_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #3 nick name', role: 'info' }, chName_3: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #4 nick name', role: 'info' }, chName_4: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #5 nick name', role: 'info' }, chName_5: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #6 nick name', role: 'info' }, chName_6: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #7 nick name', role: 'info' }, chName_7: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #8 nick name', role: 'info' }, chName_8: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #9 nick name', role: 'info' }, chName_9: { entity_type: 'text', entity_category: 'diagnostic', name: 'Channel #10 nick name', role: 'info' } }, icon: { iconNum_0: { entity: 'icon' }, iconNum_1: { entity: 'icon' }, iconNum_2: { entity: 'icon' }, iconNum_3: { entity: 'icon' }, iconNum_4: { entity: 'icon' }, iconNum_5: { entity: 'icon' }, iconNum_6: { entity: 'icon' }, iconNum_7: { entity: 'icon' }, iconNum_8: { entity: 'icon' }, iconNum_9: { entity: 'icon' } } }, loadChCurInfo: { number: { cur_0: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #1 current' }, cur_1: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #2 current' }, cur_2: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #3 current' }, cur_3: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #4 current' }, cur_4: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #5 current' }, cur_5: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #6 current' }, cur_6: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #7 current' }, cur_7: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #8 current' }, cur_8: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #9 current' }, cur_9: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'Channel #10 current' }, cur_10: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'DP1 current' }, cur_11: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'DP2 current' } } }, gridInfo: { number: { gridVol: { min: 0, max: 240, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'Grid voltage' }, gridFreq: { min: 0, max: 60, unit_of_measurement: 'Hz', mult: 1, entity_type: 'sensor', device_class: 'frequency', role: 'value', name: 'Grid Frequency' } } }, areaInfo: { string: { area: { entity_type: 'text', entity_category: 'diagnostic', name: 'Area Info', role: 'info' } } }, emergencyStrategy: { diagnostic: { backupMode: { entity_type: 'text', entity_category: 'diagnostic', name: 'Backup mode', role: 'info', backupMode: { '0': '0?', '1': '1?' } }, isCfg: { entity_type: 'text', entity_category: 'diagnostic', name: 'Backup config', role: 'info', isCfg: { '0': '0?', '1': '1?' } }, overloadMode: { entity_type: 'text', entity_category: 'diagnostic', name: 'Backup overload mode', role: 'info', overloadMode: { '0': '0?', '1': '1?' } } } }, channelPower: { diagnostic: { powType_0: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #1', role: 'info', powType_0: { '0': '0?', '1': '1?' } }, powType_1: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #2', role: 'info', powType_1: { '0': '0?', '1': '1?' } }, powType_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #3', role: 'info', powType_2: { '0': '0?', '1': '1?' } }, powType_3: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #4', role: 'info', powType_3: { '0': '0?', '1': '1?' } }, powType_4: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #5', role: 'info', powType_4: { '0': '0?', '1': '1?' } }, powType_5: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #6', role: 'info', powType_5: { '0': '0?', '1': '1?' } }, powType_6: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #7', role: 'info', powType_6: { '0': '0?', '1': '1?' } }, powType_7: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #8', role: 'info', powType_7: { '0': '0?', '1': '1?' } }, powType_8: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #9', role: 'info', powType_8: { '0': '0?', '1': '1?' } }, powType_9: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type channel #10', role: 'info', powType_9: { '0': '0?', '1': '1?' } }, powType_10: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type DP1', role: 'info', powType_10: { '0': '0?', '1': '1?' } }, powType_11: { entity_type: 'text', entity_category: 'diagnostic', name: 'Power type DP2', role: 'info', powType_11: { '0': '0?', '1': '1?' } } }, number: { chWatt_0: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #1' }, chWatt_1: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #2' }, chWatt_2: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #3' }, chWatt_3: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #4' }, chWatt_4: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #5' }, chWatt_5: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #6' }, chWatt_6: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #7' }, chWatt_7: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #8' }, chWatt_8: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #9' }, chWatt_9: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power channel #10' }, chWatt_10: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power DP1' }, chWatt_11: { min: 0, max: 3600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power DP2' } } }, //latestQuotas and cyclic backupLoadWatt: { number: { watthDaytoDate_0: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #1' }, watthDaytoDate_1: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #2' }, watthDaytoDate_2: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #3' }, watthDaytoDate_3: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #4' }, watthDaytoDate_4: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #5' }, watthDaytoDate_5: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #6' }, watthDaytoDate_6: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #7' }, watthDaytoDate_7: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #8' }, watthDaytoDate_8: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #9' }, watthDaytoDate_9: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily backup energy ch #10' } }, array: { watth_0: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #1', role: 'list' }, watth_1: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #2', role: 'list' }, watth_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #3', role: 'list' }, watth_3: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #4', role: 'list' }, watth_4: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #5', role: 'list' }, watth_5: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #6', role: 'list' }, watth_6: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #7', role: 'list' }, watth_7: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #8', role: 'list' }, watth_8: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #9', role: 'list' }, watth_9: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly backup energy ch #10', role: 'list' } } }, mainsLoadWatt: { number: { watthDaytoDate_0: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #1' }, watthDaytoDate_1: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #2' }, watthDaytoDate_2: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #3' }, watthDaytoDate_3: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #4' }, watthDaytoDate_4: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #5' }, watthDaytoDate_5: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #6' }, watthDaytoDate_6: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #7' }, watthDaytoDate_7: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #8' }, watthDaytoDate_8: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #9' }, watthDaytoDate_9: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily mains energy ch #10' } }, array: { watth_0: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #1', role: 'list' }, watth_1: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #2', role: 'list' }, watth_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #3', role: 'list' }, watth_3: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #4', role: 'list' }, watth_4: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #5', role: 'list' }, watth_5: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #6', role: 'list' }, watth_6: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #7', role: 'list' }, watth_7: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #8', role: 'list' }, watth_8: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #9', role: 'list' }, watth_9: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly mains energy ch #10', role: 'list' } } }, topupLoadWatt: { number: { watthDaytoDate_10: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily energy DP1' }, watthDaytoDate_11: { min: 0, max: 86400, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', state_class: 'total_increasing', role: 'value', name: 'Daily energy DP2' } }, array: { watth_10: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly energy DP1', role: 'list' }, watth_11: { entity_type: 'text', entity_category: 'diagnostic', name: 'Hourly energy DP2', role: 'list' } } }, //other backupChaDiscCfg: { level: { forceChargeHigh: { min: 60, max: 100, unit_of_measurement: '%', mult: 1, step: 1, entity_type: 'sensor', device_class: 'battery', name: 'Charge upper threshold percentage', role: 'level', subrole: 'power' }, discLower: { min: 0, max: 30, unit_of_measurement: '%', mult: 1, step: 1, entity_type: 'sensor', device_class: 'battery', name: 'Discharge lower threshold percentage', role: 'level', subrole: 'power' } } }, action: { switch: { latestQuotas: { entity_type: 'switch', device_class: 'switch', role: 'switch', name: 'Get latest Quotas', payload_off: 'no trigger', payload_on: 'trigger', latestQuotas: { '0': 'no trigger', '1': 'trigger' } }, getAllTaskCfg: { entity_type: 'switch', device_class: 'switch', role: 'switch', name: 'Get all tasks', payload_off: 'no trigger', payload_on: 'trigger', getAllTaskCfg: { '0': 'no trigger', '1': 'trigger' } }, //shp getHeartbeat: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getHeartbeat', role: 'switch', getHeartbeat: { '0': 'off', '1': 'on' } }, getTime: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getTime', role: 'switch', getTime: { '0': 'off', '1': 'on' } }, getGridInfo: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getGridInfo', role: 'switch', getGridInfo: { '0': 'off', '1': 'on' } }, getChargeSetting: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getChargeSetting', role: 'switch', getChargeSetting: { '0': 'off', '1': 'on' } }, getLoadChCurInfo: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getLoadChCurInfo', role: 'switch', getLoadChCurInfo: { '0': 'off', '1': 'on' } }, getEpsMode: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getEpsMode', role: 'switch', getEpsMode: { '0': 'off', '1': 'on' } }, getLoadChControl: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getLoadChControl', role: 'switch', getLoadChControl: { '0': 'off', '1': 'on' } }, getBackupChControl: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getBackupChControl', role: 'switch', getBackupChControl: { '0': 'off', '1': 'on' } }, getSplitPhaseInfo: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getSplitPhaseInfo', role: 'switch', getSplitPhaseInfo: { '0': 'off', '1': 'on' } }, getChUseInfo: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getChUseInfo', role: 'switch', getChUseInfo: { '0': 'off', '1': 'on' } }, getLoadChInfo: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getLoadChInfo', role: 'switch', getLoadChInfo: { '0': 'off', '1': 'on' } }, getTimeTask: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getTimeTask', role: 'switch', getTimeTask: { '0': 'off', '1': 'on' } }, getCfgSta: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getCfgSta', role: 'switch', getCfgSta: { '0': 'off', '1': 'on' } }, getEmergencyStrategy: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getEmergencyStrategy', role: 'switch', getEmergencyStrategy: { '0': 'off', '1': 'on' } }, getmainsLoadWatt: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getmainsLoadWatt', role: 'switch', getmainsLoadWatt: { '0': 'off', '1': 'on' } }, getbackupLoadWatt: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'getbackupLoadWatt', role: 'switch', getbackupLoadWatt: { '0': 'off', '1': 'on' } }, gettopupLoadWatt: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'gettopupLoadWatt', role: 'switch', gettopupLoadWatt: { '0': 'off', '1': 'on' } } } }, info: { diagnostic: { status: { entity_type: 'text', entity_category: 'diagnostic', name: 'Status', role: 'info', status: { 0: 'offline', 1: 'online' } } } }, timeTask: { cfg: { param: { lowBattery: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', name: 'Charge low power percentage', role: 'value' }, chChargeWatt: { min: 0, max: 7200, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', name: 'Channel charge power', role: 'value' }, chSta: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'Channel state' }, hightBattery: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', name: 'Charge high power percentage', role: 'value' } }, comCfg: { timeScale: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'Time scale info' }, isCfg: { entity_type: 'text', entity_category: 'diagnostic', name: 'Task configuration', role: 'info', isConfig: { '0': 'not configured', '1': 'configured' } }, isEnable: { entity_type: 'text', entity_category: 'diagnostic', name: 'Task activation', role: 'info', isEnable: { '0': 'not enabled', '1': 'enabled' } }, type: { entity_type: 'text', entity_category: 'diagnostic', name: 'Task type', role: 'info', type: { 1: 'charging job', 2: 'discharge job' } }, setTime: { week: { min: 0, max: 52, unit_of_measurement: 'week', mult: 1, entity_type: 'sensor', name: 'week', role: 'value' }, sec: { min: 0, max: 59, unit_of_measurement: 's', mult: 1, entity_type: 'sensor', name: 'second', role: 'value' }, min: { min: 0, max: 59, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', name: 'minute', role: 'value' }, hour: { min: 0, max: 23, unit_of_measurement: 'hour', mult: 1, entity_type: 'sensor', name: 'hour', role: 'value' }, day: { min: 0, max: 31, unit_of_measurement: 'day', mult: 1, entity_type: 'sensor', name: 'day', role: 'value' }, month: { min: 0, max: 12, unit_of_measurement: 'month', mult: 1, entity_type: 'sensor', name: 'month', role: 'value' }, year: { min: 0, max: 2050, unit_of_measurement: 'year', mult: 1, entity_type: 'sensor', name: 'year', role: 'value' } }, timeRange: { isCfg: { entity_type: 'text', entity_category: 'diagnostic', name: 'TimeRange configuration', role: 'info', isConfig: { '0': 'not configured', '1': 'configured' } }, isEnable: { entity_type: 'text', entity_category: 'diagnostic', name: 'TimeRange activation', role: 'info', isEnable: { '0': 'not enabled', '1': 'enabled' } }, timeMode: { entity_type: 'text', entity_category: 'diagnostic', name: 'TimeRange mode', role: 'info', timeMode: { '0': 'daily', '1': 'weekly', '2': 'monthly', '3': 'year month day?' } }, startTime: { week: { min: 0, max: 52, unit_of_measurement: 'week', mult: 1, entity_type: 'sensor', name: 'week', role: 'value' }, sec: { min: 0, max: 59, unit_of_measurement: 's', mult: 1, entity_type: 'sensor', name: 'second', role: 'value' }, min: { min: 0, max: 59, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', name: 'minute', role: 'value' }, hour: { min: 0, max: 23, unit_of_measurement: 'hour', mult: 1, entity_type: 'sensor', name: 'hour', role: 'value' }, day: { min: 0, max: 31, unit_of_measurement: 'day', mult: 1, entity_type: 'sensor', name: 'day', role: 'value' }, month: { min: 0, max: 12, unit_of_measurement: 'month', mult: 1, entity_type: 'sensor', name: 'month', role: 'value' }, year: { min: 0, max: 2050, unit_of_measurement: 'year', mult: 1, entity_type: 'sensor', name: 'year', role: 'value' } }, endTime: { week: { min: 0, max: 52, unit_of_measurement: 'week', mult: 1, entity_type: 'sensor', name: 'week', role: 'value' }, sec: { min: 0, max: 59, unit_of_measurement: 's', mult: 1, entity_type: 'sensor', name: 'second', role: 'value' }, min: { min: 0, max: 59, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', name: 'minute', role: 'value' }, hour: { min: 0, max: 23, unit_of_measurement: 'hour', mult: 1, entity_type: 'sensor', name: 'hour', role: 'value' }, day: { min: 0, max: 31, unit_of_measurement: 'day', mult: 1, entity_type: 'sensor', name: 'day', role: 'value' }, month: { min: 0, max: 12, unit_of_measurement: 'month', mult: 1, entity_type: 'sensor', name: 'month', role: 'value' }, year: { min: 0, max: 2050, unit_of_measurement: 'year', mult: 1, entity_type: 'sensor', name: 'year', role: 'value' } }, model: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'Model info' } } } } } }; const pa