Viessmann ViCare App

Hello guys,

I’ve been working lately to integrate Viessmann ViCare API into Homey. For that I’ve created an initial version of an app which integrates with the Viessmann API and exposes the boiler towards Homey.

As I’ve been only using this app for now, I’d like to hear feedback from other users which want to integrate Viessmann before I officially attempt to publish the app.

The initial version of the app, with source code, can be found at:

I’m still testing the app myself to see if it works properly for me with a Vitodens 222-W. The app can still be buggy, and might not work for other Viessmann devices properly. I can sadly only test with my device.

Therefore, any feedback is welcome.

To use the app on your Homey, you will need to have the Homey App SDK, and install it locally with “homey app install”.

Once installed, you first need to register for an account at the Viessmann Developer Portal (https://app.developer.viessmann.com/), there you have to create a new client. When you create this new client, you should put the Google reCaptcha off and put http://localhost:4200/ as redirect URL. This should give you a client ID.

Once done, you can go to Homey and go to the app settings and enter your Client ID, username and password.

After that you should be able to add your Viessmann device.

PS: for those who wonder why I don’t apply the regular OAuth2 flow, which would be more secure and better IMHO, I tried a few days to get it working properly using both the Homey OAuth2 Client Libraries and some other libraries, but never got it to work properly.

PS2: hope this helps some people, contributions are welcome, and be aware that I might not respond to queries immediately :wink:

7 Likes

Hi Kenny,
great that you created a app for Viessmann!

I would be happy to provide feedback as soon the app is published.
Currenlty it`s to complicated for me in this technical stage to support, I’n not a DEV.

In use is a Vidodens 333-F, which is implemented in HA.

I will try it next week!
I have a Vitodens 100-W. We’ll see how it goes.

This is great! Awesome work @KennyMoens :raised_hands:

I’ve been in contact with Viessman before but they have the understanding that they “Can do smarthome themselves” so an official offering isn’t likely to happen soon. I think this community effort is a great addition :star_struck:

4 Likes

Hello Great Thing

I would like to test the app but how can install it

Kind regards Steffen

Awesome idea!
I am using Vitocal 200-S. I can not test current version as it is too complicated.
But once app appears in the store I feel free to test it!

Great to read someone is working on this!

I’ve been using a combo of HTTP calls to the Viessmann API, the Tado app and some math to mimic what they do with Vicare Smart Climate “intelligent heating”. Works pretty great. I was thinking of making it into an app myself, but I don’t have the time for it.

Yess, i’ve been waiting for this one.
Viessmann want you to use there vicare app.
So the only way to communicate is to use the API.
There is a working one with Home assistant. But i’de rather like it on Homey.
Yess you can lik it with MQTT, … and what so ever, to complicated.
Lokking foreward when this one is going to work and be launched on the homey app store.

Hello Kenny,
I have just searched the forum for Viessmann again this morning, as the ViCare app has once again disappointed me.

Great that you are working on an integration in Homey.

I would like to test your creation and have already managed to install the developer version in Homey and have already created a client in Viessmann’s developer portal.

We have a Vitodens 200-W B2HF with some ViCare thermostats and climate sensors.
*Unfortunately, I have not yet been able to add the boiler in Homey. *
In the app (Android), a red exclamation mark immediately appears in the add process and a waiting circle is displayed in the Homey web interface.

Silly question, but the user name in the Viessmann app is the email address, right?

Forget the italicized section, saw by chance that files were just updated in Github and reinstalled/updated the app. Now I can add a device… which unfortunately is then also marked with an exclamation mark.

Many thanks for your efforts.

Best regards Hubi

I’ve submitted the app for review. I hope it can be accepted already, even through I don’t meet the proper app guidelines.

Especially on the images/graphics part I have troubles. I’m not a graphical designer, and don’t have too much experience with it. I’m not going to use pictures where copyright relies on …

So I hope Homey review process is mild on this and will allow it. If somebody from the community can help me with the graphics, please feel free!

The user name is indeed the email address. I discovered a small bug with a missing “env.json” file in the repository, I’ve added that one now.

Maybe you can try again?

Be aware: the email address you use for the developer portal MUST match the one which you use in the ViCare app.

The account in the developer protal is the same as in the ViCare app.
I just downloaded the github files again and tried to update the app.
Unfortunately the installation failed due to warnings and errors:

Error on app install

× Command failed: npm ls --parseable --all --only=prod
npm warn config only Use --omit=dev to omit dev dependencies from the install.
npm error code ELSPROBLEMS
npm error missing: @badgateway/oauth2-client@^2.4.0, required by be.functor.homey.viessmann@1.0.0
npm error missing: axios@^1.7.4, required by be.functor.homey.viessmann@1.0.0
npm error missing: pino@^9.3.2, required by be.functor.homey.viessmann@1.0.0
npm error A complete log of this run can be found in: C:\Users\Hubi\AppData\Local\npm-cache_logs\2024-10-04T08_12_41_146Z-debug-0.log

× Error: This error may be fixed by running npm install in your app.
at C:\Users\Hubi\AppData\Roaming\npm\node_modules\homey\lib\App.js:978:15
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async App._copyAppProductionDependencies (C:\Users\Hubi\AppData\Roaming\npm\node_modules\homey\lib\App.js:975:26)
at async App.preprocess (C:\Users\Hubi\AppData\Roaming\npm\node_modules\homey\lib\App.js:866:7)
at async App.install (C:\Users\Hubi\AppData\Roaming\npm\node_modules\homey\lib\App.js:799:7)
at async exports.handler (C:\Users\Hubi\AppData\Roaming\npm\node_modules\homey\bin\cmds\app\install.js:25:5)

I think I did the same procedure as before…

Sorry Kenny,
my fault. There already was the solution mentioned in the error message. I installed npm within the app and managed to reinstall the app without any error.

I managed to add my boiler but got an exclamation mark on that device as before.

When clicking in that device I get this message:

Gerät nicht verfügbar (device not available)
Invalid enum capability (homey:app:be.functor.homey.viessmann:operating_mode) value: heating. Expected: dhw,dhwAndHeating,forcedNormal,forcedReduced,standby

Perhaps my Vitodens 200-W has other values etc.

Hmm yes, it appears that way.
My installation provides also hot water, probably that is the difference.

I would need the output of the API call in your specific case, are you a bit technical? I.e. could I give you some curl commands to execute, to provide me the output of the API?

If not, I’ll see if I can (later today or this weekend) extend the app a bit so that I can get an export of the features somehow. That would help in determining the enum values.

My installation also provides hot water.

Sure you can gibe me some commands and I will try to send them… I am not a professional in that case, so… if you can give me some keywords… I will try my best.

Hey Hubi,

As this probably will have to be done multiple times, I’ve integrated it into the app.
Could you update the Git repo and try again?

It will still fail, but if you now go the settings page there is the option to retrieve the installations.json and features.json files, these files I need to dig deeper into the differences between both of our devices.

You can copy/paste them in the UI towards a text file, which you may send to me directly by mail, or just attach them here.

PS: I’ve temporary suspended the publishing towards the store, since I want to figure out this difference between the devices first before I publish it.

Kind regards,
Kenny

Hi Kenny,

I have a Vitodens 222-W myself. I have the thing integrated into my Homeassistant, works just fine.
However, in HomeAssistant the alarms are not integrated. Are they available in your Homey App?
Thank you!

Hey Jan - not at this moment yet. I first want to ensure that everything is working fine, and afterwards we can see where to expand.

OK, I’ll install, test and report “as is”.

I am glad you are making the app. I have mixed success with querying the API via homeyscript. I have a Vitocal 200-S. So I would really like to test the app. But I can’t get the homey cli installed on my pc (at least login doesn’t work). So the question is do you know when the first version will be available in the store?