hoffmation-base 3.2.21 → 3.2.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -141,12 +141,15 @@ class Dachs extends RoomBaseDevice_1.RoomBaseDevice {
141
141
  }
142
142
  /** @inheritDoc */
143
143
  setActuator(c) {
144
+ var _a;
144
145
  sharedFunctions_1.LampUtils.setActuator(this, c);
145
146
  if (!c.on ||
146
147
  !this.warmWaterPump ||
147
148
  (this.queuedValue === false && !this._dachsOn) ||
149
+ this.settings.disableDachsOwnWW ||
150
+ ((_a = this.warmWaterDachsAlternativeActuator) === null || _a === void 0 ? void 0 : _a.actuatorOn) ||
148
151
  this.heatStorageTempSensor.temperatureSensor.temperature < this.warmWaterSensor.temperatureSensor.temperature ||
149
- this.warmWaterSensor.temperatureSensor.temperature > 70) {
152
+ this.warmWaterSensor.temperatureSensor.temperature > this.settings.warmWaterDesiredMaxTemp) {
150
153
  return;
151
154
  }
152
155
  const startPumpCommand = new command_1.ActuatorSetStateCommand(c, true, 'Dachs is starting/on');
@@ -348,6 +351,10 @@ class Dachs extends RoomBaseDevice_1.RoomBaseDevice {
348
351
  // It is winter and heat storage is kinda cold --> Start
349
352
  return true;
350
353
  }
354
+ else if (this.heatStorageTempSensor.temperatureSensor.temperature > this.settings.heatStorageMaxStartTemp) {
355
+ // Heat Storage is already quite full, don't start
356
+ return false;
357
+ }
351
358
  if ((dayType === enums_1.TimeOfDay.Daylight || dayType === enums_1.TimeOfDay.BeforeSunrise) &&
352
359
  batteryLevel > this.settings.batteryLevelTurnOnThreshold) {
353
360
  // It is daytime (maybe solar power) and it is no critical battery level
@@ -65,6 +65,10 @@ export interface iDachsDeviceSettings extends iActuatorSettings {
65
65
  * Defines the desired minimum temperature for heat storage during winter.
66
66
  */
67
67
  winterMinimumHeatStorageTemp: number;
68
+ /**
69
+ * Defines the maximum temperature for heat storage at start requests.
70
+ */
71
+ heatStorageMaxStartTemp: number;
68
72
  /**
69
73
  * Defines the desired minimum temperature for heat storage during winter.
70
74
  */
@@ -26,6 +26,8 @@ export declare class DachsDeviceSettings extends ActuatorSettings implements iDa
26
26
  /** @inheritDoc */
27
27
  warmWaterDesiredMaxTemp: number;
28
28
  /** @inheritDoc */
29
+ heatStorageMaxStartTemp: number;
30
+ /** @inheritDoc */
29
31
  winterMinimumHeatStorageTemp: number;
30
32
  /** @inheritDoc */
31
33
  winterMinimumPreNightHeatStorageTemp: number;
@@ -31,12 +31,14 @@ class DachsDeviceSettings extends actuatorSettings_1.ActuatorSettings {
31
31
  /** @inheritDoc */
32
32
  this.warmWaterDesiredMaxTemp = 75;
33
33
  /** @inheritDoc */
34
+ this.heatStorageMaxStartTemp = 70;
35
+ /** @inheritDoc */
34
36
  this.winterMinimumHeatStorageTemp = 55;
35
37
  /** @inheritDoc */
36
38
  this.winterMinimumPreNightHeatStorageTemp = 65;
37
39
  }
38
40
  fromPartialObject(data) {
39
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
41
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
40
42
  this.disableHeatingRod = (_a = data.disableHeatingRod) !== null && _a !== void 0 ? _a : this.disableHeatingRod;
41
43
  this.disableDachsOwnWW = (_b = data.disableDachsOwnWW) !== null && _b !== void 0 ? _b : this.disableDachsOwnWW;
42
44
  this.disableDachsTemporarily = (_c = data.disableDachsTemporarily) !== null && _c !== void 0 ? _c : this.disableDachsTemporarily;
@@ -52,9 +54,10 @@ class DachsDeviceSettings extends actuatorSettings_1.ActuatorSettings {
52
54
  this.batteryLevelAllowStartThreshold = (_k = data.batteryLevelAllowStartThreshold) !== null && _k !== void 0 ? _k : this.batteryLevelAllowStartThreshold;
53
55
  this.warmWaterDesiredMinTemp = (_l = data.warmWaterDesiredMinTemp) !== null && _l !== void 0 ? _l : this.warmWaterDesiredMinTemp;
54
56
  this.warmWaterDesiredMaxTemp = (_m = data.warmWaterDesiredMaxTemp) !== null && _m !== void 0 ? _m : this.warmWaterDesiredMaxTemp;
55
- this.winterMinimumHeatStorageTemp = (_o = data.winterMinimumHeatStorageTemp) !== null && _o !== void 0 ? _o : this.winterMinimumHeatStorageTemp;
57
+ this.heatStorageMaxStartTemp = (_o = data.heatStorageMaxStartTemp) !== null && _o !== void 0 ? _o : this.heatStorageMaxStartTemp;
58
+ this.winterMinimumHeatStorageTemp = (_p = data.winterMinimumHeatStorageTemp) !== null && _p !== void 0 ? _p : this.winterMinimumHeatStorageTemp;
56
59
  this.winterMinimumPreNightHeatStorageTemp =
57
- (_p = data.winterMinimumPreNightHeatStorageTemp) !== null && _p !== void 0 ? _p : this.winterMinimumPreNightHeatStorageTemp;
60
+ (_q = data.winterMinimumPreNightHeatStorageTemp) !== null && _q !== void 0 ? _q : this.winterMinimumPreNightHeatStorageTemp;
58
61
  super.fromPartialObject(data);
59
62
  }
60
63
  toJSON() {