From 2c00babf4d894ac44fd23bda338bf84348645af1 Mon Sep 17 00:00:00 2001 From: Jarno Rankinen Date: Sun, 7 Apr 2024 11:00:17 +0300 Subject: [PATCH] gh-32 Supply/Exhaust fan speeds to status endpoint --- main.go | 2 +- pingvin/pingvin.go | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/main.go b/main.go index be1dff2..654f4aa 100644 --- a/main.go +++ b/main.go @@ -25,7 +25,7 @@ import ( var static embed.FS var ( - version = "0.1.3" + version = "0.2.0" device pingvin.Pingvin config Conf usernamehash [32]byte diff --git a/pingvin/pingvin.go b/pingvin/pingvin.go index 6888a15..4367e8e 100644 --- a/pingvin/pingvin.go +++ b/pingvin/pingvin.go @@ -68,6 +68,8 @@ type pingvinStatus struct { HrcPct int `json:"hrc_pct"` // Heat recovery turn speed TempSetting float32 `json:"temp_setting"` // Requested room temperature FanPct int `json:"fan_pct"` // Circulation fan setting + FanPctIn int `json:"fan_pct_in"` // Intake fan setting + FanPctEx int `json:"fan_pct_ex"` // Exhaust fan setting Measurements pingvinMeasurements `json:"measurements"` // Measurements HrcEffIn int `json:"hrc_efficiency_in"` // Calculated HRC efficiency, intake HrcEffEx int `json:"hrc_efficiency_ex"` // Calculated HRC efficiency, extract @@ -503,6 +505,8 @@ func (p *Pingvin) populateStatus() { } p.Status.TempSetting = float32(p.Registers[135].Value) / float32(p.Registers[135].Multiplier) p.Status.FanPct = p.Registers[774].Value / p.Registers[774].Multiplier + p.Status.FanPctIn = p.Registers[3].Value / p.Registers[3].Multiplier + p.Status.FanPctEx = p.Registers[4].Value / p.Registers[4].Multiplier p.Status.Measurements.Roomtemp1 = float32(p.Registers[1].Value) / float32(p.Registers[1].Multiplier) p.Status.Measurements.SupplyHeated = float32(p.Registers[8].Value) / float32(p.Registers[8].Multiplier) p.Status.Measurements.SupplyHrc = float32(p.Registers[7].Value) / float32(p.Registers[7].Multiplier)