Skip to content

Commit

Permalink
Support setting charging_limit and discharge_limit in HomeAssistant
Browse files Browse the repository at this point in the history
  • Loading branch information
mtrossbach committed Jan 13, 2025
1 parent 1e3aa6a commit 1b938d9
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 5 deletions.
34 changes: 34 additions & 0 deletions internal/homeassistant/discovery_numbers.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,40 @@ func generateNumberDiscoveryPayload(appVersion string, info DeviceInfo) []Number
UnitOfMeasurement: UnitWatt,
ValueTemplate: "{{ value_json.output_power_w }}",
},
{
Name: "Charging Limit",
UniqueId: fmt.Sprintf("%s_charging_limit", info.SerialNumber),
CommandTemplate: "{\"charging_limit\": {{ value }}}",
CommandTopic: info.ParameterCommandTopic,
Device: device,
Origin: origin,
Icon: IconBatteryArrowUpOutline,
StateTopic: info.ParameterStateTopic,
StateClass: StateClassMeasurement,
Mode: ModeSlider,
Step: 1,
Min: 70,
Max: 100,
UnitOfMeasurement: UnitPercent,
ValueTemplate: "{{ value_json.charging_limit }}",
},
{
Name: "Discharge Limit",
UniqueId: fmt.Sprintf("%s_discharge_limit", info.SerialNumber),
CommandTemplate: "{\"discharge_limit\": {{ value }}}",
CommandTopic: info.ParameterCommandTopic,
Device: device,
Origin: origin,
Icon: IconBatteryArrowDownOutline,
StateTopic: info.ParameterStateTopic,
StateClass: StateClassMeasurement,
Mode: ModeSlider,
Step: 1,
Min: 0,
Max: 30,
UnitOfMeasurement: UnitPercent,
ValueTemplate: "{{ value_json.discharge_limit }}",
},
}

return numbers
Expand Down
12 changes: 7 additions & 5 deletions internal/homeassistant/models.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,13 @@ const (
type Icon string

const (
IconSolarPower Icon = "mdi:solar-power"
IconBatteryPlus Icon = "mdi:battery-plus"
IconBatteryMinus Icon = "mdi:battery-minus"
IconCarBattery Icon = "mdi:car-battery"
IconHeatWave Icon = "mdi:heat-wave"
IconSolarPower Icon = "mdi:solar-power"
IconBatteryPlus Icon = "mdi:battery-plus"
IconBatteryMinus Icon = "mdi:battery-minus"
IconCarBattery Icon = "mdi:car-battery"
IconHeatWave Icon = "mdi:heat-wave"
IconBatteryArrowUpOutline Icon = "mdi:battery-arrow-up-outline"
IconBatteryArrowDownOutline Icon = "mdi:battery-arrow-down-outline"
)

type BinarySensor struct {
Expand Down

0 comments on commit 1b938d9

Please sign in to comment.