Giter Club home page Giter Club logo

homeassistant-mastertherm's People

Contributors

dependabot[bot] avatar johny-mnemonic avatar shedc avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

johny-mnemonic

homeassistant-mastertherm's Issues

Update to MT Connect 2.2.1 and add Logging

Checklist

  • I have filled out the template to the best of my ability.
  • This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
  • This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.

Can't add debug logging to be able to see what the integration and API is doing in-case of issues.

Describe the solution you'd like

Update to masterthermconnect 2.2.1 to add info and debug logging.
Add some additional logging to mastertherm integration

Usage, to add info or debug logging.

logger:
  default: warning
  logs:
    # Log for Mastertherm
    custom_components.mastertherm: debug
    masterthermconnect: debug

Describe alternatives you've considered

N/A

Additional context

N/A

Ability to re-login if Login Fails

This has happened once to me where the server is not available and thinks the login is invalid, this stopped the integration working until Home Assistant was re-started.

Add logic to perhaps re-try after a delay, getting longer each try, and after multiple re-try failures stop.
Also add the ability to then re-authenticate from the devices so a restart is not required.

Docker Compose needs modification for Windows/ Docker as is built for Linux/ Podman

Is your feature request related to a problem? Please describe.
The docker compose only builds a dev environment for Linux/ Podman and requires change to support Windows/ Docker, would like to update to allow detection and build for both environments.

Describe the solution you'd like
When building the development environment for Windows with Docker it fails until the devcontainer.json is modified

  • Remove runArgs
  • Remove the ,Z at the end of the workspaceMount

Add some Images and Usage to README and HACS INFO

Is your feature request related to a problem? Please describe.
Add configuration details and images to the README/ HACS Info on how to install/ change options and an example of what it can look like.

Requested temp set from automation was not updating

I had an issue with the HC Thermostat used from automation today.

I have an automation that triggers on the thermostat current temperature change and sets requested temperature = (current temp + 0,5°C). As you can see in the chart below the target temp was always set by the automation but immediately returned to the original value. Almost like if the integration thought the change was not accepted by the API.
I have seen this happening today and according to the chart below it was between 10:38 and 14:32. Since then the requested temp started tracking the current temp again.

MT_HA_2

When it happened the requested temp was visible in the MT app as well as on the pAD.

It's strange that the requested temp was not updated from the API to HA after a while no matter whether the integration considered the update of the value successful or failed. Especially as I haven't found any other values to be stuck/not updated in that time window. According to HA history all other values from HP were changing values just fine.

I have checked history few days back and have found similar pattern on 12.2. between 18:05 and 20:00, so being this random it really looks like related to some API communication issues. If that's the case it would be probably better to log some warnings into HA log.

It is great that the integration can survive API errors or even outage without user intervention. Great job! There are much more mature integrations that are failing badly when this happens, so kudos for this. But it would be nice if this was not completely silent so that one would be able to correlate warnings in log with weird behavior.

This might be a follow-up to #61

Version of the custom_component

1.0.0

Configuration

Scan interval is set to 30 seconds.
Old Mastertherm API.

Add your logs here.

There is not a single line of log related to the Mastertherm extension since last boot on 13.2. at 20:29

Add Sensor Details to Readme

Update the Readme to provide what information we know about the different sensors/ binary sensors. Also add limitations and what we want to do for the next release.

Getting invalid credentials, MasterThermAuthenticationError. Wrong system?

Hey. First of all thanks for working on this HomeAssistant integration. I just got my MasterTherm heatpump so I'm excited to try and help out as much as I can. I'm a developer myself, so if you ever need someone testing things just let me know. I might be able to contribute myself as well.

The first issue I'm running in to is that I currently log into using an email and password. The WebUI is at https://mastertherm.online/. It seems you are logging into https://mastertherm.vip-it.cz/ which uses a username and password. When I try to sign in using my email+password I get a MasterThermAuthenticationError.

Are these 2 separate systems?

Many thanks in advance.

Add Configurable Entities

Add configuration mapping to define entities based on the information pulled from the masterthermconnect module.

  • There is additional information in the new API so must check that the data exists when mapping to account for what may or may not be available
  • Maybe pull additional information based on guess rules where mapping is not there, entities disabled by default.

MasterTherm server offline or just me?

For me (2022 api) the official app has been down all day and the integration also isn't working anymore. I also can't visit mastertherm.online. I'm trying to figure out if I'm the only one with issues?

Fix Images on info.md

Correct the Image Sizes and Links for the Charity Link and Mastertherm on info.md

Use New Translation Feature in HASS

New Translation Feature

HASS has introduced a translation key, update to use this so the translations are more effective as the ID's for Mastertherm are dynamic

Sensor temperature readings have no units

The sensors set up in home assistant are outputting values for the temperatures well.
However, they do not have a unit associated with them. So home assistant doesn't know that these numbers are temperatures.
Home assistant needs them to have the unit defined, otherwise it cannot use the temperatures in graphs with temperatures from other sources. Instead, it pushes the figure into a new graph.
This would also stop automations working if they are set up to look for particular temperatures.

temp-graphs

Update Solar and Pool Circuits

Solar and Pool to be updated inline with how the app displays.
Pool also to have a control thermostat feature.

New settings.
"solar": {
"enabled": [bool, "D_433"],
"name": [Special(str, Special.FIXED), "Solar"],
"solar_collector": [float, "A_258"],
"water_tank1": [float, "A_259"],
"water_tank2": [float, "A_260"],
},
"pool": {
"name": [Special(str, Special.FIXED), "Pool"],
"enabled": [bool, "D_348"],
"on": [bool, "D_238"],
"heating": [bool, "D_43"],
"temp_actual": [float, "A_262"],
"temp_requested": [float, "A_210"],
},

Test Multiple Updates using HASS trigger

The Mastertherm API does not like multiple requests at the same time or too quickly so need to make sure there is a delay between set requests.

Need to test this using HASS to see if connections error out.

Add Function Update

Add Ability to update Function

Image

Abiltiy to update the Function as above, the select entity is already available need to allow for update.

Add Initial Mappings

Add the initial mappings and update the masterthermconnect to a version that fixes a few issues

Enable/disable HDO signal through Home Assistant?

Can we set/unset the HDO signal through Home Assistant or does this require a wired signal to the heat pump? This would basically enable me to enable/disable heat demand whilst keeping the DHW enabled at all times (I don't want to turn off DHW).

Minor Updates for version 1.1.0 Release

Checklist

  • I have filled out the template to the best of my ability.
  • This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
  • This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.

The Thermal Pump (Fan/ Water/ Brine) does not change with the pump type and is not fully correct.
Also to update to latest masterthermconnect 2.1.0

Describe the solution you'd like

The API returns information about a thermal pump running which can be Fan/ Brine Pump or Water Pump depending on the HP Type. Add control to show the right pump type as a sensor.

Update to Release 2.1.0 masterthermconnect final release which the additional error logic and logging on setting registry entries.

Describe alternatives you've considered

N/A

Additional context

N/A

update in homeassistant

Is your feature request related to a problem? Please describe.
Hello, please, how does a safe update work in homeassistant? I think "latest version". Can I overwrite files in /custom_component

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Naming issue

I have updated to latest version and I have found two sensors named 'Reset 3E':
binary_sensor.mt_1061_1_error_info_reset_3e and binary_sensor.mt_1061_1_error_info_safety_tstat. I guess only the first one is correct.

The sensor sensor.mt_1061_1_heating_circuits_hc1_ambient_requested is showing 20°C, but both on the MasterTherm room thermostat and in web interface/android app I see the requested temperature of 26°C. So probably you are not getting the right temp for the HC1 (as I guess 20°C is default requested temp for all HCs).

What is the difference between binary_sensor.mt_1061_1_heating_circuits_hc1_pump_running and binary_sensor.mt_1061_1_circulation_pump_running? They behave differently, but I am pretty certain I have only single circulation pump installed as I have only single heating circuit, so there was no reason to add more than the single default one built into the heat-pump. Seems like hc1_pump_running is active all the time except when operating mode changes from Heating to Hot Water. Maybe the output for hc1 pump is used for controlling the 3-way valve?

I am also confused by the sensor.mt_1061_1_heating_circuits_hc1_water_temp vs sensor.mt_1061_1_actual_temp as they should be always the same in my system but they differ greatly. I am not aware of more temperature sensors going back to heat-pump from my house. Only one from hot water boiler. I could obviously be wrong, but I am not sure where it would get the hc1_water_temp which shows different temp than the actual temp. Maybe longer history of values will give us a hint what temp sensor this really is. Will update once I get more insight.

Things you asked to check:

  • Naming makes sense: Mostly OK. I am not familiar with naming of heating stuff in English and some things are called completely differently then I would expect based on how it is called in my language🤷‍♂️ You would need native speaker, preferably skilled in heating systems to judge this aspect :-)
  • changeable binary entities are switches (they can be changed but change back) ✅
  • Measures are showing correctly in the history ✅

Are you planning to add more controls? Not just switches, but also requested temps.

BTW: Would you add some table with explanation of sensors in the future?
I have no clue what these are:
sensor.mt_1061_1_heating_circuits_hc1_auto

-->

Version of the custom_component

0f6ec0a

Configuration

mastertherm.vip-it.cz

Better Handling of Temporary Errors

With 1.0.0 Beta 3 have added:

  • a shorter timeout of 30 seconds
  • updated the coordinator to mark update failed for temporary errors
  • Stopped trying to re-connect on temporary errors, only on Token Error
  • Added additional logging.

This is to try and work on improving the handling of the instability of the mastertherm API.

@johny-mnemonic, @SeBsZ, @keytouch14 - Could do with tracking to see what errors and failures, careful not to share personal details,

I am interested in the types of failures e.g. i see either a timeout or 501 error for the new API if the site is unavailable.

Tidy up and Set HP Mode

HP Mode can be set in the Web App and mobile app as follows.

Image

The Auto/ Winter/ Summer is multiple switched, see if we can tidy up for Home Assistant to have a selection that will set the swtiches as part of a select.

Auto Mode seems to be in reverse (True is Manual, False is Auto) Need to check.

Add updates for Auto Mode Switch Over Temperature. Temps seem to have no min or max, will check this.

Restart/ Reload when HP Offline should return Not Ready

System Health details

System Information

version core-2023.3.3
installation_type Home Assistant Container
dev false
hassio false
docker true
user root
virtualenv false
python_version 3.10.10
os_name Linux
os_version 5.19.17-Unraid
arch x86_64
timezone Europe/London
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 5000
Installed Version 1.31.0
Stage running
Available Repositories 1242
Downloaded Repositories 13
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Dashboards
dashboards 3
resources 8
views 7
mode storage
Recorder
oldest_recorder_run 28 February 2023 at 04:40
current_recorder_run 10 March 2023 at 13:21
estimated_db_size 179.75 MiB
database_engine sqlite
database_version 3.38.5

Checklist

  • I have given details of my install including what type of system airsource/ watersource or groundsource
  • I have provided logs showing any errors.
  • I have filled out the issue template to the best of my ability.
  • This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
  • This issue is not a duplicate issue of currently previous issues..

Describe the issue

If the Heat Pump is offline when home assistant is re-started or re-loaded then the integration re-loads and removes most of the entities saying the pump is offline.

Reproduction steps

  1. Turn off the Heat Pump
  2. Restart Home Assistant

Logs

N/A

Diagnostics dump, if available

N/A

Get Test Sensor Entity working

Get the test Sensor Entity working in Home Assistant, currently working in the test process but not showing up in Home Assistant once the registration is loaded.

Update to Latest Pad Settings

Fix HC settings for Ambient Temperature and re-order Pad settings. pAD's are for room thermostats if attached.

  • Ambient Temperatures in main HC Control
  • Room specific settings in pAD if attached

Mark temperature entities correctly

In order to get the temperature entities to show up in Home Assistant so they can be graphed you need to make a small change in sensor.py:

At the top, change the import:

from homeassistant.const import CONF_ENTITIES, DEVICE_CLASS_TEMPERATURE

In __init__ add a state class of measurement:

self._attr_device_class = DEVICE_CLASS_TEMPERATURE
self._attr_state_class = STATE_CLASS_MEASUREMENT

And I'm not sure if this is needed, but I also added a property to return the state_class, just like you added one for device_class:

@property
def state_class(self) -> str:
    return "measurement"

Now the entities show up and can be graphed using statistics or a history graph:
image

Add Operating Mode Offline

Operating Mode can be offline if the HP is not reachable but the API is online. Add support for this mode

Add support for Domestic Hot Water

Domestic Hot Water

Image

This is available regardless if the HC0 circuit shows enabled or not, so add ability to set for all.

Probably a number entity but not sure, min is 0.0 and max is 45.0

Add Diagnostics Download to Device Info

Checklist

  • I have filled out the template to the best of my ability.
  • This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
  • This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.

No, Related to Bug Reports

Describe the solution you'd like

Add the ability to get a diagnostics report from the Device Info

Describe alternatives you've considered

N/A

Additional context

Allows better understanding of issues related to the integration

DHW control and HC Thermostat enable for automation action

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like

DHW control and HC Thermostat not available for action in automation,
is it possible to supplement it?

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Heating/ Cooling Curver Display and Updates

Heating/ Cooling Curve Update Support

Image

Look at best way to add support for updating the Heating and Cooling Curves. Might just be using Number Entities as there is probably nothing better.

There is a water heater entity but might be too complex.

Water Min is 20c and max is 50c
Outside Temp Min is -30 and Max is 30c

hass-mastertherm - First Release

  • Add Development Environment for hass-mastertherm
  • Finalize build for first version (limited to little bits of information)
  • Setup hass-mastertherm and make public
  • Release to HACS

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.