Intégration Voltalis

Salut la Communauté,

Je viens de publier la v0 d’une intégration pour Voltalis.
Elle est disponible ici

Mes chauffages électriques sont pilotés par des appliances Voltalis. Cette intégration me permet de commander ces appliances depuis HA via les API exposées par myvoltalis.com.

Cette intégration instancie une entité de la plateforme climate par appliance Voltalis. Et mappe les modes et les actions de l’entité climate sur les fonctionnalités proposées sur myvoltalis.com (planification, température, extinction, mode éco, confort, hors gel, …).

Elle est en test depuis qq jours chez moi, c’est ma première intégration HA, vos retours et vos contributions seront les bienvenus.

Johann

7 « J'aime »

Salut, parfait cette intégration !!
Est-il possible de récupérer les infos de conso par radiateur ? ou de température ? dans une V1.
Merci
Aurélien

3 « J'aime »

Bonjour,
Merci pour cette intégration, je la teste actuellement.
Je rejoint @leaure sur les infos de conso qui serait intéressante à avoir.

En cas de remarque ou bug, quel est le canal privilégié ? ici ou via une issue sur github ?

Thomas

1 « J'aime »

Merci pour vos retours @lokidata , @leaure , c’est sympa de savoir que ça ne fonctionne pas que chez moi.

Je n’ai pas pris le temps de vous expliquer mes motivations pour créer cette intégration :

  • permettre aux membres de ma famille de commander les chauffages sans utiliser l’appli Voltalis, qui à ma connaissance ne permet pas de partager le logement sans avoir à utiliser tous le même compte adhérent.
  • voir s’il est possible de commander les chauffages à la voix, via les assistants vocaux du type de Google assistant.
  • créer des automatismes dans HA, comme par exemple baisser les chauffages lorsqu’il n’y a personne à la maison ou créer un mode « Aération de la maison » qui stoppe en un clic tous les chauffages d’une zone …

Mon objectif n’est pas de me passer de l’appli Voltalis. Juste permettre de faire les actions de pilotage « du quotidien » rapidement.

Pour ce qui est d’ajouter la température par radiateur, je suppose que vous souhaitez connaitre la température dans la pièce car la consigne actuelle est déjà récupérée. J’ai regardé ce matin et les API Voltalis ne pas propose cette information, en tout cas je ne l’ai pas trouvé.

Pour la consommation des radiateurs, les données accessibles dans « Ma conso détaillée » sur l’application sont différées. De mes tests de ce matin, à 6h30 seules les données de 5h étaient disponibles. Il pourrait être envisageable de récupérer la dernière valeur disponible par appliance mais on serait loin d’une valeur de consommation instantanée.

Dans les 2 cas il faut voir que cette intégration utilise les RESTAPI exposées par myvoltalis.com. Elle ne se connecte pas hélas pas sur les appliances directement, donc seules les données collectées puis publiées par Voltalis dans ses API seront exploitables dans l’intégration.

Les appliances Voltalis utilisent Zigbee et le boitier relai c’est du GPRS/4G ou 3G selon le modèle.

Je suis super curieux de savoir s’il serait possible de se connecter aux appliances directement en zigbee, de pouvoir y capturer des informations temps réel, voir de les piloter. Je n’ai pas encore trouvé de littérature sur le sujet, n’hésitez pas à partager si vous trouvez ce genre d’info.

Pour la v1 j’envisage de regarder :

  • s’il y a un impact sur l’intégration d’avoir plusieurs programmations sur myvoltalis.com, éventuellement appliquées sur différentes appliance. Pour ma part je n’en utilise qu’une mais Voltalis propose cette possibilité.
  • comment mieux prendre en compte les mode et les types des applicances. Aujourd’hui l’intégration considère que toutes les appliances sont des chauffages et qu’il ont tous les modes eco, hors gel, confort et temperature. C’est le cas chez moi mais il y a peut être d’autres types d’appliances et toutes ne supporte peut être pas tous les modes … en résumé c’est éviter d’envoyer une consigne non gérées sur des types d’appliances non gérées
  • voir comment on gère les versions et les mises à jours dans HACS

Enfin, tant qu’on est 3 à utiliser l’intégration on peut en discuter dans le forum mais s’il y avait plus d’utilisateur et de contributeur il serait préférable d’utiliser github pour les issues.

1 « J'aime »

Je me doutais que l’info des températures n’était pas remontée, elles ne le sont pas dans l’appli donc dommage.
Par rapport à la conso, j’utilise aussi l’intégration ci-dessous :

Elle remonte la conso instantanée et la conso en W/h, mais celle-ci est globale pas individualisée en fonction des radiateurs, c’est déjà bien !

Bonjour @jdelahayes,

Merci pour cette intégration.
Après avoir effectué cette intégration, je n’ai malheureusement pas d’entités de disponible. Cependant, je vois bien les 4 zones. Que doit-je faire pour pouvoir allumer/éteindre le chauffage et réguler la température ?

Dans l’attente de ton retour,
Cordialement,
Mev

Salut @Mev, quand tu dis voir les 4 zones ça correspond à quoi concrètement ?
Si tu peux passer l’intégration en mode debug et nous copier les logs ici.

Aussi, j’ai commité une version 0.0.1 la semaine dernière, pour ceux qui avaient un chauffe eau connecté à Voltalis, peut être pourrais tu aussi ré-essayer avec la version 0.0.0 pour voir s’il y a une régression.

Salut @jdelahayes,

Les zones sont les 4 radiateurs (salon, chambre 1, 2 et 3). Après la connection il a bien retrouvé les 4 radiateurs mais aucune entité pour pouvoir gérer la température et le demarrage/l’arrêt (c’est vide).

Voici les logs :

2023-11-11 11:01:09.298 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration voltalis which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant

2023-11-11 11:01:20.533 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform voltalis.climate: Platform not found (cannot import name ‹ DeviceInfo › from ‹ homeassistant.helpers.device_registry › (/usr/src/homeassistant/homeassistant/helpers/device_registry.py)).

2023-11-11 11:01:20.536 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform voltalis.water_heater: Platform not found (cannot import name ‹ DeviceInfo › from ‹ homeassistant.helpers.device_registry › (/usr/src/homeassistant/homeassistant/helpers/device_registry.py)).

File « aiohttp/_http_parser.pyx », line 557, in aiohttp._http_parser.HttpParser.feed_data
aiohttp.http_exceptions.BadStatusLine: 400, message:
Bad status line « Invalid method encountered:\n\n b’\x16\x03\x01\x02:\x01’\n ^ »
2023-11-11 22:56:05.482 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
File « /usr/local/lib/python3.11/site-packages/aiohttp/web_protocol.py », line 332, in data_received
messages, upgraded, tail = self._request_parser.feed_data(data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File « aiohttp/_http_parser.pyx », line 557, in aiohttp._http_parser.HttpParser.feed_data
aiohttp.http_exceptions.BadStatusLine: 400, message:
Bad status line « Invalid method encountered:\n\n b’\x16\x03\x01\x02\x1a\x01’\n ^ »
2023-11-11 22:59:39.087 ERROR (MainThread) [homeassistant.config_entries] Error unloading entry monadresseeamail@xyz.fr for climate
Traceback (most recent call last):
File « /usr/src/homeassistant/homeassistant/config_entries.py », line 544, in async_unload
result = await component.async_unload_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File « /usr/src/homeassistant/homeassistant/components/climate/init.py », line 201, in async_unload_entry
return await component.async_unload_entry(entry)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File « /usr/src/homeassistant/homeassistant/helpers/entity_component.py », line 202, in async_unload_entry
raise ValueError(« Config entry was never loaded! »)
ValueError: Config entry was never loaded!
2023-11-11 22:59:39.091 ERROR (MainThread) [homeassistant.config_entries] Error unloading entry monadresseemail@xyz.fr for water_heater
Traceback (most recent call last):
File « /usr/src/homeassistant/homeassistant/config_entries.py », line 544, in async_unload
result = await component.async_unload_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File « /usr/src/homeassistant/homeassistant/components/water_heater/init.py », line 156, in async_unload_entry
return await component.async_unload_entry(entry)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File « /usr/src/homeassistant/homeassistant/helpers/entity_component.py », line 202, in async_unload_entry
raise ValueError(« Config entry was never loaded! »)
ValueError: Config entry was never loaded

Dans l’attente de ton retour,
Cordialement,
Mev

A la vue du message il me semble que l’erreur est liée à l’import DeviceInfo dans entity.py

Il ne trouve pas une classe fournie par home assistant dans homeassistant/helpers/device_registry.py

@Mev Tu utilises quelle version de HA ?

@jdelahayes, voici les informations demandées :

Home Assistant 2023.8.4
Supervisor 2023.11.0
Operating System 10.5

@jdelahayes

Problème résolu!
Il suffisait de mettre à jour HA.
Merci beaucoup pour ton retour!

C’est nickel!
Tu es un génie!

1 « J'aime »

Au top :ok_hand: merci beaucoup :pray:

Hello,

Je viens d’installer ton intégration mais je rencontre un problème. J’ai actuellement 1 radiateur qui utilise un contacteur type fil pilote (VX_WIRE) et 2 radiateurs qui utilisent un contacteur classique type on/off (VX_RELAY).

Le VX_WIRE fonctionne correctement mais les VX_RELAY apparaissent come indisponible.

Une idée de pourquoi ça ne fonctionne pas? Est-ce que d’autre personnes ont fait fonctionner les VX_RELAY avec HA ?

Merci d’avance, Tom

Bonjour,

chez moi le VX_RELAY fonctionne mais il a été capricieux quelques jours. Peut-être un souci au niveau de l’API ? C’est revenu depuis 48h je dirais.

@MattG, j’ai aussi constaté quelques prb cette semaine durant un jour ou deux. Comme l’appli officielle ne répondait pas non plus j’ai supposé que le problème était chez Voltalis et je n’ai pas creusé plus que ça.

@dzn, si le problème persiste avec les vx_relay pourrais tu mettre l’extension en mode debug pendant deux minutes et joindre les logs de HA stp ?

Salut @jdelahayes,

J’ai un pépin. Aujourd’hui, un technicien Voltalis est passé modifier mon installation (suppression d’un relay et ajout de 2 pilots.
L’intégration n’a pas aimé. Impossible de la faire redémarrer y compris en redémarrant tout le système.
Je l’ai donc supprimée (suppression du dossier voltalis dans le repertoire des integrations, redémarré une fois encore HA puis réinstallée (récup sur GitHub du dernier paquet et copie du dossier voltalis à sa place) puis encore redémarrage HA.
Lorsque je tente d’ajouter l’integration, il me demande de me connecter, j’ai un message « Erreur inconnue ». Je n’ai rien dans les logs. J’ai modifié mon mot de passe dans myvoltalis, j’accede bien au site. Mais impossible d’y connecter l’intégration.
Y a t’il des fichiers à purger quelques part ?

C’est hélas plutôt urgent, j’utilise ton intégration pour piloter mes thermostats via Versatile Thermostat.

Merci pour ton aide !

Matt.

@MattG les données des entités doivent peut être persister dans la base de HA.
As tu essayé de supprimer l’extension comme ça :

Oui, mais je retente

Edit: Je ne peux pas retenter puisque l’integration n’est plus installée. Enfin je crois

essaye de réinstaller l’extension préalablement puis de la supprimer comme indiqué …