zigbee-herdsman-converters 25.67.0 → 25.69.0

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.
Files changed (62) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/dist/converters/toZigbee.d.ts.map +1 -1
  3. package/dist/converters/toZigbee.js +12 -1
  4. package/dist/converters/toZigbee.js.map +1 -1
  5. package/dist/devices/aurora_lighting.d.ts.map +1 -1
  6. package/dist/devices/aurora_lighting.js +7 -0
  7. package/dist/devices/aurora_lighting.js.map +1 -1
  8. package/dist/devices/bosch.d.ts.map +1 -1
  9. package/dist/devices/bosch.js +24 -8
  10. package/dist/devices/bosch.js.map +1 -1
  11. package/dist/devices/domraem.d.ts.map +1 -1
  12. package/dist/devices/domraem.js +4 -1
  13. package/dist/devices/domraem.js.map +1 -1
  14. package/dist/devices/efekta.js +14 -14
  15. package/dist/devices/efekta.js.map +1 -1
  16. package/dist/devices/gledopto.js +1 -1
  17. package/dist/devices/gledopto.js.map +1 -1
  18. package/dist/devices/innr.d.ts.map +1 -1
  19. package/dist/devices/innr.js +2 -0
  20. package/dist/devices/innr.js.map +1 -1
  21. package/dist/devices/lightsolutions.d.ts.map +1 -1
  22. package/dist/devices/lightsolutions.js +7 -0
  23. package/dist/devices/lightsolutions.js.map +1 -1
  24. package/dist/devices/lumi.d.ts.map +1 -1
  25. package/dist/devices/lumi.js +7 -1
  26. package/dist/devices/lumi.js.map +1 -1
  27. package/dist/devices/namron.js +1 -1
  28. package/dist/devices/namron.js.map +1 -1
  29. package/dist/devices/osram.js +1 -1
  30. package/dist/devices/osram.js.map +1 -1
  31. package/dist/devices/philips.d.ts.map +1 -1
  32. package/dist/devices/philips.js +23 -1
  33. package/dist/devices/philips.js.map +1 -1
  34. package/dist/devices/shelly.d.ts.map +1 -1
  35. package/dist/devices/shelly.js +97 -1
  36. package/dist/devices/shelly.js.map +1 -1
  37. package/dist/devices/sonoff.d.ts.map +1 -1
  38. package/dist/devices/sonoff.js +20 -0
  39. package/dist/devices/sonoff.js.map +1 -1
  40. package/dist/devices/third_reality.d.ts.map +1 -1
  41. package/dist/devices/third_reality.js +17 -0
  42. package/dist/devices/third_reality.js.map +1 -1
  43. package/dist/devices/tuya.d.ts.map +1 -1
  44. package/dist/devices/tuya.js +118 -37
  45. package/dist/devices/tuya.js.map +1 -1
  46. package/dist/lib/bosch.d.ts +3 -4
  47. package/dist/lib/bosch.d.ts.map +1 -1
  48. package/dist/lib/bosch.js +19 -167
  49. package/dist/lib/bosch.js.map +1 -1
  50. package/dist/lib/constants.d.ts +1 -0
  51. package/dist/lib/constants.d.ts.map +1 -1
  52. package/dist/lib/constants.js +2 -1
  53. package/dist/lib/constants.js.map +1 -1
  54. package/dist/lib/lumi.js +1 -1
  55. package/dist/lib/lumi.js.map +1 -1
  56. package/dist/lib/modernExtend.d.ts.map +1 -1
  57. package/dist/lib/modernExtend.js +5 -13
  58. package/dist/lib/modernExtend.js.map +1 -1
  59. package/dist/lib/types.d.ts +1 -0
  60. package/dist/lib/types.d.ts.map +1 -1
  61. package/dist/models-index.json +1 -1
  62. package/package.json +1 -1
@@ -320,6 +320,9 @@ export declare const boschThermostatExtend: {
320
320
  heaterType: () => ModernExtend;
321
321
  valveType: () => ModernExtend;
322
322
  humidity: () => ModernExtend;
323
+ operatingMode: (args?: {
324
+ enableReporting: boolean;
325
+ }) => ModernExtend;
323
326
  windowOpenMode: (args?: {
324
327
  enableReporting: boolean;
325
328
  }) => ModernExtend;
@@ -336,12 +339,8 @@ export declare const boschThermostatExtend: {
336
339
  customHeatingDemand: () => ModernExtend;
337
340
  rmBattery: () => ModernExtend;
338
341
  rmThermostat: () => ModernExtend;
339
- customSystemMode: () => ModernExtend;
340
342
  raThermostat: () => ModernExtend;
341
343
  customRunningState: () => ModernExtend;
342
- operatingMode: (args?: {
343
- enableReporting: boolean;
344
- }) => ModernExtend;
345
344
  boostHeating: (args?: {
346
345
  enableReporting: boolean;
347
346
  }) => ModernExtend;
@@ -1 +1 @@
1
- {"version":3,"file":"bosch.d.ts","sourceRoot":"","sources":["../../src/lib/bosch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bosch.d.ts","sourceRoot":"","sources":["../../src/lib/bosch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAQ,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,wCAAwC,CAAC;AAKvE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAIrD,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;AAGzD,OAAO,KAAK,EAAgE,QAAQ,EAAe,YAAY,EAAkB,MAAM,SAAS,CAAC;AASjJ,eAAO,MAAM,mBAAmB;;gBAEf,UAAU;CAC1B,CAAC;AAGF,eAAO,MAAM,kBAAkB;IAC3B;;;;0EAIsE;iDACzB,MAAM,kBAAkB,MAAM,KAAG,YAAY;IAmE1F;;;;;;;;;4BASwB;uCACS,YAAY;+CAgCF,WAAW;CAQzD,CAAC;AAaF,UAAU,+BAA+B;IACrC,UAAU,EAAE;QACR,4BAA4B;QAC5B,cAAc,EAAE,MAAM,CAAC;QACvB,2BAA2B;QAC3B,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC;IAChB,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AAED,eAAO,MAAM,8BAA8B;;6BAahB,YAAY;qBA0BlB;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,KAAG,YAAY;CAkHrD,CAAC;AAIF,eAAO,MAAM,8BAA8B;qBACtB;QACb,mBAAmB,EAAE,MAAM,CAAC;QAC5B,qBAAqB,EAAE,MAAM,CAAC;QAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAC;QACnC,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,aAAa,CAAC,EAAE,MAAM,CAAC;KAC1B,KAAG,YAAY;CA2GnB,CAAC;AAIF,MAAM,WAAW,gBAAiB,SAAQ,+BAA+B;IACrE,UAAU,EAAE;QACR,kDAAkD;QAClD,UAAU,EAAE,MAAM,CAAC;QACnB,0BAA0B;QAC1B,UAAU,EAAE,MAAM,CAAC;QACnB,mDAAmD;QACnD,sBAAsB,EAAE,MAAM,CAAC;QAC/B,mDAAmD;QACnD,sBAAsB,EAAE,MAAM,CAAC;QAC/B,gFAAgF;QAChF,mBAAmB,EAAE,MAAM,CAAC;QAC5B,kDAAkD;QAClD,yBAAyB,EAAE,MAAM,CAAC;QAClC,gEAAgE;QAChE,cAAc,EAAE,MAAM,CAAC;QACvB,+DAA+D;QAC/D,WAAW,EAAE,MAAM,CAAC;QACpB,4BAA4B;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,oDAAoD;QACpD,uBAAuB,EAAE,MAAM,CAAC;QAChC,oDAAoD;QACpD,uBAAuB,EAAE,MAAM,CAAC;QAChC,mDAAmD;QACnD,UAAU,EAAE,MAAM,CAAC;QACnB,mDAAmD;QACnD,0BAA0B,EAAE,MAAM,CAAC;QACnC,mDAAmD;QACnD,2BAA2B,EAAE,MAAM,CAAC;QACpC,kDAAkD;QAClD,UAAU,EAAE,MAAM,CAAC;QACnB,mDAAmD;QACnD,WAAW,EAAE,MAAM,CAAC;QACpB,kDAAkD;QAClD,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kDAAkD;QAClD,iBAAiB,EAAE,MAAM,CAAC;QAC1B,uEAAuE;QACvE,UAAU,EAAE,MAAM,CAAC;QACnB,oDAAoD;QACpD,6BAA6B,EAAE,MAAM,CAAC;QACtC,kDAAkD;QAClD,YAAY,EAAE,MAAM,CAAC;QACrB,qDAAqD;QACrD,mBAAmB,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC;IAChB,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AAED,eAAO,MAAM,eAAe;uBACL;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC;QAAC,gBAAgB,EAAE,QAAQ,CAAC;QAAC,gBAAgB,EAAE,QAAQ,CAAA;KAAC,KAAG,YAAY;uBAuGvH;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAC,KAAG,YAAY;;;2BA2GhC,YAAY;0BAyGX;QAAC,iBAAiB,EAAE,QAAQ,CAAA;KAAC,KAAG,YAAY;wBA2E9C;QAAC,gBAAgB,EAAE,OAAO,CAAC;QAAC,iBAAiB,CAAC,EAAE,QAAQ,CAAA;KAAC,KAAG,YAAY;uBAgGzE;QAAC,gBAAgB,EAAE,QAAQ,CAAA;KAAC,KAAG,YAAY;+BAuGnC;QAAC,gBAAgB,EAAE,QAAQ,CAAC;QAAC,mBAAmB,EAAE,OAAO,CAAA;KAAC,KAAG,YAAY;sBA6FpF,YAAY;CA6Q/B,CAAC;AAIF,MAAM,WAAW,wBAAwB;IACrC,UAAU,EAAE;QACR,+BAA+B;QAC/B,iBAAiB,EAAE,MAAM,CAAC;QAC1B;;;;;qEAK6D;QAC7D,gBAAgB,EAAE,MAAM,CAAC;QACzB,8BAA8B;QAC9B,kBAAkB,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC;IAChB,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACpC,UAAU,EAAE;QACR,8BAA8B;QAC9B,kBAAkB,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF,QAAQ,EAAE;QACN,cAAc;QACd,uBAAuB,EAAE;YACrB,kBAAkB;YAClB,IAAI,EAAE,MAAM,CAAC;SAChB,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IAClC,UAAU,EAAE;QACR,8BAA8B;QAC9B,aAAa,EAAE,MAAM,CAAC;QACtB,8BAA8B;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,8BAA8B;QAC9B,WAAW,EAAE,MAAM,CAAC;QACpB,+BAA+B;QAC/B,UAAU,EAAE,MAAM,CAAC;QACnB,+BAA+B;QAC/B,UAAU,EAAE,MAAM,CAAC;QACnB,8BAA8B;QAC9B,aAAa,EAAE,MAAM,CAAC;QACtB,8BAA8B;QAC9B,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE;QACN,cAAc;QACd,YAAY,EAAE;YACV,mBAAmB;YACnB,IAAI,EAAE,MAAM,CAAC;SAChB,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AAED,eAAO,MAAM,eAAe;;;;wBA8CN,YAAY;;;;;;;;;yBAiKX,YAAY;;6BAiHR,YAAY;CA4CtC,CAAC;AA6BF,eAAO,MAAM,4BAA4B;;;iCAwBR;QAAC,oBAAoB,EAAE,OAAO,CAAA;KAAC,KAAG,YAAY;8BAkDnD,YAAY;8BAyHZ,YAAY;CAuJvC,CAAC;AAIF,eAAO,MAAM,eAAe;;;;;mCAwBK,YAAY;4BA4FnB,YAAY;kCA8DN,YAAY;CAmB3C,CAAC;AAwBF,eAAO,MAAM,qBAAqB;;mCAcD,YAAY;;4BAwBnB,YAAY;;;CAkIrC,CAAC;AAuBF,eAAO,MAAM,qBAAqB;;IAmB9B;;;;;;;;kDAQ8C;0CACV,YAAY;;wBAmD9B,YAAY;;;CAsJjC,CAAC;AAuBF,eAAO,MAAM,oBAAoB;;;;4BA8BP,YAAY;8BA0HR,oBAAoB;CAQjD,CAAC;AAIF,MAAM,WAAW,sBAAsB;IACnC,UAAU,EAAE;QACR,8BAA8B;QAC9B,aAAa,EAAE,MAAM,CAAC;QACtB,oDAAoD;QACpD,aAAa,EAAE,MAAM,CAAC;QACtB,oDAAoD;QACpD,gBAAgB,EAAE,MAAM,CAAC;QACzB,2FAA2F;QAC3F,iBAAiB,EAAE,MAAM,CAAC;QAC1B,oDAAoD;QACpD,iBAAiB,EAAE,MAAM,CAAC;QAC1B,4EAA4E;QAC5E,iBAAiB,EAAE,MAAM,CAAC;QAC1B,8BAA8B;QAC9B,cAAc,EAAE,MAAM,CAAC;QACvB,8BAA8B;QAC9B,YAAY,EAAE,MAAM,CAAC;QACrB,mEAAmE;QACnE,sBAAsB,EAAE,MAAM,CAAC;QAC/B,wDAAwD;QACxD,SAAS,EAAE,MAAM,CAAC;QAClB,2FAA2F;QAC3F,iBAAiB,EAAE,MAAM,CAAC;QAC1B,mEAAmE;QACnE,eAAe,EAAE,MAAM,CAAC;QACxB,wDAAwD;QACxD,UAAU,EAAE,MAAM,CAAC;QACnB,gCAAgC;QAChC,UAAU,EAAE,MAAM,CAAC;QACnB,oDAAoD;QACpD,mBAAmB,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE;QACN,mCAAmC;QACnC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;KACzC,CAAC;IACF,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AAED,MAAM,WAAW,4BAA4B;IACzC,UAAU,EAAE;QACR,oDAAoD;QACpD,kBAAkB,EAAE,MAAM,CAAC;QAC3B,mEAAmE;QACnE,WAAW,EAAE,MAAM,CAAC;QACpB,oDAAoD;QACpD,oBAAoB,EAAE,MAAM,CAAC;QAC7B,8BAA8B;QAC9B,uBAAuB,EAAE,MAAM,CAAC;QAChC,8BAA8B;QAC9B,iBAAiB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC;IAChB,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AAiBD,eAAO,MAAM,qBAAqB;;;;;;;;;2BAqFP;QAAC,eAAe,EAAE,OAAO,CAAA;KAAC;4BAUzB;QAAC,eAAe,EAAE,OAAO,CAAA;KAAC;;;;;;;;kCAgGpB;QAAC,eAAe,EAAE,OAAO,CAAA;KAAC;;;wBAmCtC,YAAY;wBAoCZ,YAAY;8BA2EN,YAAY;0BAoCd;QAAC,eAAe,EAAE,OAAO,CAAA;KAAC,KAAG,YAAY;wBAqF3C;QAAC,eAAe,EAAE,OAAO,CAAA;KAAC,KAAG,YAAY;2BAkExC,YAAY;CAuHpC,CAAC"}
package/dist/lib/bosch.js CHANGED
@@ -2429,6 +2429,7 @@ const boschThermostatLookup = {
2429
2429
  systemModes: {
2430
2430
  heat: 0x04,
2431
2431
  cool: 0x03,
2432
+ off: 0x00,
2432
2433
  },
2433
2434
  raRunningStates: ["idle", "heat"],
2434
2435
  heaterType: {
@@ -2516,8 +2517,17 @@ exports.boschThermostatExtend = {
2516
2517
  entityCategory: "config",
2517
2518
  }),
2518
2519
  humidity: () => m.humidity({ reporting: false }),
2520
+ operatingMode: (args) => m.enumLookup({
2521
+ name: "operating_mode",
2522
+ cluster: "hvacThermostat",
2523
+ attribute: "operatingMode",
2524
+ description: "Bosch-specific operating mode",
2525
+ lookup: { schedule: 0x00, manual: 0x01, pause: 0x05 },
2526
+ reporting: args?.enableReporting ? { min: "MIN", max: "MAX", change: null } : false,
2527
+ entityCategory: "config",
2528
+ }),
2519
2529
  windowOpenMode: (args) => m.binary({
2520
- name: "window_open_mode",
2530
+ name: "window_detection",
2521
2531
  cluster: "hvacThermostat",
2522
2532
  attribute: "windowOpenMode",
2523
2533
  description: "Activates the window open mode, where the thermostat disables any heating/cooling " +
@@ -2637,7 +2647,7 @@ exports.boschThermostatExtend = {
2637
2647
  rmThermostat: () => {
2638
2648
  const thermostat = m.thermostat({
2639
2649
  localTemperature: {
2640
- configure: { reporting: false },
2650
+ configure: { reporting: { min: 30, max: 900, change: 10 } },
2641
2651
  },
2642
2652
  localTemperatureCalibration: {
2643
2653
  values: { min: -5, max: 5, step: 0.1 },
@@ -2648,109 +2658,26 @@ exports.boschThermostatExtend = {
2648
2658
  occupiedHeatingSetpoint: { min: 5, max: 30, step: 0.5 },
2649
2659
  occupiedCoolingSetpoint: { min: 5, max: 30, step: 0.5 },
2650
2660
  },
2651
- configure: { reporting: false },
2661
+ configure: { reporting: { min: "10_SECONDS", max: "MAX", change: 50 } },
2652
2662
  },
2653
2663
  systemMode: {
2654
- values: ["heat", "cool"],
2655
- toZigbee: { skip: true },
2656
- configure: { skip: true },
2664
+ values: ["off", "heat", "cool"],
2665
+ configure: { reporting: { min: "MIN", max: "MAX", change: null } },
2657
2666
  },
2658
2667
  runningState: {
2659
2668
  values: ["idle", "heat", "cool"],
2660
- configure: { reporting: false },
2669
+ configure: { reporting: { min: "MIN", max: "MAX", change: null } },
2661
2670
  },
2662
2671
  });
2663
- const expose = (device, options) => {
2664
- const returnedThermostat = thermostat.exposes;
2665
- if (utils.isDummyDevice(device)) {
2666
- return returnedThermostat;
2667
- }
2668
- let currentSystemMode;
2669
- try {
2670
- currentSystemMode = utils.getFromLookupByValue(device.getEndpoint(1).getClusterAttributeValue("hvacThermostat", "systemMode"), boschThermostatLookup.systemModes);
2671
- }
2672
- catch {
2673
- currentSystemMode = "heat";
2674
- }
2675
- // The thermostat is a singleton, thus the values must be set
2676
- // manually as filtering will lead to an array without
2677
- // heat/cool in them after two systemMode changes.
2678
- returnedThermostat[0].features.forEach((exposedAttribute, index, array) => {
2679
- if (exposedAttribute.type === "enum") {
2680
- if (exposedAttribute.name === "system_mode") {
2681
- exposedAttribute.label = "Active system mode";
2682
- exposedAttribute.description =
2683
- "Currently used system mode by the thermostat. This field is primarily " +
2684
- "used to configure the thermostat in Home Assistant correctly.";
2685
- exposedAttribute.values = [currentSystemMode];
2686
- exposedAttribute.access = ea.STATE;
2687
- }
2688
- if (exposedAttribute.name === "running_state") {
2689
- exposedAttribute.values = ["idle", currentSystemMode];
2690
- }
2691
- }
2692
- });
2693
- return returnedThermostat;
2694
- };
2672
+ const exposes = thermostat.exposes;
2695
2673
  return {
2696
- exposes: [expose],
2674
+ exposes: exposes,
2697
2675
  fromZigbee: thermostat.fromZigbee,
2698
2676
  toZigbee: thermostat.toZigbee,
2699
2677
  configure: thermostat.configure,
2700
2678
  isModernExtend: true,
2701
2679
  };
2702
2680
  },
2703
- customSystemMode: () => {
2704
- const exposes = [
2705
- e
2706
- .enum("custom_system_mode", ea.ALL, Object.keys(boschThermostatLookup.systemModes))
2707
- .withLabel("Available system modes")
2708
- .withDescription("Select if the thermostat is connected to a heating or a cooling device")
2709
- .withCategory("config"),
2710
- ];
2711
- const fromZigbee = [
2712
- {
2713
- cluster: "hvacThermostat",
2714
- type: ["attributeReport", "readResponse"],
2715
- convert: (model, msg, publish, options, meta) => {
2716
- const result = {};
2717
- const data = msg.data;
2718
- if (data.systemMode !== undefined) {
2719
- result.custom_system_mode = utils.getFromLookupByValue(data.systemMode, boschThermostatLookup.systemModes);
2720
- meta.deviceExposesChanged();
2721
- }
2722
- return result;
2723
- },
2724
- },
2725
- ];
2726
- const toZigbee = [
2727
- {
2728
- key: ["custom_system_mode"],
2729
- convertSet: async (entity, key, value, meta) => {
2730
- await entity.write("hvacThermostat", {
2731
- systemMode: utils.toNumber(utils.getFromLookup(value, boschThermostatLookup.systemModes)),
2732
- });
2733
- return { state: { custom_system_mode: value } };
2734
- },
2735
- convertGet: async (entity, key, meta) => {
2736
- await entity.read("hvacThermostat", ["systemMode"]);
2737
- },
2738
- },
2739
- ];
2740
- const configure = [
2741
- m.setupConfigureForReporting("hvacThermostat", "systemMode", {
2742
- config: false,
2743
- access: ea.ALL,
2744
- }),
2745
- ];
2746
- return {
2747
- exposes,
2748
- fromZigbee,
2749
- toZigbee,
2750
- configure,
2751
- isModernExtend: true,
2752
- };
2753
- },
2754
2681
  raThermostat: () => {
2755
2682
  // Native thermostat
2756
2683
  const thermostat = m.thermostat({
@@ -2773,7 +2700,7 @@ exports.boschThermostatExtend = {
2773
2700
  occupiedHeatingSetpoint: { min: 5, max: 30, step: 0.5 },
2774
2701
  },
2775
2702
  configure: {
2776
- reporting: { min: "MIN", max: "MAX", change: 1 },
2703
+ reporting: { min: "10_SECONDS", max: "MAX", change: 50 },
2777
2704
  },
2778
2705
  },
2779
2706
  systemMode: {
@@ -2854,81 +2781,6 @@ exports.boschThermostatExtend = {
2854
2781
  isModernExtend: true,
2855
2782
  };
2856
2783
  },
2857
- operatingMode: (args) => {
2858
- const operatingModeLookup = { schedule: 0x00, manual: 0x01, pause: 0x05 };
2859
- const operatingMode = m.enumLookup({
2860
- name: "operating_mode",
2861
- cluster: "hvacThermostat",
2862
- attribute: "operatingMode",
2863
- description: "Bosch-specific operating mode. This is being used as mode on the exposed thermostat when using Home Assistant.",
2864
- lookup: operatingModeLookup,
2865
- reporting: args?.enableReporting ? { min: "MIN", max: "MAX", change: null } : false,
2866
- entityCategory: "config",
2867
- });
2868
- const exposes = operatingMode.exposes;
2869
- const fromZigbee = operatingMode.fromZigbee;
2870
- const toZigbee = operatingMode.toZigbee;
2871
- const configure = operatingMode.configure;
2872
- const removeLowAndHighTemperatureFields = (payload) => {
2873
- payload.temperature_high_command_topic = undefined;
2874
- payload.temperature_low_command_topic = undefined;
2875
- payload.temperature_high_state_template = undefined;
2876
- payload.temperature_low_state_template = undefined;
2877
- payload.temperature_high_state_topic = undefined;
2878
- payload.temperature_low_state_topic = undefined;
2879
- };
2880
- // Override the payload send to Home Assistant to achieve the following:
2881
- // 1. Use the Bosch operating mode instead of system modes
2882
- // See: https://github.com/Koenkk/zigbee2mqtt/pull/23075#issue-2355829475
2883
- // 2. Remove setpoints not compatible with the currently used system mode
2884
- // See: https://github.com/Koenkk/zigbee2mqtt/issues/28892
2885
- const meta = {
2886
- overrideHaDiscoveryPayload: (payload) => {
2887
- if (payload.modes !== undefined) {
2888
- if (payload.modes.includes("heat")) {
2889
- payload.mode_command_template =
2890
- `{% set values = { 'auto':'schedule', 'heat':'manual', 'off':'pause' } %}` +
2891
- `{"operating_mode": "{{ values[value] if value in values.keys() else 'pause' }}"}`;
2892
- payload.mode_state_template =
2893
- `{% set values = { 'schedule':'auto', 'manual':'heat', 'pause':'off' } %}` +
2894
- "{% set value = value_json.operating_mode %}" +
2895
- `{{ values[value] if value in values.keys() else 'off' }}`;
2896
- if (payload.temperature_low_command_topic !== undefined) {
2897
- payload.temperature_command_topic = payload.temperature_low_command_topic;
2898
- payload.temperature_state_template = payload.temperature_low_state_template;
2899
- payload.temperature_state_topic = payload.temperature_low_state_topic;
2900
- removeLowAndHighTemperatureFields(payload);
2901
- }
2902
- }
2903
- else if (payload.modes.includes("cool")) {
2904
- payload.mode_command_template =
2905
- `{% set values = { 'auto':'schedule', 'cool':'manual', 'off':'pause' } %}` +
2906
- `{"operating_mode": "{{ values[value] if value in values.keys() else 'pause' }}"}`;
2907
- payload.mode_state_template =
2908
- `{% set values = { 'schedule':'auto', 'manual':'cool', 'pause':'off' } %}` +
2909
- "{% set value = value_json.operating_mode %}" +
2910
- `{{ values[value] if value in values.keys() else 'off' }}`;
2911
- if (payload.temperature_high_command_topic !== undefined) {
2912
- payload.temperature_command_topic = payload.temperature_high_command_topic;
2913
- payload.temperature_state_template = payload.temperature_high_state_template;
2914
- payload.temperature_state_topic = payload.temperature_high_state_topic;
2915
- removeLowAndHighTemperatureFields(payload);
2916
- }
2917
- }
2918
- payload.modes = ["off", ...payload.modes, "auto"];
2919
- payload.mode_command_topic = payload.mode_command_topic.replace("/system_mode", "");
2920
- }
2921
- },
2922
- };
2923
- return {
2924
- exposes,
2925
- fromZigbee,
2926
- toZigbee,
2927
- configure,
2928
- meta,
2929
- isModernExtend: true,
2930
- };
2931
- },
2932
2784
  boostHeating: (args) => {
2933
2785
  const boostHeatingLookup = {
2934
2786
  OFF: 0x00,