UNPKG

iobroker.ecoflow-mqtt

Version:
1,442 lines (1,441 loc) 176 kB
const deviceStates = { RuntimePropertyUpload: { diagnostic: { pcsWorkMode: { entity_type: 'text', entity_category: 'diagnostic', name: 'pcs work mode', role: 'info', pcsWorkMode: { 0: 'OK?' }, }, plugInInfoAcOutType: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info ac out type', role: 'info', plugInInfoAcOutType: { 0: 'OK?' }, }, bmsBalState: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms bal state', role: 'info', bmsBalState: { 0: 'OK?' }, }, bmsAlmState: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms alm state', role: 'info', bmsAlmState: { 0: 'OK?' }, }, bmsProState: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms pro state', role: 'info', bmsProState: { 0: 'OK?' }, }, bmsFltState: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms flt state', role: 'info', bmsFltState: { 0: 'OK?' }, }, bmsAlmState_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms alm state_2', role: 'info', bmsAlmState_2: { 0: 'OK?' }, }, bmsProState_2: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms pro state_2', role: 'info', bmsProState_2: { 0: 'OK?' }, }, invMainFsmstate: { entity_type: 'text', entity_category: 'diagnostic', name: 'inv main fsmstate', role: 'info', invMainFsmstate: { 0: 'OK?' }, }, l1MainFsmstate: { entity_type: 'text', entity_category: 'diagnostic', name: 'l1 main fsmstate', role: 'info', l1MainFsmstate: { 0: 'OK?' }, }, }, number: { tempPcsDc: { min: 0, max: 100, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'temp pcs dc', subrole: 'number', }, tempPcsAc: { min: 0, max: 100, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'temp pcs ac', subrole: 'number', }, plugInInfoAcOutFreq: { min: 49, max: 61, unit_of_measurement: 'Hz', mult: 1, entity_type: 'sensor', device_class: 'frequency', role: 'value', name: 'plug in info ac out freq', subrole: 'number', }, plugInInfoAcOutVol: { min: 0, max: 250, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info ac out vol', subrole: 'number', }, plugInInfoAcInVol: { min: 0, max: 250, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info ac in vol', subrole: 'number', }, plugInInfoBmsVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info bms vol', subrole: 'number', }, plugInInfoAcInAmp: { min: 0, max: 30, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info ac in amp', subrole: 'number', }, plugInInfoAcOutAmp: { min: 0, max: 60, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info ac out amp', subrole: 'number', }, bmsBattVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'bms batt vol', subrole: 'number', }, bmsBattAmp: { min: -80, max: 80, unit_of_measurement: 'A', mult: 0.001, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'bms batt amp', subrole: 'number', }, bmsFullCap: { min: 0, max: 80000, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'bms full cap', subrole: 'number', }, bmsRemainCap: { min: 0, max: 80000, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'bms remain cap', subrole: 'number', }, bmsMinCellVol: { min: 0, max: 5, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'Minimum voltage of the main battery', subrole: 'number', }, bmsMaxCellVol: { min: 0, max: 5, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'bms max cell vol', subrole: 'number', }, cmsBattVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'cms batt vol', subrole: 'number', }, cmsBattAmp: { min: -80, max: 80, unit_of_measurement: 'A', mult: 0.001, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'cms batt amp', subrole: 'number', }, cmsChgReqVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'cms chg req vol', subrole: 'number', }, cmsChgReqAmp: { min: 0, max: 80, unit_of_measurement: 'A', mult: 0.001, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'cms chg req amp', subrole: 'number', }, runtimePropertyFullUploadPeriod: { min: 0, unit_of_measurement: 's', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'runtime property full upload period', subrole: 'number', }, runtimePropertyIncrementalUploadPeriod: { min: 0, unit_of_measurement: 's', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'runtime property incremental upload period', subrole: 'number', }, dcdcChgReqCur: { min: 0, max: 80, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'dcdc chg req cur', subrole: 'number', }, llcRecvCmsChgReqVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'llc recv cms chg req vol', subrole: 'number', }, tempPv: { min: 0, max: 60, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'temp pv', subrole: 'number', }, plugInInfoPvVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info pv vol', subrole: 'number', }, plugInInfoPvAmp: { min: 0, max: 60, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info pv amp', subrole: 'number', }, plugInInfo_12vVol: { min: 0, max: 16, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info_12v vol', subrole: 'number', }, plugInInfo_12vAmp: { min: 0, max: 10, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info_12v amp', subrole: 'number', }, llcBatVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'llc bat vol', subrole: 'number', }, llcBatCur: { min: -60, max: 60, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'llc bat cur', subrole: 'number', }, llcBusVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 0.1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'llc bus vol', subrole: 'number', }, plugInInfoDcpVol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info dcp vol', subrole: 'number', }, plugInInfoDcpAmp: { min: 0, max: 60, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info dcp amp', subrole: 'number', }, }, string: { pdMpptCommErr: { entity_type: 'text', entity_category: 'diagnostic', name: 'pd mppt comm err', role: 'info', }, pdLlcCommErr: { entity_type: 'text', entity_category: 'diagnostic', name: 'pd llc comm err', role: 'info' }, pdBmsCommErr: { entity_type: 'text', entity_category: 'diagnostic', name: 'pd bms comm err', role: 'info' }, pdIotCommErr: { entity_type: 'text', entity_category: 'diagnostic', name: 'pd iot comm err', role: 'info' }, pdFirmVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'pd firm ver', role: 'info' }, iotFirmVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'iot firm ver', role: 'info' }, mpptFirmVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'mppt firm ver', role: 'info' }, bmsFirmVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms firm ver', role: 'info' }, bmsErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms err code', role: 'info' }, displayPropertyFullUploadPeriod: { entity_type: 'text', entity_category: 'diagnostic', name: 'display property full upload period', role: 'info', }, displayPropertyIncrementalUploadPeriod: { entity_type: 'text', entity_category: 'diagnostic', name: 'display property incremental upload period', role: 'info', }, pvVinRef: { entity_type: 'text', entity_category: 'diagnostic', name: 'pv vin ref', role: 'info' }, }, array: { runtimeStatisticsSum: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'runtime Statistics', }, }, icon: { bmsOverloadIcon: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms overload icon', role: 'info', bmsOverloadIcon: { 0: 'OK?' }, }, bmsWarnIcon: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms warn icon', role: 'info', bmsWarnIcon: { 0: 'OK?' }, }, bmsHighTempIcon: { min: 0, max: 60, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'bms high temp icon', subrole: 'number', }, bmsLowTempIcon: { min: 0, max: 60, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'bms low temp icon', subrole: 'number', }, bmsLimitIcon: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms limit icon', role: 'info', bmsLimitIcon: { 0: 'OK?' }, }, }, }, DisplayPropertyUpload: { array: { timeTaskCurrent: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'time task current', }, }, string: { errcode: { entity_type: 'text', entity_category: 'diagnostic', name: 'errcode', role: 'info' }, pcsFanLevel: { entity_type: 'text', entity_category: 'diagnostic', name: 'pcs fan level', role: 'info' }, dcOutOpen: { entity_type: 'text', entity_category: 'diagnostic', name: 'dc out open', role: 'info' }, plugInInfoDcp2Detail: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 detail', role: 'info', }, plugInInfoDcp2Sn: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 sn', role: 'info', }, plugInInfoDcp2FirmVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 firm ver', role: 'info', }, plugInInfoDcp2Resv: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 resv', role: 'info', }, bmsErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms err code', role: 'info' }, errCodeRecordList: { entity_type: 'text', entity_category: 'diagnostic', name: 'err code record list', role: 'info', }, pdErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'pd err code', role: 'info' }, mpptErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'mppt err code', role: 'info' }, llcInvErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'llc inv err code', role: 'info', }, upsAlram: { entity_type: 'text', entity_category: 'diagnostic', name: 'ups alram', role: 'info' }, plugInInfoDcpDetail: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp detail', role: 'info', }, plugInInfoDcpResv: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp resv', role: 'info', }, plugInInfoDcpSn: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp sn', role: 'info', }, plugInInfoDcpFirmVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp firm ver', role: 'info', }, plugInInfoDcpErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp err code', role: 'info', }, plugInInfoDcp2ErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 err code', role: 'info', }, displayStatisticsSum: { entity_type: 'text', entity_category: 'diagnostic', name: 'display statistics sum', role: 'info', }, }, number: { powInSumW: { min: 0, max: 800, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Total input power', subrole: 'number', }, powOutSumW: { min: 0, max: 1000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Total output power', subrole: 'number', }, powGetQcusb1: { min: 0, max: 120, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Real-time power of the USB 1 port', subrole: 'number', }, powGetQcusb2: { min: 0, max: 120, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Real-time power of the USB 2 port', subrole: 'number', }, powGetTypec1: { min: 0, max: 4000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Real-time power of Type-C port 1', subrole: 'number', }, powGetTypec2: { min: 0, max: 4000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Real-time power of Type-C port 2', subrole: 'number', }, acAlwaysOnMiniSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'Sets the minimum SOC to enable the AC Always-on function', subrole: 'number', }, powGet_12v: { min: 0, max: 60, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Real-time 12V power', subrole: 'number', }, powGetAc: { min: 0, max: 8000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Real-time AC power', subrole: 'number', }, powGetAcIn: { min: 0, max: 8000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Real-time AC input power', subrole: 'number', }, plugInInfoAcInFeq: { min: 0, max: 61, unit_of_measurement: 'Hz', mult: 1, entity_type: 'sensor', device_class: 'frequency', role: 'value', name: 'AC input frequency', subrole: 'number', }, powGetDcp2: { min: 0, max: 60, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get dcp2', subrole: 'number', }, powGetBms: { min: 0, max: 8000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get bms', subrole: 'number', }, acOutFreq: { min: 49, max: 61, unit_of_measurement: 'Hz', mult: 1, entity_type: 'sensor', device_class: 'frequency', role: 'value', name: 'AC output frequency', subrole: 'number', }, plugInInfoAcOutDsgPowMax: { min: 0, max: 4000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Maximum AC discharging power', subrole: 'number', }, bmsBattSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'SOC of the main battery', subrole: 'number', }, bmsBattSoh: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'SOH of the main battery', subrole: 'number', }, bmsDesignCap: { min: 0, max: 80000, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'Battery capacity', subrole: 'number', }, bmsDsgRemTime: { min: 0, max: 15999, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'Remaining discharging time', subrole: 'number', }, bmsChgRemTime: { min: 0, max: 15999, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'Remaining charging time of the main battery', subrole: 'number', }, bmsMinCellTemp: { min: 0, max: 80, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'Minimum temperature of the main battery', subrole: 'number', }, bmsMaxCellTemp: { min: 0, max: 80, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'Temperature of the main battery', subrole: 'number', }, bmsMinMosTemp: { min: 0, max: 100, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'bms min mos temp', subrole: 'number', }, bmsMaxMosTemp: { min: 0, max: 100, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'bms max mos temp', subrole: 'number', }, cmsBattSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'Overall SOC', subrole: 'number', }, cmsBattSoh: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'Overall SOH', subrole: 'number', }, cmsDsgRemTime: { min: 0, max: 15999, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'Remaining discharging time', subrole: 'number', }, cmsChgRemTime: { min: 0, max: 15999, unit_of_measurement: 'min', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'Remaining charging time', subrole: 'number', }, timeTaskChangeCnt: { min: 0, max: 60, unit_of_measurement: '', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'time task change cnt', subrole: 'number', }, lowPowerAlarm: { min: 0, max: 60, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'low power alarm', subrole: 'number', }, silenceChgWatt: { min: 0, max: 600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'silence chg watt', subrole: 'number', }, powGetPv: { min: 0, max: 60, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get pv', subrole: 'number', }, plugInInfoPvChgAmpMax: { min: 0, max: 60, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info pv chg amp max', subrole: 'number', }, plugInInfoPvChgVolMax: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info pv chg vol max', subrole: 'number', }, powGetAcOut: { min: 0, max: 60, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get ac out', subrole: 'number', }, powGetDcp: { min: 0, max: 60, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get dcp', subrole: 'number', }, plugInInfoAcInChgHalPowMax: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Maximum AC charging power', subrole: 'number', }, }, diagnostic: { flowInfoQcusb1: { entity_type: 'text', entity_category: 'diagnostic', name: 'USB output port 1 switch status', role: 'info', flowInfoQcusb1: { 0: 'off', 2: 'on' }, }, flowInfoQcusb2: { entity_type: 'text', entity_category: 'diagnostic', name: 'USB output port 2 switch status', role: 'info', flowInfoQcusb2: { 0: 'off', 2: 'on' }, }, flowInfoTypec1: { entity_type: 'text', entity_category: 'diagnostic', name: 'Type-C port 1 switch status', role: 'info', flowInfoTypec1: { 0: 'off', 2: 'on' }, }, flowInfoTypec2: { entity_type: 'text', entity_category: 'diagnostic', name: 'Type-C port 2 switch status', role: 'info', flowInfoTypec2: { 0: 'off', 2: 'on' }, }, acAlwaysOnFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'ac always on flag', role: 'info', acAlwaysOnFlag: { 0: 'OK?' }, }, flowInfo_12v: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info_12v', role: 'info', flowInfo_12v: { 0: 'off', 2: 'on' }, }, flowInfoAc2dc: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info ac2dc', role: 'info', flowInfoAc2dc: { 0: 'off', 2: 'on' }, }, flowInfoDc2ac: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info dc2ac', role: 'info', flowInfoDc2ac: { 0: 'off', 2: 'on' }, }, flowInfoAcIn: { entity_type: 'text', entity_category: 'diagnostic', name: 'AC input switch status', role: 'info', flowInfoAcIn: { 0: 'off', 2: 'on' }, }, plugInInfoAcInFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'Indicates whether the AC charging port is connected', role: 'info', plugInInfoAcInFlag: { 0: 'disconnected', 1: 'connected' }, }, flowInfoDcp2In: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info dcp2 in', role: 'info', flowInfoDcp2In: { 0: 'OK?' }, }, flowInfoDcp2Out: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info dcp2 out', role: 'info', flowInfoDcp2Out: { 0: 'OK?' }, }, plugInInfoDcp2InFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 in flag', role: 'info', plugInInfoDcp2InFlag: { 0: 'OK?' }, }, plugInInfoDcp2DsgChgType: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 dsg chg type', role: 'info', plugInInfoDcp2DsgChgType: { 0: 'OK?' }, }, plugInInfoDcp2ChargerFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 charger flag', role: 'info', plugInInfoDcp2ChargerFlag: { 0: 'OK?' }, }, plugInInfoDcp2Type: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 type', role: 'info', plugInInfoDcp2Type: { 0: 'OK?' }, }, plugInInfoDcp2RunState: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp2 run state', role: 'info', plugInInfoDcp2RunState: { 0: 'OK?' }, }, flowInfoBmsDsg: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info bms dsg', role: 'info', flowInfoBmsDsg: { 0: 'off', 2: 'on' }, }, flowInfoBmsChg: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info bms chg', role: 'info', flowInfoBmsChg: { 0: 'off', 2: 'on' }, }, plugInInfoAcChargerFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'Indicates whether the charger is connected to the AC port', role: 'info', plugInInfoAcChargerFlag: { 0: 'not charging?', 1: 'charging?' }, }, devSleepState: { entity_type: 'text', entity_category: 'diagnostic', name: 'Sleep status', role: 'info', devSleepState: { 0: 'Off?', 1: 'On?' }, }, llcHvLvFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'High-voltage/Low-voltage AC identifier', role: 'info', llcHvLvFlag: { 0: 'LV?', 1: 'HV?' }, }, cmsBmsRunState: { entity_type: 'text', entity_category: 'diagnostic', name: 'On/Off status', role: 'info', cmsBmsRunState: { 0: 'off', 1: 'on' }, }, bmsChgDsgState: { entity_type: 'text', entity_category: 'diagnostic', name: 'Charging/Discharging status of the main battery', role: 'info', bmsChgDsgState: { 0: 'not charging or discharging', 1: 'discharging', 2: 'charging' }, }, cmsChgDsgState: { entity_type: 'text', entity_category: 'diagnostic', name: 'Charging/Discharging status', role: 'info', cmsChgDsgState: { 0: 'not charging or discharging', 1: 'discharging', 2: 'charging' }, }, timeTaskConflictFlag: { entity_type: 'text', entity_category: 'diagnostic', role: 'info', name: 'time task conflict flag', timeTaskConflictFlag: { 0: 'no conflict?', 1: 'conflict?' }, }, ledMode: { entity_type: 'text', entity_category: 'diagnostic', name: 'led mode', role: 'info', ledMode: { 0: 'OK?' }, }, flowInfoPv: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info pv', role: 'info', flowInfoPv: { 0: 'OK?' }, }, plugInInfoPvFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info pv flag', role: 'info', plugInInfoPvFlag: { 0: 'OK?' }, }, plugInInfoPvType: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info pv type', role: 'info', plugInInfoPvType: { 0: 'OK?' }, }, plugInInfoPvChargerFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info pv charger flag', role: 'info', plugInInfoPvChargerFlag: { 0: 'OK?' }, }, flowInfoAcOut: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info ac out', role: 'info', flowInfoAcOut: { 0: 'OK?' }, }, flowInfoDcpIn: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info dcp in', role: 'info', flowInfoDcpIn: { 0: 'OK?' }, }, flowInfoDcpOut: { entity_type: 'text', entity_category: 'diagnostic', name: 'flow info dcp out', role: 'info', flowInfoDcpOut: { 0: 'OK?' }, }, plugInInfoDcpInFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp in flag', role: 'info', plugInInfoDcpInFlag: { 0: 'OK?' }, }, plugInInfoDcpType: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp type', role: 'info', plugInInfoDcpType: { 0: 'OK?' }, }, plugInInfoDcpDsgChgType: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp dsg chg type', role: 'info', plugInInfoDcpDsgChgType: { 0: 'OK?' }, }, plugInInfoDcpChargerFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp charger flag', role: 'info', plugInInfoDcpChargerFlag: { 0: 'OK?' }, }, plugInInfoDcpRunState: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info dcp run state', role: 'info', plugInInfoDcpRunState: { 0: 'OK?' }, }, }, level: { devStandbyTime: { min: 0, max: 1440, unit_of_measurement: 'min', mult: 1, step: 1, entity_type: 'select', device_class: 'duration', name: 'Device timeout (min)', role: 'level', subrole: 'timer', select: ['Never', '30 min', '1 hr', '2 hr', '4 hr', '6 hr', '12 hr', '24 hr'], select_obj: { Never: 0, '30 min': 30, '1 hr': 60, '2 hr': 120, '4 hr': 240, '6 hr': 360, '12 hr': 720, '24 hr': 1440, }, states: { 0: 'Never', 30: '30 min', 60: '1 hr', 120: '2 hr', 240: '4 hr', 360: '6 hr', 720: '12 hr', 1440: '24 hr', }, }, screenOffTime: { min: 0, max: 1800, unit_of_measurement: 's', mult: 1, step: 1, entity_type: 'select', device_class: 'duration', name: 'Screen timeout (s)', role: 'level', subrole: 'timer', select: ['Never', '10 s', '30 s', '1 min', '5 min', '30 min'], select_obj: { Never: 0, '10 s': 10, '30 s': 30, '1 min': 60, '5 min': 300, '30 min': 1800 }, states: { 0: 'Never', 10: '10 s', 30: '30 s', 60: '1 min', 300: '5 min', 1800: '30 min' }, }, acStandbyTime: { min: 0, max: 1440, unit_of_measurement: 'min', mult: 1, step: 1, entity_type: 'select', device_class: 'duration', name: 'AC timeout (min)', role: 'level', subrole: 'timer', select: ['Never', '30 min', '1 hr', '2 hr', '6 hr', '12 hr', '24 hr'], select_obj: { Never: 0, '30 min': 30, '1 hr': 60, '2 hr': 120, '6 hr': 360, '12 hr': 720, '24 hr': 1440, }, states: { 0: 'Never', 30: '30 min', 60: '1 hr', 120: '2 hr', 360: '6 hr', 720: '12 hr', 1440: '24 hr', }, }, pvChgType: { min: 0, max: 2, unit_of_measurement: '', mult: 1, step: 1, entity_type: 'select', name: 'DC charging mode', role: 'level', select: ['Auto', 'Car recharging', 'Solar recharging'], select_obj: { Auto: 0, 'Car recharging': 1, 'Solar recharging': 2 }, states: { 0: 'Auto', 1: 'Car recharging', 2: 'Solar recharging' }, }, plugInInfoAcInChgPowMax: { min: 50, max: 305, unit_of_measurement: 'W', mult: 1, step: 1, entity_type: 'number', device_class: 'power', name: 'Maximum AC input power for charging', role: 'level', }, cmsMaxChgSoc: { min: 50, max: 100, unit_of_measurement: '%', mult: 1, step: 1, entity_type: 'number', device_class: 'battery', name: 'Charge limit', role: 'level', }, cmsMinDsgSoc: { min: 0, max: 30, unit_of_measurement: '%', mult: 1, step: 1, entity_type: 'number', device_class: 'battery', name: 'Discharge limit', role: 'level', }, plugInInfoPvDcAmpMax: { min: 4, max: 8, unit_of_measurement: 'A', mult: 1, step: 2, entity_type: 'number', device_class: 'current', role: 'level', name: 'plug in info pv dc amp max', }, energyBackupStartSoc: { min: 0, max: 30, unit_of_measurement: '%', mult: 1, step: 1, entity_type: 'number', device_class: 'battery', role: 'level', name: 'Backup reserve level', }, }, switch: { xboostEn: { entity_type: 'switch',