Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds support for controlling Growatt TLX inverters and APX batteries #133319

Draft
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

johanzander
Copy link

Proposed change

Adds support for controlling Growatt TLX hybrid inverters (e.g. MID 25KTL3-XH) and APX batteries. Allows controlling Charge / Discharge Stop SOC, Charging / Discharging Power Rate via number entities, Grid Charging as a switch entity as well as updating the time slot schedules with Battery/Grid/Load first using service calls.
It also adds a number of power and lifetime energy sensors that are available in the Growatt ShinePhone app and web dashboard.

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • I have followed the perfect PR recommendations
  • The code has been formatted using Ruff (ruff format homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.

To help with the load of incoming pull requests:

Adds the following:
1. A switch entity for ‘grid charge’
2. Number entities with ‘charge power’, ‘discharge power’, ‘charge stop SOC’ and ‘discharge stop SOC’
3. A service to update inverter time schedule segments
4. Additional power & energy sensor values found in the ShinePhone app
Refactors component to use DataUpdateCoordinator to enable support for  number and switch entities.
Copy link
Member

@joostlek joostlek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is doing a lot of things at the same time. Both adding new services, adding coordinators and 2 new platforms. Please scope your PR so you do one thing at a time, this way maintainers also have a better time reviewing the code

@home-assistant home-assistant bot marked this pull request as draft December 18, 2024 18:26
@home-assistant
Copy link

Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍

Learn more about our pull request process.

@johanzander
Copy link
Author

thanks for the comments.
I've created a new PR with an initial smaller subset : #133791

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants