waterfurnace_aurora 1.4.12 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7c4bed015e5efbf7e4ec8dddafc69b15e0134c2b0889f0c50855cf7c1dfbfa38
4
- data.tar.gz: fd869a81144c60fcd019e20117854324b2ca06b66b325dc5991dc9b8d9731277
3
+ metadata.gz: 4aa5d7eb7e44c106d01755ecdfce849f23503d3d6c10da86bfa4c9d4376669e3
4
+ data.tar.gz: '026036095b6c3f5a7fd98825970612dd0399908f255ddc6a98520535edb2922d'
5
5
  SHA512:
6
- metadata.gz: 0e45fe5fa6161a9356a179b1da06db3f16eff1494d16871ff325c144f26dee80ea8d15c65bc9a5b9a8a16596c4e4ef41f4c18827797402010d27ea66749b8e81
7
- data.tar.gz: d9a5b40f3b33b43900f09e34cd90cbc8b2a20f2a919746060284adc001e21cb92c7faa334077ee49c2e62564656a6c68072c8a56d04bc57f471506a3591c6b4a
6
+ metadata.gz: b9904a9e4941a113c3c2a41819ba3dd279155262394011fa4b089062571079981c741a086e21c34c67276cd5b1f35ba2358ec71a5794022d01c7837aa635911b
7
+ data.tar.gz: 683a618118d05978ba623e0df2a6adaac9ff2d436b70baaad6374d4760e980c34bad29124a16929d5a4edd062df3a537b7a26baf96fa7dc69419c01e111658eb
@@ -584,8 +584,7 @@ class MQTTBridge
584
584
  node.property("enabled",
585
585
  "Enabled",
586
586
  :boolean,
587
- @abc.dhw.enabled,
588
- hass: { switch: { icon: "mdi:water-boiler" } }) do |value|
587
+ @abc.dhw.enabled) do |value|
589
588
  @mutex.synchronize { @abc.dhw.enabled = value }
590
589
  end
591
590
  node.property("running",
@@ -598,27 +597,46 @@ class MQTTBridge
598
597
  :float,
599
598
  @abc.dhw.set_point,
600
599
  format: 100..140,
601
- unit: "°F",
602
- hass: { number: { step: 5 } }) do |value|
600
+ unit: "°F") do |value|
603
601
  @mutex.synchronize { @abc.dhw.set_point = value }
604
602
  end
605
603
  node.property("water-temperature",
606
604
  "Water Temperature",
607
605
  :float,
608
606
  @abc.dhw.water_temperature,
609
- unit: "°F",
610
- hass: { sensor: { device_class: :temperature,
611
- state_class: :measurement } })
607
+ unit: "°F")
608
+ @homie.mqtt.unpublish_hass_switch("dhw_enabled", node_id: @homie.id)
609
+ @homie.mqtt.unpublish_hass_number("dhw_set-point", node_id: @homie.id)
610
+ @homie.mqtt.unpublish_hass_sensor("dhw_water-temperature", node_id: @homie.id)
611
+ node.hass_water_heater(current_temperature_property: "water-temperature",
612
+ mode_property: "enabled",
613
+ modes: %i[off heat_pump],
614
+ mode_command_template: <<~JINJA,
615
+ {% if value == 'off' %}
616
+ false
617
+ {% else %}
618
+ true
619
+ {% endif %}
620
+ JINJA
621
+ mode_state_template: <<~JINJA,
622
+ {% if value == 'true' %}
623
+ heat_pump
624
+ {% elif value == 'false' %}
625
+ off
626
+ {% endif %}
627
+ JINJA
628
+ temperature_property: "set-point",
629
+ icon: "mdi:water-boiler")
612
630
  end
613
631
  end
614
632
 
615
633
  if @abc.humidistat
616
634
  @humidistat = @homie.node("humidistat", "Humidistat", "Humidistat") do |node|
617
635
  if @abc.humidistat.humidifier?
618
- node.property("humidifier-running",
619
- "Humidifier Running",
620
- :boolean,
621
- @abc.humidistat.humidifier_running?)
636
+ running = node.property("humidifier-running",
637
+ "Humidifier Running",
638
+ :boolean,
639
+ @abc.humidistat.humidifier_running?)
622
640
  if @abc.awl_communicating?
623
641
  node.property("humidifier-mode",
624
642
  "Humidifier Mode",
@@ -636,21 +654,22 @@ class MQTTBridge
636
654
  @mutex.synchronize { @abc.humidistat.humidification_target = value }
637
655
  end
638
656
  node.hass_humidifier("humidifier-running",
639
- target_property: "humidification-target",
657
+ target_humidity_property: "humidification-target",
640
658
  mode_property: "humidifier-mode",
641
- id: "humidifier",
659
+ object_id: "humidifier",
642
660
  name: "Humidifier",
643
- device_class: :humidifier)
661
+ device_class: :humidifier,
662
+ command_topic: "#{running.topic}/set")
644
663
  end
645
664
  end
646
665
 
647
666
  # VSDrive can perform active dehumidification, even without a dedicated dehumidifier
648
667
  if @abc.humidistat.dehumidifier? ||
649
668
  @abc.compressor.is_a?(Aurora::Compressor::VSDrive)
650
- node.property("dehumidifier-running",
651
- "Dehumidifier Running",
652
- :boolean,
653
- @abc.humidistat.dehumidifier_running?)
669
+ running = node.property("dehumidifier-running",
670
+ "Dehumidifier Running",
671
+ :boolean,
672
+ @abc.humidistat.dehumidifier_running?)
654
673
  if @abc.awl_communicating?
655
674
  node.property("dehumidifier-mode",
656
675
  "Dehumidifier Mode",
@@ -668,11 +687,12 @@ class MQTTBridge
668
687
  @mutex.synchronize { @abc.humidistat.dehumidification_target = value }
669
688
  end
670
689
  node.hass_humidifier("dehumidifier-running",
671
- target_property: "dehumidification-target",
690
+ target_humidity_property: "dehumidification-target",
672
691
  mode_property: "dehumidifier-mode",
673
- id: "dehumidifier",
692
+ object_id: "dehumidifier",
674
693
  name: "Dehumidifier",
675
- device_class: :dehumidifier)
694
+ device_class: :dehumidifier,
695
+ command_topic: "#{running.topic}/set")
676
696
  end
677
697
  end
678
698
  next unless @abc.awl_communicating?
@@ -819,17 +839,16 @@ class MQTTBridge
819
839
  mode_property: "target-mode",
820
840
  temperature_high_property: "cooling-target-temperature",
821
841
  temperature_low_property: "heating-target-temperature",
822
- templates: {
823
- action_template: <<~JINJA
824
- {% if value.startswith('h') %}
825
- heating
826
- {% elif value.startswith('c') %}
827
- cooling
828
- {% elif value == 'standby' %}
829
- idle
830
- {% endif %}
831
- JINJA
832
- })
842
+ action_template: <<~JINJA
843
+ {% if value.startswith('h') %}
844
+ heating
845
+ {% elif value.startswith('c') %}
846
+ cooling
847
+ {% elif value == 'standby' %}
848
+ idle
849
+ {% endif %}
850
+ JINJA
851
+ )
833
852
  end
834
853
  end
835
854
 
@@ -236,7 +236,7 @@ module Aurora
236
236
  end
237
237
  @outdoor_temperature = registers[31_003]
238
238
  @air_coil_temperature = registers[20]
239
- @locked_out = !registers[25].nobits?(0x8000)
239
+ @locked_out = registers[25].anybits?(0x8000)
240
240
  @current_fault = registers[25] & 0x7fff
241
241
  @derated = (41..46).cover?(@current_fault)
242
242
  @safe_mode = [47, 48, 49, 72, 74].include?(@current_fault)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Aurora
4
- VERSION = "1.4.12"
4
+ VERSION = "1.5.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: waterfurnace_aurora
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.12
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cody Cutrer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-12-28 00:00:00.000000000 Z
11
+ date: 2025-01-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ccutrer-serialport
@@ -25,25 +25,19 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: mqtt-homeassistant
28
+ name: mqtt-homie-homeassistant
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.1'
34
- - - ">="
35
- - !ruby/object:Gem::Version
36
- version: 0.1.5
33
+ version: '1.0'
37
34
  type: :runtime
38
35
  prerelease: false
39
36
  version_requirements: !ruby/object:Gem::Requirement
40
37
  requirements:
41
38
  - - "~>"
42
39
  - !ruby/object:Gem::Version
43
- version: '0.1'
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: 0.1.5
40
+ version: '1.0'
47
41
  - !ruby/object:Gem::Dependency
48
42
  name: net-telnet-rfc2217
49
43
  requirement: !ruby/object:Gem::Requirement