# States for GLACIER ### version: 0.0.29 [pd](#pd) [bmsMaster](#bmsMaster) [ems](#ems) ## pd ### number | State | Min | Max | Unit | Mult | Name | |----------|:-------------:|:-------------:|:------:|:-----:|-----| |exhaustTmp|0 | 60 | °C | 0.1 | Exhaust pipe wall temperature | |batTime|0 | 5999 | min | 1 | batTime; a negative value indicates a discharging time, and positive value indicates a charging time | |tempWater|0 | 60 | °C | 0.1 | Water temperature of the ice making zone | |A12Val|0 | 15 | V | 0.001 | 12 V auxiliary supply voltage | |motorCur|0 | 60 | A | 0.001 | Motor Current | |tmpM|-20 | 60 | °C | 1 | Combined temperature zone temperature | |icePercent|0 | 100 | % | 1 | Ice making progress | |powerBatInTime|0 | n/a | min | 0.0166667 | Duration of battery pack in place | |ambientTmp|0 | 60 | °C | 0.1 | Ambient temperature | |coolZoneSingleTime|0 | n/a | min | 0.0166667 | Single temperature zone duration | |tmpAver|-20 | 60 | C | 0.1 | Real-time temperature of single temperature zone | |batPct|0 | 100 | % | 1 | Battery level | |iceTmTag|0 | 1440 | min | 1 | The ice making target time (used for app and LCD effect display) | |coolCoverTime|0 | n/a | min | 0.0166667 | Duration of cooling zone being opened | |powerBatOutTime|0 | n/a | min | 0.0166667 | Duration of battery pack not in place | |chargeWorkTime|0 | n/a | min | 0.0166667 | Duration of working while charging | |motorVol|0 | 60 | V | 0.001 | Motor voltage | |coolZoneDoubleTime|0 | n/a | min | 0.0166667 | Duration of dual temperature zone | |motorSpeed|0 | 3600 | rpm | 1 | Motor speed | |motorWat|0 | 600 | W | 1 | Motor power | |iceTm|0 | 1440 | min | 1 | Duration of the current ice making (for app and LCD effect display) | |tmpR|-20 | 60 | °C | 1 | Actual Right temperature zone value | |tmpL|-20 | 60 | °C | 1 | Actual temperature of the left temperature zone | ### array | State | Name | |----------|------| |tempCoolTime| Length of time when the actual temperature of the cooling zone falls in each interval: COOL_ ZONE_ MAX*TEMP_ COOL_ MAX | |appSensorAdv| Duration of sensor blocking: SENSOR_ADV_MAX | |errorTimePower| Duration of each type of fault in the POWER module: ERROR_MAX_POWER | |tempIceTime| Length of time when temperature of the ice-making zone falls in each interval: TEMP_ICE_MAX | |networkTypeTime| Duration of being networked: NETWORK_TYPE_MAX | |powerXt60Time| Duration of each type of power supply on XT60: POWER_TYPE_MAX | |chargeXt60Time| Duration of each type of charging power supply on XT60: POWER_TYPE_MAX | |errorTimeBms| Duration of each type of fault in BMS module: ERROR_MAX_BMS | |appOpTimeBlTime| Screen timeout set through app: BL_TIME_MAX | |errorTimePd| Duration of each type of fault in PD module: ERROR_MAX_PD | |workFsmTime| Running duration of state machine under each state: USER_BEHAVIOR_FSM_MAX | |workModeTime| Running duration of each work mode; WORK_MODE_MAX | |tempAmbientTime| Length of time when ambient temperature falls in each interval: TEMP_AMBIENT_MAX | |tempCoolSetTime| Length of time when the set temperature of the cooling zone falls in each interval: COOL_ZONE_MAX*TEMP_COOL_SET_MAX | |buttonLong| Count of long presses: USER_BEHAVIOR_BUTTON_MAX | |networkTypeCount| Count of being networked: NETWORK_TYPE_MAX | |powerXt60Count| Count of each type of power supply on XT60: POWER_TYPE_MAX | |errorCountPower| Count of each type of fault in POWER module: ERROR_MAX_POWER | |workFsmCount| Count of entering each state of state machine: USER_BEHAVIOR_FSM_MAX | |errorCountBldc| Count of each type of fault in BLDC module: ERROR_MAX_BLDC | |workModeCount| Count of entering each work mode; WORK_MODE_MAX | |errorCountBms| Count of each type of fault in BMS module: ERROR_MAX_PD | |chargeXt60Count| Count of each type of charging power supply on XT60: POWER_TYPE_MAX | |appOpCountWorkMode| Count of each work mode set through app: WORK_MODE_MAX | |appOpCountBlTime| Count of setting different screen timeout through app: BL_TIME_MAX | |errorCountPd| Count of each fault in PD module: ERROR_MAX_PD | |buttonShort| Count of short pressings: USER_BEHAVIOR_BUTTON_MAX | |errorTimeBldc| array errors? | ### level | State | Min | Max | Unit | Mult | Name | cmd | |----------|:-------------:|:-------------:|:------:|:-----:|-----|------| |tmpMSet| -20 | 50 | °C | 0.01 | Set Temperature of the middle temperature zone | {valName:tmpM,moduleType:1,operateType:temp,params:{tmpR:-19,tmpL:0,tmpM:0}} | |tmpRSet| -20 | 50 | °C | 0.01 | Set Temperature of the right temperature zone (valid when partition is inserted) | {valName:tmpR,moduleType:1,operateType:temp,params:{tmpR:-19,tmpL:0,tmpM:0}} | |tmpLSet| -20 | 50 | °C | 0.01 | Set Temperature of the left temperature zone (valid when partition is inserted) | {valName:tmpL,moduleType:1,operateType:temp,params:{tmpR:-19,tmpL:0,tmpM:0}} | |powerPbLevel| 0 | 2 | level | 1 | Battery protection level 0: Low; 1: Medium; 2: High | {valName:level,moduleType:1,operateType:protectBat,params:{state:1,level:0}} | |blTime| 0 | 3600 | s | 1 | Screen timeout | {valName:time,moduleType:1,operateType:blTime,params:{time:600}} | ### string | State | Name | |----------|------| |errBms| BMS fault code | |errPd| PD fault code | |errBldc| BLDC fault code | |emsChgFlg| EMS charging flag | |errLcd| Fault code displayed on LCD screen | |threeWayState| Refrigerant flow direction flag bit | |flagTwoZone| Partition detection | |errCode| Error code | |errPwr| POWER fault code | |coolZoneDoubleCount| Count of dual temperature zones | |coolCoverCount| Count of cooling zone openings | |appOpCountDeIce| Count of ice detaching through app | |dntMakeIceDevice| Count of pressing the ice making button when ice making is disabled | |appOpCountBeepOff| Count of turning off buzzer through app | |appOpCountPowerOn| Count of powering on through app | |countinueMakeIceMax| Maximum count of consecutive ice making | |appOpCountPowerOff| Count of powering off through app | |appOpCountDntMakeIce| Count of ice making through app when ice making is disabled | |powerBatInCount| Count of battery pack in place | |makeIceCount| Total count of ice making | |chargeWorkCount| Count of working while charging | |coolZoneSingleCount| Count of single temperature zone | |countinueMakeIceAve| Average count of consecutive ice making actions | |appOpCountTempUnitC| Count of setting degrees in Celsius through app | |appOpCountTempUnitF| Count of setting degrees in Fahrenheit through app | |appOpCountBeepOn| Count of enabling buzzer through app | |err| PD error | |appOpCountMakeIce| Count of ice making through app? | ### diagnostic | State | Name | values | |----------|:-------------:|------| |iceMkMode| Large/small ice cube status | {0:Small ice cube (in preparation),1:Large ice cube (in preparation),2:Small ice cube (ice making in progress; cannot be changed),3:Large ice cube (ice making in progress)} | |fsmState| Real-time running status | {0:Small ice cube (in preparation)?,1:Large ice cube (in preparation)?,2:Small ice cube (ice making in progress; cannot be changed)?,3:Large ice cube (ice making in progress)?,4:Detaching ice,5:Detaching completed} | |motorWait| Waiting for compressor: | {0:No need to wait,1:Need to wait} | |pwrState| pwrState | {0:Powered off,1:Powered on} | |bldcDntWork| Compressor work limit | {0:Allow to work,1:Do not allow to work} | |waterLine| Ice making zone water level: 0-3 levels | {0:OK?} | |flagAmbintReady| Ambient temperature reliability | {0:Unreliable,1:Reliable} | |batFlag| Battery pack in-place status | {0:Not in place,1:In place} | |xt150InState| xt150InState | {0:no input,1:has input} | |doorStat| Door status detection | {0:Closed,1:Open} | |runState| Operating status | {0:Normal (24 V output, 40 V output),1:Charging suspended (or when there is no input) (24 V off, 40 V output),2:Standby (24 V off, 40 V off)} | |chgType| Charger type //Charger type | {0:NULL,1:XT150 charging,2:Adapter charging (hardware detection),3:Car charging (hardware detection),4:Solar panel charging (hardware detection),5:Car charging (software detection),6:Solar panel charging (software detection),7:Input source cannot be identified (0xff): the charging cable is connected, but it actually does not work due to charging being disabled} | |sensor| Sensor status; refer to @ST_SENSOR for data explanation; bit 1: Error; bit 0: Normal | {0:Normal,2:Error} | |xt60InState| xt60 connection status | {0:no input,1:has input} | |iceAlert| Ice taking reminder | {0:Do not remind,1:Remind} | |carBatLow| Car charger battery protection reminder | {0:Do not remind,1:Remind} | |bmsInFlag| BMS in-place flag, detected through BMS->PD heartbeat packet | {0:Not in place,1:In place} | |bldcDntIce| Ice making limit on compressor | {0:Ice making is allowed,1:Ice making is not allowed} | |warnInfo| Warning | {0:no warning?,1:overtemperature,2:Under-temperature,4:Overload,8:Charging error,16:Fan error,32:BLCD communication error} | |fanLvl| Fan level | {0:non-rotation,1:Level 1,2:Level 2,3:Level3,4:Level 4,5:Level 5} | |deiceAct| Deice Active? | {0:inactive,1:active} | ### switch | State | off | on | Name | cmd | |----------|:-------------:|:------:|------|------| |iceMode| Disable | Enable | Ice Making | {valName:enable,moduleType:1,operateType:iceMake,params:{enable:1,iceShape:1}} | |iceShape| small cubes | large cubes | Ice Shape | {valName:iceShape,moduleType:1,operateType:iceMake,params:{enable:1,iceShape:1}} | |iceDetach| Disable | Enable | Ice Detaching | {valName:enable,moduleType:1,operateType:deIce,params:{enable:0}} | |coolMode| Normal | Eco | cool Mode | {valName:mode,moduleType:1,operateType:ecoMode,params:{mode:1}} | |sensorAdv| Unblocked | Blocked | Sensor detection blocking. Refer to @ST_SENSOR for data explanation. Bit: 1: Blocked; 0: Unblocked. | {valName:senseorAdv,moduleType:1,operateType:sensorAdv,params:{sensorAdv:1}} | |beepEn| Disabled | Enabled | Buzzer enabling status | {valName:flag,moduleType:1,operateType:beepEn,params:{flag:1}} | |pwrPbEn| Disable | Enable | Battery protection switch | {valName:state,moduleType:1,operateType:protectBat,params:{state:1,level:0}} | |tmpUnit| Celsius | Fahrenheit | Temperature Unit | {valName:unit,moduleType:1,operateType:tmpUnit,params:{unit:0}} | ## bmsMaster ### number | State | Min | Max | Unit | Mult | Name | |----------|:-------------:|:-------------:|:------:|:-----:|-----| |designCap|0 | 13800 | mAh | 1 | Design capacity | |f32ShowSoc|0 | 100 | % | 1 | SOC | |minMosTmp|0 | 80 | °C | 1 | Minimum MOS temperature | |vol|0 | 60 | V | 0.001 | Voltage | |fullCap|0 | 13800 | mAh | 1 | Full capacity | |remainCap|0 | 13800 | mAh | 1 | Remaining capacity | |tmp|0 | 60 | °C | 1 | Temperature | |outWatts|0 | 500 | W | 1 | Output power | |cycles|0 | 6000 | | 1 | Number of cycles | |minCellVol|0 | 60 | V | 0.001 | Minimum cell voltage | |maxCellVol|0 | 60 | V | 0.001 | Maximum cell voltage | |maxMosTmp|0 | 80 | °C | 1 | Maximum MOS temperature | |inWatts|0 | 600 | W | 1 | Input power | |soc|0 | 100 | % | 1 | Remaining battery percentage | |tagChgAmp|0 | 100 | A | 0.0001 | Target charging current | |minCellTmp|0 | 60 | °C | 1 | Minimum cell temperature | |maxCellTmp|0 | 60 | °C | 1 | Maximum cell temperature | |remainTime|0 | 143999 | min | 1 | Time remaining | |amp|0 | 50 | A | 0.001 | Current | ### string | State | Name | |----------|------| |bmsFault| BMS permanent fault | |num| BMS number | |err| Global error code | |bqStatReg| BQ hardware protection register | |ver| System version | |soh| Health status | ### diagnostic | State | Name | values | |----------|:-------------:|------| |type| BMS type | {1:Lithium battery,2:Oil-powered} | |cellId| Battery capacity type | {1:2.5 Ah per battery,2:2 Ah per battery} | |openBmsIdx| Battery pack status | {0:Not enabled,1:Enabled} | ## ems ### number | State | Min | Max | Unit | Mult | Name | |----------|:-------------:|:-------------:|:------:|:-----:|-----| |closeOilEbSocMax|60 | 100 | % | 1 | SOC for turning off Smart Generator | |chgVol|0 | 150 | V | 0.001 | Charging voltage | |dsgRemain|0 | 5999 | min | 1 | Remaining discharging time | |maxAvailNum|0 | 40000 | mAh | 1 | Maximum available quantity | |paraVolMax|0 | 60 | V | 0.001 | Maximum parallel voltage | |paraVolMin|0 | 60 | V | 0.001 | Minimum parallel voltage | |lcdSoc|0 | 100 | % | 1 | SoC value displayed on LCD | |chgRemain|0 | 5999 | min | 1 | Remaining charging time | |openOilEbSocMin|0 | 30 | % | 1 | SoC for turning on Smart Generator | |minDsgSoc|0 | 30 | % | 1 | Minimum discharging SOC | |maxChgSoc|60 | 100 | % | 1 | Maximum charging SOC | |f32LcdSoc|0 | 100 | % | 1 | SOC on LCD | |chgAmp|0 | 100 | A | 0.0001 | Charging current | ### array | State | Name | |----------|------| |bmsIsConnt| BMS online signal | ### string | State | Name | |----------|------| |openBmsIdx| Open BMS index | |upsFlag| UPS mode enable flag | |bmsModel| BMS model | ### diagnostic | State | Name | values | |----------|:-------------:|------| |warnState| BMS warning state | {0:no warning?,1:hi_temp,2:low_temp,4:overload,8:chg_flag} | |dsgCmd| Discharge switch | {0:off,1:on,2:2?} | |emsFlag| ems Flag | {0:sleep,1:normal} | |chgCmd| Charge switch | {0:off,1:on,2:2?} | |fanLvl| Fan level | {0:non-rotation,1:Level 1,2:Level 2,3:Level3,4:Level 4,5:Level 5} | |chgState| Charging state | {0:disabled,1:CC,2:CV,3:UPS,4:PARA 0x55: Charging error} |