waterfurnace_aurora 1.2.0 → 1.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d9f0f7d0f0c846720df96f8889d1d5952ece7e0dbabea3431484f4efbff06f5a
4
- data.tar.gz: e82bc4400c9543322debe51a21da1dea54d07a673f7302e5ec2a2910e8229714
3
+ metadata.gz: b47f532c4646441ceefb753b5de6bd9b18e335d25c4e48219509f778e7ddebb7
4
+ data.tar.gz: 11988da61f95ac76957ca31e829ca521635431871b7c0f1bf800c78a66118362
5
5
  SHA512:
6
- metadata.gz: eddd8d24b22c6a1c1c64c8fdd29f79c00c76145252b5ddbcd08cf2c7edd0f03182439cb9cf511041bc1a789823b421eefcb3ac90d3f5c72e6fcb54fdf88dc60d
7
- data.tar.gz: 76b06de5f2ff979a0c4eaaf05998d4856aa01f491f80fc224870920319d9abda0c89c800a221d532f3c2ccb850c01217570d3f72b447af221186da18ed81fa84
6
+ metadata.gz: b6c42b8fd67cb1440a7253cd5454d74702d84430ced9a005b6c7a8424be979da57718e08a8e2a9e92dbba8c8b14ab705eb9442676e01e6f428d00d16a5d0493c
7
+ data.tar.gz: b0c40faa87893b6a2d2468d7c0ad3573fe11412ee715be9a89367c084ac21907db5c72eb546a4727d9c8fa163bf714d8f19b3f42040684a34f66116c82c3916a
@@ -282,10 +282,29 @@ class MQTTBridge
282
282
  unit: "W",
283
283
  hass: { sensor: { device_class: :power,
284
284
  state_class: :measurement } })
285
+ node.property("heat-of-extraction",
286
+ "Heat of Extraction",
287
+ :integer,
288
+ @abc.compressor.heat_of_extraction,
289
+ unit: "Btuh",
290
+ hass: { sensor: { state_class: :measurement } })
291
+ node.property("heat-of-rejection",
292
+ "Heat of Rejection",
293
+ :integer,
294
+ @abc.compressor.heat_of_rejection,
295
+ unit: "Btuh",
296
+ hass: { sensor: { state_class: :measurement } })
297
+
285
298
  end
286
299
 
287
300
  next unless @abc.compressor.is_a?(Aurora::Compressor::VSDrive)
288
301
 
302
+ node.property("desired-speed",
303
+ "Desired Speed",
304
+ :integer,
305
+ @abc.compressor.desired_speed,
306
+ format: @abc.compressor.speed_range,
307
+ hass: { sensor: { state_class: :measurement } })
289
308
  node.property("ambient-temperature",
290
309
  "Ambient Temperature",
291
310
  :float,
@@ -366,10 +385,18 @@ class MQTTBridge
366
385
  hass: { sensor: { device_class: :temperature,
367
386
  state_class: :measurement,
368
387
  entity_category: :diagnostic } })
369
- node.property("superheat-percentage",
370
- "SuperHeat Percentage",
388
+ node.property("subcool-temperature",
389
+ "SubCool Temperature",
390
+ :float,
391
+ @abc.compressor.subcool_temperature,
392
+ unit: "°F",
393
+ hass: { sensor: { device_class: :temperature,
394
+ state_class: :measurement,
395
+ entity_category: :diagnostic } })
396
+ node.property("eev-open-percentage",
397
+ "Electronic Expansion Valve Open Percentage",
371
398
  :integer,
372
- @abc.compressor.superheat_percentage,
399
+ @abc.compressor.eev_open_percentage,
373
400
  unit: "%",
374
401
  format: 0..100,
375
402
  hass: { sensor: { state_class: :measurement,
@@ -431,8 +458,7 @@ class MQTTBridge
431
458
 
432
459
  next unless @abc.blower.is_a?(Aurora::Blower::ECM)
433
460
 
434
- presets = %w[blower-only aux-heat]
435
- presets.concat %w[low-compressor high-compressor] unless @abc.iz2?
461
+ presets = %w[blower-only aux-heat low-compressor high-compressor]
436
462
  presets.each do |setting|
437
463
  field = "#{setting.tr("-", "_")}_speed"
438
464
  node.property("#{setting}-speed",
@@ -5,7 +5,12 @@ require "aurora/component"
5
5
  module Aurora
6
6
  module Compressor
7
7
  class GenericCompressor < Component
8
- attr_reader :speed, :watts, :cooling_liquid_line_temperature, :saturated_condensor_discharge_temperature
8
+ attr_reader :speed,
9
+ :watts,
10
+ :cooling_liquid_line_temperature,
11
+ :saturated_condensor_discharge_temperature,
12
+ :heat_of_extraction,
13
+ :heat_of_rejection
9
14
 
10
15
  def initialize(abc, stages)
11
16
  super(abc)
@@ -22,7 +27,7 @@ module Aurora
22
27
 
23
28
  def registers_to_read
24
29
  result = [19, 1134]
25
- result << (1146..1147) if abc.energy_monitoring?
30
+ result.concat([1146..1147, 1154..1157]) if abc.energy_monitoring?
26
31
  result
27
32
  end
28
33
 
@@ -37,7 +42,12 @@ module Aurora
37
42
  end
38
43
  @cooling_liquid_line_temperature = registers[19]
39
44
  @saturated_condensor_discharge_temperature = registers[1134]
40
- @watts = registers[1146] if abc.energy_monitoring?
45
+
46
+ return unless abc.energy_monitoring?
47
+
48
+ @watts = registers[1146]
49
+ @heat_of_extraction = registers[1154]
50
+ @heat_of_rejection = registers[1156]
41
51
  end
42
52
  end
43
53
 
@@ -45,6 +55,7 @@ module Aurora
45
55
  attr_reader :drive_temperature,
46
56
  :inverter_temperature,
47
57
  :ambient_temperature,
58
+ :desired_speed,
48
59
  :iz2_desired_speed,
49
60
  :fan_speed,
50
61
  :discharge_pressure,
@@ -53,7 +64,8 @@ module Aurora
53
64
  :suction_temperature,
54
65
  :saturated_evaporator_discharge_temperature,
55
66
  :superheat_temperature,
56
- :superheat_percentage
67
+ :subcool_temperature,
68
+ :eev_open_percentage
57
69
 
58
70
  def initialize(abc)
59
71
  super(abc, 12)
@@ -64,7 +76,7 @@ module Aurora
64
76
  end
65
77
 
66
78
  def registers_to_read
67
- result = super + [209, 3001, 3322..3327, 3522, 3524, 3808, 3903..3906]
79
+ result = super + [209, 1135..1136, 3000..3001, 3322..3327, 3522, 3524, 3808, 3903..3906]
68
80
  result << 564 if abc.iz2?
69
81
  result
70
82
  end
@@ -72,6 +84,7 @@ module Aurora
72
84
  def refresh(registers)
73
85
  super
74
86
 
87
+ @desired_speed = registers[3000]
75
88
  @speed = registers[3001]
76
89
  @discharge_pressure = registers[3322]
77
90
  @suction_pressure = registers[3323]
@@ -80,10 +93,11 @@ module Aurora
80
93
  @drive_temperature = registers[3327]
81
94
  @inverter_temperature = registers[3522]
82
95
  @fan_speed = registers[3524]
83
- @superheat_percentage = registers[3808]
96
+ @eev_open_percentage = registers[3808]
84
97
  @suction_temperature = registers[3903]
85
98
  @saturated_evaporator_discharge_temperature = registers[3905]
86
99
  @superheat_temperature = registers[3906]
100
+ @subcool_temperature = registers[registers[30].include?(:rv) ? 1136 : 1135]
87
101
 
88
102
  @iz2_desired_speed = registers[564] if abc.iz2?
89
103
  end
@@ -859,7 +859,11 @@ module Aurora
859
859
  1154 => "Heat of Extraction",
860
860
  1156 => "Heat of Rejection",
861
861
  1164 => "Pump Watts",
862
+ # this combines thermostat/iz2 desired speed with manual operation override
862
863
  3000 => "Compressor Speed Desired",
864
+ # this shows the actual speed
865
+ # it can differ from desired during a ramp to the desired speed, or
866
+ # the periodic ramp up to speed 6 that's not visible in the desired speed
863
867
  3001 => "Compressor Speed Actual",
864
868
  3002 => "Manual Operation",
865
869
  3027 => "Compressor Speed",
@@ -885,7 +889,7 @@ module Aurora
885
889
  3523 => "VS Drive UDC Voltage",
886
890
  3524 => "VS Drive Fan Speed",
887
891
  3804 => "VS Drive Details (EEV2 Ctl)",
888
- 3808 => "VS Drive SuperHeat Percent",
892
+ 3808 => "VS Drive EEV2 % Open",
889
893
  3903 => "VS Drive Suction Temperature",
890
894
  3904 => "VS Drive Leaving Air Temperature?",
891
895
  3905 => "VS Drive Saturated Evaporator Discharge Temperature",
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Aurora
4
- VERSION = "1.2.0"
4
+ VERSION = "1.3.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.2.0
4
+ version: 1.3.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: 2022-02-01 00:00:00.000000000 Z
11
+ date: 2022-02-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ccutrer-serialport