add lightning sensor
All checks were successful
Build and Publish / release (push) Has been skipped
Build and Publish / check-chart (push) Successful in 10s
Build and Publish / helm-release (push) Has been skipped

This commit is contained in:
Ryan McGuire 2025-04-02 19:49:32 -04:00
parent e2c464b34e
commit dcb60e6898
3 changed files with 27 additions and 7 deletions

View File

@ -24,6 +24,7 @@ const (
BattIndoorSensor = "IndoorSensor" BattIndoorSensor = "IndoorSensor"
BattRainSensor = "RainSensor" BattRainSensor = "RainSensor"
BattCO2Sensor = "CO2Sensor" BattCO2Sensor = "CO2Sensor"
BattLightningSensor = "LightningSensor"
THSensor = "TempHumiditySensor" THSensor = "TempHumiditySensor"
) )
@ -74,6 +75,10 @@ func MapAwnUpdate(awnUpdate *AmbientWeatherUpdate) *weather.WeatherUpdate {
YearlyRainIn: awnUpdate.YearlyRainIn, YearlyRainIn: awnUpdate.YearlyRainIn,
TotalRainIn: awnUpdate.TotalRainIn, TotalRainIn: awnUpdate.TotalRainIn,
Batteries: []weather.BatteryStatus{ Batteries: []weather.BatteryStatus{
{
Component: BattLightningSensor,
Status: awnUpdate.BattLightning,
},
{ {
Component: BattOutdoorSensor, Component: BattOutdoorSensor,
Status: awnUpdate.BattOut, Status: awnUpdate.BattOut,
@ -138,6 +143,11 @@ func MapAwnUpdate(awnUpdate *AmbientWeatherUpdate) *weather.WeatherUpdate {
{Name: THSensor + "7", TempF: awnUpdate.Temp7F, Humidity: awnUpdate.Humidity7}, {Name: THSensor + "7", TempF: awnUpdate.Temp7F, Humidity: awnUpdate.Humidity7},
{Name: THSensor + "8", TempF: awnUpdate.Temp8F, Humidity: awnUpdate.Humidity8}, {Name: THSensor + "8", TempF: awnUpdate.Temp8F, Humidity: awnUpdate.Humidity8},
}, },
LightningData: &weather.LightningData{
LightningDay: awnUpdate.LightningDay,
LightningDistance: awnUpdate.LightningDistance,
LightningTime: awnUpdate.LightningTime,
},
} }
} }

View File

@ -34,7 +34,9 @@ type AmbientWeatherUpdate struct {
type AmbientLightningData struct { type AmbientLightningData struct {
BattLightning *int `json:"batt_lightning,omitempty" schema:"batt_lightning"` BattLightning *int `json:"batt_lightning,omitempty" schema:"batt_lightning"`
LightningDay *int `json:"lightning_day,omitempty" schema:"lightning_day"` LightningDay *int `json:"lightning_day,omitempty" schema:"lightning_day" description:"count of lightning detections"`
LightningDistance *int `json:"lightning_distance,omitempty" schema:"lightning_distance" description:"distance in kilometers"`
LightningTime *int `json:"lightningTime,omitempty" schema:"lightningTime" description:"last lightning detection time"`
} }
type AmbientTempHumiditySensors struct { type AmbientTempHumiditySensors struct {

View File

@ -40,6 +40,14 @@ type WeatherUpdate struct {
WindChillF *float64 WindChillF *float64
// Extra Temp+Humidity Sensors // Extra Temp+Humidity Sensors
TempHumiditySensors []*TempHumiditySensor TempHumiditySensors []*TempHumiditySensor
// Lightning Data
*LightningData
}
type LightningData struct {
LightningDay *int // Count of detections
LightningDistance *int // Last detection distance [kilometers]
LightningTime *int // Last detection time
} }
type TempHumiditySensor struct { type TempHumiditySensor struct {