Added support for Vaillant Thermostat, how to integrate in official release

Seeing the same thing. Were you able to fix this?

Is this component still working for Spanish Migo servers on 0.91.4 system version?


It still works for Vaillant. I’ve just upgraded to 0.91.4 and I had to follow the renaming and moving of the two files mentioned a few posts up and edit the import lines and it is working again.

Since today it is not working anymore :frowning: ? Anybody else having the same issue?

yes me too latest HA assistant has broken it

I reverted to 0.91.4 and it is working again… pffff :frowning:

@huuub @schford
I rewrote the code, and I have the component now working again with Home Assistant 0.92.0 and my Bulex Migo. Code is still messy, will first do some cleanup and then publish it somewhere on GitHub. Stay tuned.

@Dixietoom just pinning your name here


eagerly waiting my friend

The custom component is now available on GitHub.

To use the component, copy the vaillant directory to your custom_components folder and add the following lines to your configuration:

  api_key: <API_KEY>
  secret_key: <SECRET_KEY>
  username: <USERNAME>
  password: <PASSWORD>
  discovery: False
  app_version: <APP_VERSION>
  user_prefix: <USER_PREFIX>

  - platform: vaillant
  • Replace <USERNAME> and <PASSWORD> by your Vaillant / Bulex / Saunier Duval credentials.
  • Replace <API_KEY>, <SECRET_KEY>, <APP_VERSION> and <USER_PREFIX> by the correct keys for either Vaillant or Bulex / Saunier Duval. These values can be retrieved by decompiling the official mobile app (and most can of them can be found in this thread). Note that the values are different for vSMART and MiGO.

Fantastic work :slight_smile:

To make it easy for Vaillant guys

user_prefix: vaillant

Thanks so much for this!

Thanks @pjmaenh and @schford!
Maybe another hint to not have to copy the files over and over…
Mount it as a volume in docker.

ooh and maybe for them still not able to find the secret_key.
I don’t know why it would be a secret so,

  api_key: na_client_android_vaillant
  secret_key: 929a......745f0
  username: in your app
  password: in your app
  discovery: False
  user_prefix: vaillant

  - platform: vaillant
1 Like

I think the worry is they might change it - if we make the secret key public…

BTW… Was testing away mode.
Make sure you use capital. It works.

could you please send me secret_key ? thanks

could you please send me secret_key ? thanks

eventually I managed to decompile apk and found secret_key … now time to test in HA.

hmmm, after upgrading to HA 0.94 the vaillant component fails to load:

Unable to install package ERROR: Could not satisfy constraints for 'pyatmo': installation from path or url cannot be constrained to a version

Got the same message since upgrading to HA 0.94.

I have been looking into this and found a possible solution. Will do some further testing first, stay tuned…

@rudgr, @Derk

A quick update: I got the component working again with HA >= 0.94, after refactoring the pyatmo-vaillant component a bit.

However, since a few days, the pyatmo library stopped working for me, and produces the following error:

  self.temp = self.modList[0]['measured']['temperature']
  KeyError: 'temperature'

I have looked into this, and it seems like the netatmo API no longer returns the measured temperature and the preferred temperature for my MiGo device. The only ‘measured’ value I still got is the estimated preferred temperature, but I have not found a workaround yet for getting the actual inside temperature.

I am not sure if this is a problem with my MiGo device, or if it is a general problem. It could be that netatmo changed its API, which broke support for Bulex and Vaillant. As a side note, the official MiGo API also no longer shows the inside temperature, so the error has nothing to do with the HA integration.

I will wait a few days to see if Bulex/Vaillant fix this issue. I already modified the code a bit, to get rid of the error (just take 0 when there is no temperature available) but off course this makes the component kind of useless as the thermostat needs to know the inside temperature in order to know when to turn the heating on or off.

Will keep you posted…