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

Add support for CT200 #64

Closed
doudz opened this issue Apr 12, 2021 · 78 comments
Closed

Add support for CT200 #64

doudz opened this issue Apr 12, 2021 · 78 comments
Labels
enhancement New feature or request

Comments

@doudz
Copy link
Contributor

doudz commented Apr 12, 2021

Since the magic key has been discovered (thanks @robertklep ! 🎉 )
Could you add support for CT200 ?

all information could be found here : robertklep/bosch-xmpp#4

@pszafer
Copy link
Collaborator

pszafer commented Apr 12, 2021

I know about it. I've already started to figuring it out...

@doudz
Copy link
Contributor Author

doudz commented Apr 12, 2021

I can help if needed

@pszafer
Copy link
Collaborator

pszafer commented Apr 12, 2021

I'll try tomorrow to make branch with new encryption key, then I'll create new bosch_scan method and last step probably the hardest right now is to figure it all out to get similar scheme to this https://github.com/bosch-thermostat/bosch-thermostat-client-python/blob/dev/bosch_thermostat_client/db/rc300_rc200/040607.json

so yeah, any help will be appreciated! I'll let you know when there will be something to test

@pszafer pszafer added the enhancement New feature or request label Apr 12, 2021
@robertklep
Copy link

I can help too 👍🏻

@doudz
Copy link
Contributor Author

doudz commented Apr 13, 2021

I have started to add support https://github.com/doudz/bosch-thermostat-client-python/tree/ct200

@doudz
Copy link
Contributor Author

doudz commented Apr 13, 2021

Looks like /system/sensors/temperatures/indoorAirDigital report the wrong temperature
the correct one is /gateway/test/indoorAirDigitalCompensatedTemperature

@pszafer
Copy link
Collaborator

pszafer commented Apr 13, 2021

I see that you've done a lot! cool.
Basically from what I see we need bosch scan made by lib, so I can rewrite http-simulator to support easy control and then we can test everything without connecting to bosch xmpp servers.

Also we need scan from somebody who has 2 heating circuits, I don't know how schedule is working if there are HC1 and HC2 together (maybe it is impossible with these Easycontrol?)

@pszafer
Copy link
Collaborator

pszafer commented Apr 13, 2021

@doudz I'm waiting for PR from you.
Simulator now supports EASYCONTROL and NEFIT via HTTP:
to run simulator install v0.0.2 - https://pypi.org/project/bosch-thermostat-http-simulator/

bosch_simulator -f scans/nefit/1_scan.json --device NEFIT

Then with newest version of lib and master version of component you could choose nefit and put host "127.0.0.1:8080" as serial number and bosch_simulator will try to simulate nefit for you.
when I get first scans of EasyControl (after PR) I'd be able to simulate EasyControl as well.

@doudz
Copy link
Contributor Author

doudz commented Apr 13, 2021

I'm not sure to understand what you need, do you want me to give you the rawscan_xxxxxx.json file made using bosch_cli scan command ?

@pszafer
Copy link
Collaborator

pszafer commented Apr 13, 2021

PR with work you've already done and rawscan so I can work with you on this.

@pszafer
Copy link
Collaborator

pszafer commented Apr 13, 2021

ok, my bad. I missed notification about PR in bosch lib. sorry. I will merge it tomorrow morning

@pszafer
Copy link
Collaborator

pszafer commented Apr 14, 2021

can you provide new scan with fresh lib pip install bosch-thermostat-client==0.12.0.dev2 ?
I added extra uri's to it and now it removes all confidential data (this device has your address, geo localization, name, email).

@doudz
Copy link
Contributor Author

doudz commented Apr 14, 2021

New scan
rawscan_101027819.zip

2021-04-14 18:32:17 INFO (MainThread) [__main__] Running scan
2021-04-14 18:32:17 INFO (MainThread) [__main__] Successfully connected to gateway. Found UUID: 101027819
2021-04-14 18:32:21 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] 400 HTTP Error - ['HTTP/1.1 405 Method Not Allowed', 'Seq-No: 50', 'Content-Length: 0', 'Content-Type: application/json', 'Connection: close', '', '']
2021-04-14 18:32:21 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] Msg exception for /gateway/test/EEPROMvalues
2021-04-14 18:32:31 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] 400 HTTP Error - ['HTTP/1.1 404 Not Found', 'Seq-No: 178', 'Content-Length: 0', 'Content-Type: application/json', 'Connection: close', '', '']
2021-04-14 18:32:31 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] Msg exception for /solarCircuits
2021-04-14 18:32:32 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] 400 HTTP Error - ['HTTP/1.1 404 Not Found', 'Seq-No: 179', 'Content-Length: 0', 'Content-Type: application/json', 'Connection: close', '', '']
2021-04-14 18:32:32 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] Msg exception for /recordings
2021-04-14 18:32:33 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] 400 HTTP Error - ['HTTP/1.1 400 Bad Request', 'Seq-No: 194', 'Content-Length: 0', 'Content-Type: application/json', 'Connection: close', '', '']
2021-04-14 18:32:33 INFO (MainThread) [bosch_thermostat_client.connectors.xmpp] Msg exception for /devices/productLookup
2021-04-14 18:32:38 INFO (MainThread) [__main__] Successfully saved result to file: rawscan_101027819.json

@pszafer
Copy link
Collaborator

pszafer commented Apr 14, 2021

I have scan from somebody else and here are my thoughts on this:

  • I don't know what is /heatingCircuits/hc1 now /heatingCircuits/hc1/type => value: radiator, I don't think we can use heatingCircuits as thermostat controller in HA,
  • I think that temperature is controlled per room /zones/znX
    • /zones/znX/name - name of zone
    • /zones/znX/temperatureActual - current temperature in the room
    • /zones/znX/status -> status of heating, either idle, heat request or ....
    • /zones/znX/userMode -> operation mode clock or manual? (manual is a guess from nefit)
      • if usermode is clock then:
        • to set new temperature till next setpoint PUT to /zones/znX/clockOverride/temperatureHeating
        • schedule is visible in /programs/pgY -> here it is little weird, there is program for whole week and programs for each day.
          • /zones/znX/clockProgram value is id of program in /programs/pgY
      • if usermode is manual then:
        • to set new temperature use /zones/znX/manualTemperatureHeating

water_heater / dhw circuit seems like is much more like KM200.

@doudz
Copy link
Contributor Author

doudz commented Apr 14, 2021

Your thoughts looks good

@pszafer
Copy link
Collaborator

pszafer commented Apr 15, 2021

I think you can test it now (eg install git master version from HACS):
image

Although I don't understand yours dhwCircuit.
operation_mode is high so in older devices it meant that it won't follow schedule:

{
            "id": "/dhwCircuits/dhw1/operationMode",
            "type": "stringValue",
            "writeable": 1,
            "recordable": 0,
            "used": "true",
            "available": "true",
            "infoText": "",
            "value": "high"
        },

but temperature in high is 0 so either you have dhw disabled or ... no idea

{
            "id": "/dhwCircuits/dhw1/temperatureLevels/high",
            "type": "floatValue",
            "writeable": 1,
            "recordable": 0,
            "value": 0.0,
            "used": "false",
            "available": "false",
            "unitOfMeasure": "C",
            "minValue": 10.0,
            "maxValue": 80.0,
            "stepSize": 1.0
        },

@doudz
Copy link
Contributor Author

doudz commented Apr 15, 2021

Ok, I'll test it
thank you !

@doudz
Copy link
Contributor Author

doudz commented Apr 15, 2021

I got the same TLS handshake problem
image

For information, I'm running HA core in venv on Rasbian Buster with manually compiled python3.8

@doudz
Copy link
Contributor Author

doudz commented Apr 15, 2021

I think there's something missing in my venv but I don't know what
trying python3 -m bosch_thermostat_client.bosch_cli query command in the same venv produce the same error

@robertklep
Copy link

robertklep commented Apr 15, 2021

@pszafer
Copy link
Collaborator

pszafer commented Apr 15, 2021

your python3.8 seems to be wrongly compiled. I had users with same errors and they followed this tutorial:
https://community.home-assistant.io/t/home-assistant-core-python-3-8-backport-for-debian-buster/234859

@doudz
Copy link
Contributor Author

doudz commented Apr 15, 2021

@pszafer Following the tutorial solve the problem for other users ?

@pszafer
Copy link
Collaborator

pszafer commented Apr 15, 2021

unfortunately I don't have much feedback after sharing it, but no more complains so I think it's good sign...
going back to encryption lib, I have feedback from one user that PUT is not working so I'm gonna remove one \r.

@doudz
Copy link
Contributor Author

doudz commented Apr 15, 2021

ok thanks, I'm rebuilding my venv with this version of python 3.8

@pszafer
Copy link
Collaborator

pszafer commented Apr 15, 2021

ok, I will push many fixes and improvements tomorrow

@doudz
Copy link
Contributor Author

doudz commented Apr 15, 2021

Same problem for me...
[('SSL routines', 'ssl3_read_bytes', 'sslv3 alert handshake failure')]
I have to find why

EDIT : I fix it by editing /etc/ssl/openssl.cnf (thanks @robertklep again)
I replaced CipherString = DEFAULT@SECLEVEL=2 by CipherString = DEFAULT

@Didel
Copy link

Didel commented Apr 15, 2021

The current version (in the Master branch) works for me! Meaning, I am able to connect to the CT200 and (at least) read the desired and actual temperatures in Home Assistant (2021.4.4, running on a Raspberry Pi using Home Assistant OS 5.13)! Thanks for the great work so far!

If there is anything I can do to help, let me know!

@doudz
Copy link
Contributor Author

doudz commented Apr 16, 2021

Now it works with master branch but :
Missing base64 decoding of name TGUgU8Opam91cg== instead of Le Séjour
image

/dhwCircuits/dhw1/operationMode could be :

  • Off : no hot water production
  • high : hot water production as soon as the tank is refilled
  • ownprogram : automatic production mode, economic mode

Error in log book

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/home/pi/.homeassistant/custom_components/bosch/__init__.py", line 366, in firmware_refresh
    await self.gateway.check_firmware_validity()
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/gateway/base_gateway.py", line 296, in check_firmware_validity
    self._db = get_db_of_firmware(self._device[TYPE], fw)
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/db/__init__.py", line 41, in get_db_of_firmware
    filename = DEVICE_TYPES[device_type].format(firmware_version.replace(".", ""))
AttributeError: 'dict' object has no attribute 'replace'

Trying to change the temperature I got the following error

Logger: bosch_thermostat_client.circuits.easycontrol.base
Source: /srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/circuits/easycontrol/base.py:79
First occurred: 8:51:54 (1 occurrences)
Last logged: 8:51:54

Setting temperature not allowed in this mode. Temperature is probably out of range MIN-MAX!

But the mobile app allows to change temperature in automatic mode too, and when the program will change the temperature later according to what is scheduled

/dhwCircuits/dhw1/temperatureLevels/high is not used on my system I think because the temperature can only be set on the heater itself by turn a button

dhwCircuits/dhw1/thermalDisinfect/time is not a duration but the hour of thermal disinfect
60mins means at 01h00 in the morning
120mins means at 02h00 in the morning

@pszafer
Copy link
Collaborator

pszafer commented Apr 16, 2021

Now it works with master branch but :
Missing base64 decoding of name TGUgU8Opam91cg== instead of Le Séjour

should be fixed in dev4. let me know.

/dhwCircuits/dhw1/operationMode could be :

  • Off : no hot water production
  • high : hot water production as soon as the tank is refilled
  • ownprogram : automatic production mode, economic mode

can you switch to ownprogram and provide bosch_scan?

Error in log book

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/home/pi/.homeassistant/custom_components/bosch/__init__.py", line 366, in firmware_refresh
    await self.gateway.check_firmware_validity()
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/gateway/base_gateway.py", line 296, in check_firmware_validity
    self._db = get_db_of_firmware(self._device[TYPE], fw)
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/db/__init__.py", line 41, in get_db_of_firmware
    filename = DEVICE_TYPES[device_type].format(firmware_version.replace(".", ""))
AttributeError: 'dict' object has no attribute 'replace'

We will get back to that later.

Trying to change the temperature I got the following error

Logger: bosch_thermostat_client.circuits.easycontrol.base
Source: /srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/circuits/easycontrol/base.py:79
First occurred: 8:51:54 (1 occurrences)
Last logged: 8:51:54

Setting temperature not allowed in this mode. Temperature is probably out of range MIN-MAX!

I removed one \r from PUT maybe it will send it now.

But the mobile app allows to change temperature in automatic mode too, and when the program will change the temperature later according to what is scheduled

It's because of wrong PUT response.

@doudz
Copy link
Contributor Author

doudz commented Apr 17, 2021

Disinfect time is not display as expected, it should appears as a time, for example "01:10", not "10 hours ago"
image

The same for timeToNextSetPoint

@pszafer
Copy link
Collaborator

pszafer commented Apr 17, 2021

manual is not possible. I'm limited to hvac modes https://developers.home-assistant.io/docs/core/entity/climate#hvac-modes

for away mode, I'll try. in KM200 it was called holiday mode and it wasn't simple switch.

@Didel
Copy link

Didel commented Apr 18, 2021

I updated to the latest released version. Initially it seems to properly connect and work fine, but it looks like after the initial connection, the values aren’t updated any more. Is that a known issue?

@doudz
Copy link
Contributor Author

doudz commented Apr 18, 2021

It works good for me, what values aren't updated ?
image

@Didel
Copy link

Didel commented Apr 18, 2021

The ‘climate’ entity that is being added to HomeAssistant after configuring the CT200.

At/around 22:19 I deleted the old integration and wanted to start ‘fresh’, after that it seems like no update has been received any more. The EasyControl app currently reports 22,5 degrees.

674E9741-167E-4CD9-A159-3399B6B6989B

@pszafer
Copy link
Collaborator

pszafer commented Apr 18, 2021

@doudz can you check current master if sensor is better?
I think it will be better if I show you next time (in time format) than string HH:mm because than you can do some automation in HA if needed. in string HH:mm I think it will be harder.

@Didel turn on debug logging and look what's going on.

@doudz
Copy link
Contributor Author

doudz commented Apr 18, 2021

I agree with you, and now it's better because it's the next time,
good work !

@Didel
Copy link

Didel commented Apr 19, 2021

@pszafer after another ‘remove and reset’, it again behaves the same: works fine initially, but after some time it seems to loose connection and not update any more. I found the following relevant entries in the logs:

Logger: custom_components.bosch
Source: custom_components/bosch/__init__.py:346
Integration: Bosch thermostat (documentation, issues) 
First occurred: 18 april 2021 23:04:47 (573 occurrences) 
Last logged: 8:38:23

Bosch object of entity Woonkamer is no longer available. Error requesting data from /programs/list
Logger: bosch_thermostat_client.helper
Source: /usr/local/lib/python3.8/site-packages/bosch_thermostat_client/helper.py:255 
First occurred: 18 april 2021 23:04:41 (1146 occurrences) 
Last logged: 8:38:20

Can't update data for Indoor humidity. Trying uri: /system/sensors/humidity/indoor_h1. Error message: Error requesting data from /system/sensors/humidity/indoor_h1
Can't update data for System pressure. Trying uri: /system/appliance/systemPressure. Error message: Error requesting data from /system/appliance/systemPressure
Logger: homeassistant
Source: custom_components/bosch/__init__.py:377
First occurred: 6:12:44 (1 occurrences) 
Last logged: 6:12:44

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/config/custom_components/bosch/__init__.py", line 377, in firmware_refresh
    await self.gateway.check_firmware_validity()
  File "/usr/local/lib/python3.8/site-packages/bosch_thermostat_client/gateway/base_gateway.py", line 298, in check_firmware_validity
    fw = await self._connector.get(self._db.get(BASE_FIRMWARE_VERSION))
  File "/usr/local/lib/python3.8/site-packages/bosch_thermostat_client/connectors/xmpp.py", line 78, in get
    raise DeviceException(f"Error requesting data from {path}")
bosch_thermostat_client.exceptions.DeviceException: Error requesting data from /gateway/versionFirmware

Logger: aioxmpp.callbacks
Source: /usr/local/lib/python3.8/site-packages/aioxmpp/callbacks.py:536 
First occurred: 18 april 2021 23:03:42 (1occurrences) 
Last logged: 18 april 2021 23:03:42

listener attached to signal raised
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/aioxmpp/callbacks.py", line 534, in fire
    keep = wrapper(args, kwargs)
  File "/usr/local/lib/python3.8/site-packages/aioxmpp/callbacks.py", line 468, in _strong_wrapper
    return not f(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/aioxmpp/dispatcher.py", line 287, in _feed
    super()._feed(stanza)
  File "/usr/local/lib/python3.8/site-packages/aioxmpp/dispatcher.py", line 135, in _feed
    cb(stanza)
  File "/usr/local/lib/python3.8/site-packages/bosch_thermostat_client/connectors/xmpp.py", line 158, in main_listener
    listener(body, http_response)
  File "/usr/local/lib/python3.8/site-packages/bosch_thermostat_client/connectors/xmpp.py", line 120, in listener
    future.set_result(recv_body)
asyncio.exceptions.InvalidStateError: invalid state

@pszafer
Copy link
Collaborator

pszafer commented Apr 19, 2021

look for debug logs before last message happended (23:03:42), what happened before InvalidStateError occured.

@doudz
Copy link
Contributor Author

doudz commented Apr 19, 2021

It's stange, the only error I still have is about firmware_version, everything else works

Logger: homeassistant
Source: custom_components/bosch/__init__.py:377
First occurred: 0:12:49 (3 occurrences)
Last logged: 8:12:49

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/home/pi/.homeassistant/custom_components/bosch/__init__.py", line 377, in firmware_refresh
    await self.gateway.check_firmware_validity()
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/gateway/base_gateway.py", line 299, in check_firmware_validity
    self._db = get_db_of_firmware(self._device[TYPE], fw)
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/db/__init__.py", line 41, in get_db_of_firmware
    filename = DEVICE_TYPES[device_type].format(firmware_version.replace(".", ""))
AttributeError: 'dict' object has no attribute 'replace'

@doudz
Copy link
Contributor Author

doudz commented Apr 19, 2021

Missing unit % for humidity sensor
image
And currently the value is not numeric

@Didel
Copy link

Didel commented Apr 20, 2021

look for debug logs before last message happended (23:03:42), what happened before InvalidStateError occured.

Well, that’s the thing, there doesn’t seem to be a specific related error occurring (as far as I can tell). It looks like a restart fixes the problem temporarily, but it will at a certain point again stop updating the values.

@gralin
Copy link

gralin commented Apr 20, 2021

Hi guys! Just wanted to say thank you! Some time ago I was looking if this CT200 thermostat can be integrated with HA but didn't find anything. Today, I had a hunch to check again and I found this repo and this thread! I instantly gave it a try and was blown away, worked right on first try. I will try at least to contribute with testing, but congratulations on this! 🎊
Attached is my debug scan, maybe it will be useful: bosch_scan.txt

@doudz
Copy link
Contributor Author

doudz commented Apr 21, 2021

After HA restart I got the following error :

Logger: aioxmpp.callbacks
Source: /srv/homeassistant/lib/python3.8/site-packages/aioxmpp/callbacks.py:536
First occurred: 21:25:04 (1 occurrences)
Last logged: 21:25:04

listener attached to signal raised
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.8/site-packages/aioxmpp/callbacks.py", line 534, in fire
    keep = wrapper(args, kwargs)
  File "/srv/homeassistant/lib/python3.8/site-packages/aioxmpp/callbacks.py", line 468, in _strong_wrapper
    return not f(*args, **kwargs)
  File "/srv/homeassistant/lib/python3.8/site-packages/aioxmpp/dispatcher.py", line 287, in _feed
    super()._feed(stanza)
  File "/srv/homeassistant/lib/python3.8/site-packages/aioxmpp/dispatcher.py", line 135, in _feed
    cb(stanza)
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/connectors/xmpp.py", line 158, in main_listener
    listener(body, http_response)
  File "/srv/homeassistant/lib/python3.8/site-packages/bosch_thermostat_client/connectors/xmpp.py", line 120, in listener
    future.set_result(recv_body)
asyncio.exceptions.InvalidStateError: invalid state

And after another restart, it works again

@doudz
Copy link
Contributor Author

doudz commented Apr 22, 2021

@pszafer For water_heater supported features

if self._dhw.ha_mode == STATE_OFF or self._dhw.setpoint == STATE_OFF:

You should check if /dhwCircuits/dhw1/temperatureLevels/high is used , in my case it's not

{
            "id": "/dhwCircuits/dhw1/temperatureLevels/high",
            "type": "floatValue",
            "writeable": 1,
            "recordable": 0,
            "value": 45.0,
            "used": "false",
            "available": "false",
            "unitOfMeasure": "C",
            "minValue": 10.0,
            "maxValue": 80.0,
            "stepSize": 1.0
        },

@doudz
Copy link
Contributor Author

doudz commented Apr 22, 2021

Another thing with your component
it creates many devices, a base device with no entity, sensor's devices, water heater devices, climate devices
image

but if I'm right, in HA a device is supposed to modelize a real device providing many entities or here I only have one CT200 so I think we expect to have only one device "CT200" in HA

What do you think about that ?

@pszafer
Copy link
Collaborator

pszafer commented Apr 22, 2021

many issues stack around, for issues please open new issue so I don't miss anything.

Missing unit % for humidity sensor -> I copy unitOfMeasure from sensor, I don't know why your sensor doesn't give you %. I'll try to recreate.

InvalidStateError -> this is something which I will catch and I will just pass it, maybe someone with real device want to investigate what's going on, might be message be delayed, or GET request being sent and then within timeout restart of HA happened and maybe bosch xmpp is waiting for another presence of client to send response for last message.

/dhwCircuits/dhw1/temperatureLevels/high if it is not used then I should disable dhw in such situation?

it creates many devices

One of functions of CT200, KM200 is gateway which is bridge between your installation and xmpp server.
In your installation there are multiple devices, Zone device so some smart thermostat, HC - which are mixers for heating (don't know proper english name for it). And as I understand it is reflected in very good way, same as HA would like to have it and it is better organized that way. My inspiration was Unifi integration (unifi AP is also gateway).

@doudz
Copy link
Contributor Author

doudz commented Apr 22, 2021

/dhwCircuits/dhw1/temperatureLevels/high if it is not used then I should disable dhw in such situation?

no, you should adjust supported_features to SUPPORT_OPERATION_MODE only

def supported_features(self):
"""Return the list of supported features."""
if self._dhw.ha_mode == STATE_OFF or self._dhw.setpoint == STATE_OFF:
return SUPPORT_OPERATION_MODE
return SUPPORT_FLAGS_HEATER

@Didel
Copy link

Didel commented Apr 22, 2021

InvalidStateError -> this is something which I will catch and I will just pass it, maybe someone with real device want to investigate what's going on, might be message be delayed, or GET request being sent and then within timeout restart of HA happened and maybe bosch xmpp is waiting for another presence of client to send response for last message.

@pszafer I have created #67 in order to resolve the InvalidState error.

@pszafer
Copy link
Collaborator

pszafer commented Apr 22, 2021

@doudz InvalidStateError should be silent
and dhw set temperature should be disabled in your setup right now.

@doudz
Copy link
Contributor Author

doudz commented Apr 22, 2021

@doudz InvalidStateError should be silent
and dhw set temperature should be disabled in your setup right now.

Are you sure ? because I still see supported_features = 3 (temperature 1 + mode 2)

image

@pszafer
Copy link
Collaborator

pszafer commented Apr 22, 2021

but there is no target temp if 0 so UI shouldn't show possibility to set temperature.

@doudz
Copy link
Contributor Author

doudz commented May 2, 2021

For me it works good with CT200, I think you're close to publish a new release
Thanks a lot !

@yourimmense
Copy link

Hi there,

The water heater part seems to work really well although I don't have an operation mode for 'Auto' its in the bosch easycontrol app but its not in this addon. Only have Off and High Demand. Is it possible to include this?

@pszafer
Copy link
Collaborator

pszafer commented Aug 15, 2021

@yourimmense please create new issue with bosch_scan in it while water heater is in auto mode.

@pszafer pszafer closed this as completed Aug 15, 2021
@oofk
Copy link

oofk commented Sep 25, 2022

Hi,
newbie here, I've looked through all posts but cannot find the way to set a new temperature via HA automatically.
i can set the temperature in the dashboard, but want to make it part of an automation.

The automation I'm working on should:

  • trigger when another room is asking for heat (working)
  • set temperature on ct200 to high to activate heating (not working)
  • deactivate floor heating circulation pump in living room (working)

any ideas, or possibly a link to a post i've missed to be able to set temperature?

@Didel
Copy link

Didel commented Sep 25, 2022

Hi, newbie here, I've looked through all posts but cannot find the way to set a new temperature via HA automatically. i can set the temperature in the dashboard, but want to make it part of an automation.

The automation I'm working on should:

  • trigger when another room is asking for heat (working)
  • set temperature on ct200 to high to activate heating (not working)
  • deactivate floor heating circulation pump in living room (working)

any ideas, or possibly a link to a post i've missed to be able to set temperature?

You are able to do so with the climate.set_temperature service, as described on https://www.home-assistant.io/integrations/climate/

@oofk
Copy link

oofk commented Sep 25, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

7 participants