UNPKG

iobroker.ecoflow-mqtt

Version:
1,529 lines (1,526 loc) 132 kB
const deviceStates = { RuntimePropertyUpload: { string: { 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', }, runtimePropertyFullUploadPeriod: { entity_type: 'text', entity_category: 'diagnostic', name: 'Runtime Property Full Upload Period', role: 'info', }, runtimePropertyIncrementalUploadPeriod: { entity_type: 'text', entity_category: 'diagnostic', name: 'Runtime Property Incremental Upload Period', role: 'info', }, }, }, DisplayPropertyUpload: { diagnostic: { utcSetMode: { entity_type: 'text', entity_category: 'diagnostic', name: 'utc set mode', role: 'info', utcSetMode: { 0: 'OK?' }, }, devSleepState: { entity_type: 'text', entity_category: 'diagnostic', name: 'Sleep status', role: 'info', devSleepState: { 0: 'Off?', 1: 'On?' }, }, 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' }, }, plugInInfoPvFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info pv flag', role: 'info', plugInInfoPvFlag: { 0: 'OK?' }, }, plugInInfoPv2Flag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info pv2 flag', role: 'info', plugInInfoPv2Flag: { 0: 'OK?' }, }, plugInInfoPv3Flag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info pv3 flag', role: 'info', plugInInfoPv3Flag: { 0: 'OK?' }, }, plugInInfoPv4Flag: { entity_type: 'text', entity_category: 'diagnostic', name: 'plug in info pv4 flag', role: 'info', plugInInfoPv4Flag: { 0: 'OK?' }, }, bmsBattHeating: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms Batt Heating status', role: 'info', bmsBattHeating: { 0: 'off?', 1: 'on' }, }, relay1Onoff: { entity_type: 'text', entity_category: 'diagnostic', name: 'relay 1 status', role: 'info', relay1Onoff: { 0: 'off?', 1: 'on' }, }, relay4Onoff: { entity_type: 'text', entity_category: 'diagnostic', name: 'relay 4 status', role: 'info', relay4Onoff: { 0: 'off?', 1: 'on' }, }, feedGridMode: { entity_type: 'text', entity_category: 'diagnostic', name: 'feed grid mode', role: 'info', feedGridMode: { 1: 'online?' }, }, stormPatternEnable: { entity_type: 'text', entity_category: 'diagnostic', name: 'storm pattern enable', role: 'info', stormPatternEnable: { 0: 'off?', 1: 'on?' }, }, stormPatternOpenFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'storm pattern open flag', role: 'info', stormPatternOpenFlag: { 0: 'off?', 1: 'on?' }, }, energyBackupState: { entity_type: 'text', entity_category: 'diagnostic', name: 'energy Backup State', role: 'info', energyBackupState: { 0: 'OK?' }, }, gridConnectionSta: { entity_type: 'text', entity_category: 'diagnostic', name: 'grid Connection Sta', role: 'info', gridConnectionSta: { 0: 'GRD_STA_NO_VALID', 1: 'GRID_IN', 2: 'GRID_NOT_ONLINE', 3: 'FEED_GRID' }, }, gridCodeSelection: { entity_type: 'text', entity_category: 'diagnostic', name: 'grid Code Selection', role: 'info', gridCodeSelection: { 0: 'NULL', 1: 'AUSTRIA', 2: 'SWITZER', 3: 'POLAND', 4: 'NETHERLANDS', 5: 'VDE_4105', 6: 'IEEE_1547', 7: 'USER_DEFINED', 8: 'NORWAY', 9: 'CZECH_REPUBLIC', 10: 'DENMARK', 11: 'IRELAND', 12: 'SWEDEN', 13: 'LATVIA', 14: 'GREECE_A', 15: 'GREECE_B', 16: 'PORTUGAL', 17: 'ROMANIA', 18: 'LITHUANIA', 19: 'HUNGARY', 20: 'ITALY', 21: 'G98', 22: 'G99', 23: 'NTS_631', 24: 'UNE_217001', 25: 'UNE_217002', 26: 'UTE_MAINLAND', 27: 'UTE_50HZ_ISLAND', 28: 'UTE_60HZ_ISLAND', 29: 'BELGIUM', 30: 'UKRAINE', 31: 'SLOVENIA', 32: 'BULGARIA', 33: 'EU_GENERAL', 1001: 'NORTH_AMERICA', }, }, distributedDeviceStatus: { entity_type: 'text', entity_category: 'diagnostic', name: 'distributed Device Status', role: 'info', distributedDeviceStatus: { 0: 'Election', 1: 'Master', 2: 'Slave' }, }, seriesConnectDeviceStatus: { entity_type: 'text', entity_category: 'diagnostic', name: 'series Connect Device Status', role: 'info', seriesConnectDeviceStatus: { 0: 'Election', 1: 'Master', 2: 'Slave' }, }, devCtrlStatus: { entity_type: 'text', entity_category: 'diagnostic', name: 'dev Ctrl Status', role: 'info', devCtrlStatus: { 0: 'not ok?', 1: 'ok?' }, }, updateBanFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'update Ban Flag', role: 'info', updateBanFlag: { 0: 'not set?', 1: 'set?' }, }, }, number: { powGetPv2: { min: 0, max: 600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get pv2', subrole: 'number', }, utcTimezone: { min: -1200, max: 1200, unit_of_measurement: '', mult: 1, entity_type: 'sensor', role: 'value', name: 'utc timezone', 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: 20000, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', 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: 'main battery 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: 'main battery max mos temp', subrole: 'number', }, invNtcTemp3: { min: 0, max: 100, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'inv Ntc Temp 3', 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', }, powGetPv: { min: 0, max: 600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get pv', subrole: 'number', }, cmsBattPowOutMax: { min: 0, max: 4000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'cms batt pow out max', subrole: 'number', }, cmsBattPowInMax: { min: 0, max: 8000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'cms batt pow in max', subrole: 'number', }, cmsBattFullEnergy: { min: 0, max: 1920, unit_of_measurement: 'Wh', mult: 1, entity_type: 'sensor', device_class: 'energy', role: 'value', name: 'cms batt full energy', subrole: 'number', }, stormPatternEndTime: { min: 0, max: 60, unit_of_measurement: 'h', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'storm pattern end time', subrole: 'number', }, powGetPv3: { min: 0, max: 600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get pv3', subrole: 'number', }, powGetPv4: { min: 0, max: 600, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get pv4', 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 pv1 vol', subrole: 'number', }, plugInInfoPv2Vol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info pv2 vol', subrole: 'number', }, plugInInfoPv3Vol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info pv3 vol', subrole: 'number', }, plugInInfoPv4Vol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'plug in info pv4 vol', subrole: 'number', }, plugInInfoPvAmp: { min: 0, max: 20, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info pv1 current', subrole: 'number', }, plugInInfoPv2Amp: { min: 0, max: 20, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info pv2 current', subrole: 'number', }, plugInInfoPv3Amp: { min: 0, max: 20, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info pv3 current', subrole: 'number', }, plugInInfoPv4Amp: { min: 0, max: 20, unit_of_measurement: 'A', mult: 1, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'plug in info pv4 current', subrole: 'number', }, powGetSysGrid: { min: 0, max: 3000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get sys grid', subrole: 'number', }, powGetSysLoad: { min: 0, max: 10000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get sys load', subrole: 'number', }, powGetPvSum: { min: 0, max: 8000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get pv sum', subrole: 'number', }, powGetBpCms: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get bp cms', subrole: 'number', }, powSysAcOutMax: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow sys ac out max', subrole: 'number', }, powGetSysLoadFromBp: { min: 0, max: 2500, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get gys load from bp', subrole: 'number', }, powGetSysLoadFromGrid: { min: 0, max: 10000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow get sys load from grid', subrole: 'number', }, powSysAcInMax: { min: 0, max: 3000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'pow Sys Ac In Max', subrole: 'number', }, socketMeasurePower: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'socket Measure Power', subrole: 'number', }, powGetSchuko1: { min: 0, max: 2100, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power Outlet 1', subrole: 'number', }, powGetSchuko2: { min: 0, max: 2100, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Power Outlet 2', subrole: 'number', }, busbarPowLimit: { min: 0, max: 2300, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Busbar Power Limit', subrole: 'number', }, gridConnectionVol: { min: 0, max: 250, unit_of_measurement: 'V', mult: 1, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'grid Connection Vol', subrole: 'number', }, gridConnectionFreq: { min: 0, max: 62, unit_of_measurement: 'Hz', mult: 1, entity_type: 'sensor', device_class: 'frequency', role: 'value', name: 'grid connection freq', subrole: 'number', }, gridConnectionPower: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'Grid Connection Power', subrole: 'number', }, sysGridConnectionPower: { min: 0, max: 2500, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'sys Grid Connection Power', subrole: 'number', }, powGetSysLoadFromPv: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'power get sys load from Pv ', subrole: 'number', }, maxInvInput: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'max Inv Input', subrole: 'number', }, maxInvOutput: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'max Inv Output', subrole: 'number', }, maxBpInput: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'max Bp Input', subrole: 'number', }, maxBpOutput: { min: 0, max: 2000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'max Bp Output', subrole: 'number', }, feedGridModePowLimit: { min: 0, max: 1500, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'feed Grid Mode Pow Limit', subrole: 'number', }, feedGridModePowMax: { min: 0, max: 1500, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'feed Grid Mode Pow Max', subrole: 'number', }, brightness: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, step: 1, entity_type: 'sensor', //device_class: 'illuminance', role: 'value', name: 'brightness', subrole: 'brightness', }, }, string: { utcTimezoneId: { entity_type: 'text', entity_category: 'diagnostic', name: 'utc timezone id', role: 'info', }, townCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'town code', role: 'info', }, gridSysDeviceCnt: { entity_type: 'text', entity_category: 'diagnostic', name: 'grid Sys Device Cnt', role: 'info', }, systemMeshId: { entity_type: 'text', entity_category: 'diagnostic', name: 'system Mesh Id', role: 'info', }, systemGroupId: { entity_type: 'text', entity_category: 'diagnostic', name: 'system Group Id', role: 'info', }, seriesConnectDeviceId: { entity_type: 'text', entity_category: 'diagnostic', name: 'series Connect Device Id', role: 'info', }, moduleWifiRssi: { entity_type: 'text', entity_category: 'diagnostic', role: 'info', name: 'Wi-Fi signal intensity', }, gridCodeVersion: { entity_type: 'text', entity_category: 'diagnostic', role: 'info', name: 'grid Code Version', }, }, 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', }, backupReverseSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'number', device_class: 'battery', name: 'Backup Reserve SOC', role: 'level', }, powConsumptionMeasurement: { min: 1, max: 2, unit_of_measurement: '', mult: 1, step: 1, entity_type: 'select', name: 'pow Consumption Measurement handling', role: 'level', //subrole: 'timer', select: ['partial autom', 'smart meter'], select_obj: { Never: 1, 'partial autom': 1, 'smart meter': 2, }, states: { 1: 'partial autom', 2: 'smart meter', }, }, }, switch: { relay2Onoff: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'relay AC out #1', role: 'switch', relay2Onoff: { 0: 'off?', 1: 'on' }, }, relay3Onoff: { entity_type: 'switch', device_class: 'switch', payload_off: 'off', payload_on: 'on', name: 'relay AC out #2', role: 'switch', relay3Onoff: { 0: 'off?', 1: 'on' }, }, }, array: { energyStrategyOperateMode: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'Energy Strategy Operate Mode', }, timeAdjust: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'timeadjust', }, powerSocket: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'power Socket', }, devErrcodeList: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'dev Errcode List', }, timezoneChangeList: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'timezone Change List', }, dayResidentLoadList: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'day Resident Load List', }, cloudMeter: { entity_type: 'text', entity_category: 'diagnostic', role: 'list', name: 'cloud meter', }, wifiApMeshId: { entity_type: 'text', entity_category: 'diagnostic', name: 'wifi Ap Mesh Id', role: 'list', }, }, }, BMSHeartBeatReport: { string: { num: { entity_type: 'text', entity_category: 'diagnostic', name: 'num', role: 'info', }, cellId: { entity_type: 'text', entity_category: 'diagnostic', name: 'cell id', role: 'info', }, errCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'err code', role: 'info', }, sysVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'sys ver', role: 'info', }, bqSysStatReg: { entity_type: 'text', entity_category: 'diagnostic', name: 'bq sys stat reg', role: 'info', }, cellSeriesNum: { entity_type: 'text', entity_category: 'diagnostic', name: 'cell series num', role: 'info', }, cellNtcNum: { entity_type: 'text', entity_category: 'diagnostic', name: 'cell ntc num', role: 'info', }, hwVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'hw ver', role: 'info', }, bmsHeartbeatVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms heartbeat ver', role: 'info', }, ecloudOcv: { entity_type: 'text', entity_category: 'diagnostic', name: 'ecloud ocv', role: 'info', }, bmsSn: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms sn', role: 'info', }, productType: { entity_type: 'text', entity_category: 'diagnostic', name: 'product type', role: 'info', }, productDetail: { entity_type: 'text', entity_category: 'diagnostic', name: 'product detail', role: 'info', }, sysLoaderVer: { entity_type: 'text', entity_category: 'diagnostic', name: 'sys loader ver', role: 'info', }, mosNtcNum: { entity_type: 'text', entity_category: 'diagnostic', name: 'mos ntc num', role: 'info', }, envNtcNum: { entity_type: 'text', entity_category: 'diagnostic', name: 'env ntc num', role: 'info', }, balanceCmd: { entity_type: 'text', entity_category: 'diagnostic', name: 'balance cmd', role: 'info', }, afeSysStatus: { entity_type: 'text', entity_category: 'diagnostic', name: 'afe sys status', role: 'info', }, mcuPinInStatus: { entity_type: 'text', entity_category: 'diagnostic', name: 'mcu pin in status', role: 'info', }, mcuPinOutStatus: { entity_type: 'text', entity_category: 'diagnostic', name: 'mcu pin out status', role: 'info', }, packSn: { entity_type: 'text', entity_category: 'diagnostic', name: 'pack sn', role: 'info', }, curSensorNtcNum: { entity_type: 'text', entity_category: 'diagnostic', role: 'info', name: 'cur sensor ntc num', }, waterInFlag: { entity_type: 'text', entity_category: 'diagnostic', role: 'info', name: 'water in flag', }, type: { entity_type: 'text', entity_category: 'diagnostic', name: 'type', role: 'info', }, }, diagnostic: { openBmsFlag: { entity_type: 'text', entity_category: 'diagnostic', name: 'open bms flag', role: 'info', openBmsFlag: { 0: 'OK?' }, }, mosState: { entity_type: 'text', entity_category: 'diagnostic', name: 'mos state', role: 'info', mosState: { 0: 'OK?' }, }, balanceState: { entity_type: 'text', entity_category: 'diagnostic', name: 'balance state', role: 'info', balanceState: { 0: 'OK?' }, }, sysState: { entity_type: 'text', entity_category: 'diagnostic', name: 'sys state', role: 'info', sysState: { 0: 'OK?' }, }, chgDsgState: { entity_type: 'text', entity_category: 'diagnostic', name: 'chg dsg state', role: 'info', chgDsgState: { 0: 'OK?' }, }, bmsAlarmState1: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms alarm state1', role: 'info', bmsAlarmState1: { 0: 'OK?' }, }, bmsAlarmState2: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms alarm state2', role: 'info', bmsAlarmState2: { 0: 'OK?' }, }, bmsProtectState1: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms protect state1', role: 'info', bmsProtectState1: { 0: 'OK?' }, }, bmsProtectState2: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms protect state2', role: 'info', bmsProtectState2: { 0: 'OK?' }, }, bmsFaultState: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms fault state', role: 'info', bmsFaultState: { 0: 'OK?' }, }, bmsFault: { entity_type: 'text', entity_category: 'diagnostic', name: 'bms fault', role: 'info', bmsFault: { 0: 'OK?' }, }, allErrCode: { entity_type: 'text', entity_category: 'diagnostic', name: 'all err code', role: 'info', allErrCode: { 0: 'OK?' }, }, allBmsFault: { entity_type: 'text', entity_category: 'diagnostic', name: 'all bms fault', role: 'info', allBmsFault: { 0: 'OK?' }, }, }, number: { soc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'soc', subrole: 'number', }, vol: { min: 0, max: 60, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'vol', subrole: 'number', }, amp: { min: 0, max: 40, unit_of_measurement: 'A', mult: 0.0001, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'amp', subrole: 'number', }, temp: { min: 0, max: 90, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'temp', subrole: 'number', }, designCap: { min: 0, max: 100000, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'design cap', subrole: 'number', }, remainCap: { min: 0, max: 100000, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'remain cap', subrole: 'number', }, fullCap: { min: 0, max: 100000, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'full cap', subrole: 'number', }, cycles: { min: 0, max: 6000, unit_of_measurement: '', mult: 1, entity_type: 'sensor', name: 'Number of cycles', role: 'value', }, soh: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'soh', subrole: 'number', }, maxCellVol: { min: 0, max: 5, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'max cell vol', subrole: 'number', }, minCellVol: { min: 0, max: 5, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'min cell vol', subrole: 'number', }, maxCellTemp: { min: 0, max: 90, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'max cell temp', subrole: 'number', }, minCellTemp: { min: 0, max: 90, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'min cell temp', subrole: 'number', }, maxMosTemp: { min: 0, max: 100, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'max mos temp', subrole: 'number', }, minMosTemp: { min: 0, max: 100, unit_of_measurement: '°C', mult: 1, entity_type: 'sensor', device_class: 'temperature', role: 'value', name: 'min mos temp', subrole: 'number', }, tagChgAmp: { min: 0, max: 60, unit_of_measurement: 'A', mult: 0.001, entity_type: 'sensor', device_class: 'current', role: 'value', name: 'tag chg amp', subrole: 'number', }, f32ShowSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'f32 show soc', subrole: 'number', }, inputWatts: { min: 0, max: 1000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'input watts', subrole: 'number', }, outputWatts: { min: 0, max: 1000, unit_of_measurement: 'W', mult: 1, entity_type: 'sensor', device_class: 'power', role: 'value', name: 'output watts', subrole: 'number', }, remainTime: { min: 0, max: 5999, unit_of_measurement: 'h', mult: 1, entity_type: 'sensor', device_class: 'duration', role: 'value', name: 'remain time', subrole: 'number', }, maxVolDiff: { min: 0, max: 1, unit_of_measurement: 'V', mult: 0.001, entity_type: 'sensor', device_class: 'voltage', role: 'value', name: 'max vol diff', subrole: 'number', }, actSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'act soc', subrole: 'number', }, diffSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'diff soc', subrole: 'number', }, targetSoc: { min: 0, max: 100, unit_of_measurement: '%', mult: 1, entity_type: 'sensor', device_class: 'battery', role: 'value', name: 'target soc', subrole: 'number', }, accuChgCap: { min: 0, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'accu chg cap', subrole: 'number', }, accuDsgCap: { min: 0, unit_of_measurement: 'mAh', mult: 1, entity_type: 'sensor', //device_class: 'capacity', role: 'value', name: 'accu dsg cap', subrole: 'num