{"id":17184532,"url":"https://github.com/nechry/elco-remocon-net-appdaemon","last_synced_at":"2025-04-13T18:06:00.077Z","repository":{"id":153836769,"uuid":"630782841","full_name":"nechry/elco-remocon-net-appdaemon","owner":"nechry","description":"An AppDaemon to fetch data from the gas boiler system via the Elco Remocon-Net cloud service and push them to home-assistant entities.","archived":false,"fork":false,"pushed_at":"2023-11-27T21:05:01.000Z","size":304,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-05-01T14:49:12.749Z","etag":null,"topics":["appdaemon-apps","ariston","ariston-remotethermo","elco","hacs","home-assistant","home-automation","homeassistant-custom-component","remocon-net","smarthome"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nechry.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["nechry"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":["https://paypal.me/nechry"]}},"created_at":"2023-04-21T06:30:27.000Z","updated_at":"2024-05-27T11:48:13.555Z","dependencies_parsed_at":"2024-05-27T11:48:08.883Z","dependency_job_id":null,"html_url":"https://github.com/nechry/elco-remocon-net-appdaemon","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nechry%2Felco-remocon-net-appdaemon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nechry%2Felco-remocon-net-appdaemon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nechry%2Felco-remocon-net-appdaemon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nechry%2Felco-remocon-net-appdaemon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nechry","download_url":"https://codeload.github.com/nechry/elco-remocon-net-appdaemon/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240109566,"owners_count":19749171,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["appdaemon-apps","ariston","ariston-remotethermo","elco","hacs","home-assistant","home-automation","homeassistant-custom-component","remocon-net","smarthome"],"created_at":"2024-10-15T00:43:33.800Z","updated_at":"2025-02-23T21:31:39.423Z","avatar_url":"https://github.com/nechry.png","language":"Python","funding_links":["https://github.com/sponsors/nechry","https://paypal.me/nechry"],"categories":[],"sub_categories":[],"readme":"# elco-remocon-net-appdaemon\n\n[![hacs_badge](https://img.shields.io/badge/HACS-41BDF5.svg)](https://github.com/hacs/integration)\n[![GitHub Release][releases-shield]][releases]\n[![License][license-shield]](LICENSE.md)\n[![Github Actions][github-actions-shield]][github-actions]\n![Project Maintenance][maintenance-shield]\n[![GitHub Activity][commits-shield]][commits]\n[![CodeQL](https://github.com/nechry/elco-remocon-net-appdaemon/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/nechry/elco-remocon-net-appdaemon/actions/workflows/codeql-analysis.yml)\n\nELCO Remocon.net AppDaemon app to fetch data from the gas boiler system via the Elco Remocon-Net cloud service and push them to home-assistant entities.\n\n[![Sponsor Nechry via GitHub Sponsors][github-sponsors-shield]][github-sponsors]\n\n## Installation\n\n### Installing AppDaemon\n\nThe backend application for HomeAssistant is written in a python for AppDaemon. This means it requires a working and running installation of AppDaemon.\n\n![hass-add-on-store][hass-add-on-store]\n\nThe easiest way to install it is through Home Assistant's Supervisor Add-on Store, it will be automatically connected to your Home Assistant Instance.\n\n### (Optional) Installing Studio Code Server\n\nYou will need a way to edit the `apps.yaml` config file in the Appdaemon folder.\n\nInstall `Studio Code Server` from Home Assistant's Supervisor Add-on Store to easily edit configuration Files on your HomeAssistant Instance.\n\nAny other method to modify your configuration files will also work.\n\n### Installing HomeAssistant Community Store\n\n`HACS` is the Home Assistant Community Store and allows for community integrations and automation to be updated easily from the Home Assistant web user interface. You will be notified of updates, and they can be installed by a click on a button.\n\n### Installing AppDaemon Backend Application\n\n[![Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=nechry\u0026repository=elco-remocon-net-appdaemon\u0026category=appdaemon)\n\n## Configuration\n\n### ⚠️ appdaemon location changed\n\nWith appdaemon 0.15 release, the appdaemon data folder will migrate/move out of the Home Assistant configuration folder into a dedicated folder for this add-on  `/addon_configs/\u003cguid\u003e_appdaemon/` . You can access add-on configuration folders using SSH, Samba, VSCode, and similar add-ons by accessing the addon_configs folder/share.\n\nIf you have this in your appdaemon.yaml file:\n```yaml\nsecrets: /config/secrets.yaml\n```\nYou will need to adjust this to:\n```yaml\nsecrets: /homeassistant/secrets.yaml\n```\n\nsee: [https://github.com/hassio-addons/addon-appdaemon/pull/290](https://github.com/hassio-addons/addon-appdaemon/releases/tag/v0.15.0)\n\n### ⚠️ HACS didn't yet install the addons in /addon_configs/ folder\n\nHACS install the addon inside the previous `adddaemon` folder not inside the new structure, you will have to manualy move the structure `apps/elco-remocon-net-appdaemon` folder inside of the  `/addon_configs/\u003cguid\u003e_appdaemon/` folder see issues #8\n\n![hass-add-on-folders][hass-add-on-folders]\n\nI hope this will be soon fixed on HACS\n\n### Long Lived Token\n\nCreate a [Long Lived Access Tokens](https://www.home-assistant.io/docs/authentication/#your-account-profile) for appdaemon, and save it in your `/config/secrets.yaml` file.\n\nAssing the token to the plugins HASS section in `/addon_configs/\u003cguid\u003e_appdaemon/appdaemon.yaml` file.\n\n```yaml\nplugins:\n    HASS:\n      type: hass\n      ha_url: http://homeassistant.local:8123\n      token: !secret appdaemon_token\n```\n\nEnsure to set a valid `ha_url` to match your setup.\n\n### AppDaemon's python packages pre-requisites\n\nNo additional python packages are required.\n\n### HACS configuration\n\nTo to get `ELCO Remocon.net AppDaemon` work with HACS, you will need to make sure that you enabled AppDaemon automation in HACS, as these are not enabled by default:\n\n- Click on Configuration on the left menu bar in Home Assistant Web UI\n- Select Devices \u0026 Services\n- Select Integrations\n- Find HACS and click on Configure\n- In the window that opens, make sure that Enable AppDaemon apps discovery \u0026 tracking is checked, or check it and click Submit\n\n[AppDaemon discovery and tracking](https://hacs.xyz/docs/categories/appdaemon_apps) enabled for HACS.\n\n### Remocon-Net configuration\n\nIt is required to have a working Elco Remocon-Net installation with a gateway. Base on that you have to find your `gateway_id`.\n\nThe `gateway_id` is the number you see in the URL when you are logged in to the Elco Remocon-Net cloud service, which you would find at https://www.remocon-net.remotethermo.com\n\n![gateway_id][gateway_id]\n\n### secrets.yaml\n\nAdd the following information in your secrets.yaml file according to your Remocon-Net profile:\n\n```yaml\nremocon_username: \u003cYOUR_EMAIL\u003e\nremocon_password: \u003cYOUR_PASSWORD\u003e\nremocon_gateway_id: \u003cYOUR_INSTALLATION_NUMBER\u003e\nremocon_bearer_token: \u003cREMOCON_LONG_LIVE_TOKEN\u003e\n```\n\nThe `remocon_bearer_token` refers to a second long-lived Home Assistant token. Create a new one in your Home Assistant profile page for Remocon app.\n\nAttention: For Apps in the AppDaemon, the `secrets.yaml` file location is define/configurable in `/addon_configs/\u003cguid\u003e_appdaemon/appdaemon.yaml` file.\n```yaml\nsecrets: /homeassistant/secrets.yaml\n```\n\nIn this case I share same  `secrets.yaml` file of Home-Assistant instance.\n\n### apps.yaml\n\nlocation: `/addon_configs/\u003cguid\u003e_appdaemon/apps.yaml` \n\nDefine your app like the following:\n\n\u003c!-- MARKDOWN-AUTO-DOCS:START (CODE:src=./.apps.example.yaml) --\u003e\n\u003c!-- The below code snippet is automatically added from ./.apps.example.yaml --\u003e\n```yaml\nremocon:\n  module: elco-remocon-net-appdaemon\n  class: Remocon\n  plugin: HASS\n  base_url: https://www.remocon-net.remotethermo.com\n  username: !secret remocon_username\n  password: !secret remocon_password\n  gateway_id: !secret remocon_gateway_id\n  bearer_token: !secret remocon_bearer_token\n  # refresh_rate: 60 # optional\n  #ha_url:  # optional, in case hassplugin ha_url undefined\n```\n\u003c!-- MARKDOWN-AUTO-DOCS:END --\u003e\n\nkey | optional | type | default | description\n-- | -- | -- | -- | --\n`base_url` | False | string | \u003chttps://www.remocon-net.remotethermo.com\u003e | Remocon-net cloud service url\n`username` | False | string | | Your ELCO username to access remocon-net cloud service, recommended to use secrets.\n`password` | False | string | |Your ELCO password to access remocon-net cloud service, recommended to use secrets.\n`gateway_id` | False | string | | Your gateway id\n`bearer_token` | False | string | | Long-lived Home Assistant token\n`refresh_rate` | True | int | 60 | The crawl rate in minutes\n`ha_url` | True | string | | HA url for callback\n`zone` | True | int | 1 | Zone number\n\n## Usage\n\n- `ELCO Remocon.net AppDaemon` will initiate a login session on Elco Remocon-Net cloud service base on your provided credential.\n- On success the AppDaemon will fetch all information of the specified installation provided by the gateway_id\n- Last but not least the AppDaemon will push the data to the specified Home Assistant entities.\n\n## Entities\n\n| sensor | Description | source | Detail |\n|--- |---|---|---|\n| sensor.elco_outside_temperature | Elco Outside Temperature | plantData.outsideTemp | unit_of_measurement: °C  |\n| sensor.elco_domestic_hot_water_storage_temperature | Elco Domestic Hot Water Storage Temperature | plantData.dhwStorageTemp | unit_of_measurement: °C |\n| sensor.elco_domestic_hot_water_temperature | Elco Domestic Hot Water Temperature | plantData.dhwComfortTemp.value | unit_of_measurement: °C |\n| sensor.elco_comfort_room_temperature_setpoint | Elco Comfort room Temperature setpoint | zoneData.chComfortTemp.value | unit_of_measurement: °C |\n| sensor.elco_reduced_room_temperature_setpoint | Elco Reduced room Temperature setpoint | zoneData.chReducedTemp.value | unit_of_measurement: °C |\n| sensor.elco_room_temperature | Elco Room Temperature | zoneData.roomTemp | unit_of_measurement: °C |\n| sensor.elco_desired_room_temperature | Elco Desired Room Temperature | zoneData.desiredRoomTemp | unit_of_measurement: °C |\n| sensor.elco_room_operation_mode_heating | Elco Room Operation mode heating | zoneData.mode.value | Protection, Automatic, Reduction, Comfort |\n| sensor.elco_cool_comfort_room_temperature_setpoint | Elco Cool Comfort room Temperature setpoint | zoneData.coolComfortTemp.value | |\n| sensor.elco_cool_reduced_room_temperature_setpoint | Elco Cool Reduced room Temperature setpoint | zoneData.coolReducedTemp.value | |\n| binary_sensor.elco_domestic_hot_water_storage_mode | Elco Domestic Hot Water Storage Mode | plantData.dhwMode.value |  |\n| binary_sensor.elco_domestic_hot_water_storage_temperature_error | Elco Domestic Hot Water Storage Temperature Error | plantData.dhwStorageTempError |  |\n| binary_sensor.elco_outside_temperature_error | Elco Outside Temperature Error | plantData.outsideTempError |  |\n| binary_sensor.elco_heatpump_on | Elco HeatPump On | plantData.heatPumpOn |  |\n| binary_sensor.elco_domestic_hot_water_enabled | Elco Domestic Hot Water Enabled | plantData.dhwEnabled |  |\n| binary_sensor.elco_has_outside_temperature_probe | Elco has Outside Temperature Probe | plantData.hasOutsideTempProbe |  |\n| binary_sensor.elco_flame_sensor | Elco Flame sensor | plantData.flameSensor |  |\n| binary_sensor.elco_has_domestic_hot_water_storage_probe | Elco has Domestic Hot Water Storage Probe | plantData.hasDhwStorageProbe |  |\n| binary_sensor.elco_room_heating_is_active | Elco Room Heating is Active | zoneData.isHeatingActive |  |\n| binary_sensor.elco_room_heating_is_request | Elco Room Heating or Cool is Request | zoneData.heatOrCoolRequest |  |\n| binary_sensor.elco_room_cooling_is_active | Elco Room Cooling is Active | zoneData.isCoolingActive |  |\n| binary_sensor.elco_room_temperature_error | Elco Room Temperature Error | zoneData.roomTempError |  |\n\n## Home Assistant dashboard\n\nI build a simple dashboard with the following 3 cards definition\n\n![home-assistant-card][home-assistant-card]\n\n### Room temperature\n\nTo display the room temperature, the desired temperature, the operation mode and the heating status.\n\nJust copy this yaml code and paste it in `Manual card`.\n\n```yaml\ntype: entities\nentities:\n  - entity: sensor.elco_room_temperature\n    name: Current room temperature\n    secondary_info: last-changed\n  - entity: sensor.elco_desired_room_temperature\n    name: Desired temperature\n    secondary_info: last-changed\n    type: custom:multiple-entity-row\n    show_state: true\n    entities:\n      - entity: sensor.elco_reduced_room_temperature_setpoint\n        name: Reduced\n      - entity: sensor.elco_comfort_room_temperature_setpoint\n        name: Comfort\n      - entity: sensor.elco_outside_temperature\n        name: Outside\n  - entity: sensor.elco_room_operation_mode_heating\n    name: Operation mode heating\n    secondary_info: last-updated\n  - entity: binary_sensor.elco_room_heating_is_active\n    type: custom:uptime-card\n    title_template: Heating\n    hours_to_show: 48\n    status_adaptive_color: true\n    alias:\n      ok: Active\n      ko: Idle\n    show:\n      footer: false\n  - entity: binary_sensor.elco_room_heating_is_request\n    type: custom:uptime-card\n    title_template: Heating\n    hours_to_show: 48\n    status_adaptive_color: true\n    alias:\n      ok: Request\n      ko: Idle\n    show:\n      footer: false\n      title: false\n      icon: false\ntitle: Home\nstate_color: true\nfooter:\n  type: graph\n  entity: sensor.elco_room_temperature\n  hours_to_show: 48\n  detail: 2\n```\n\nThis card use the custom component [multiple-entity-row](https://github.com/benct/lovelace-multiple-entity-row) available on [HACS](https://hacs.xyz/), you need to install before.\n\n### Domestic hot water\n\nTo display the domestic hot water temperature, use this yaml code and paste it in `Manual card`.\n\n```yaml\ntype: entities\nentities:\n  - entity: sensor.elco_domestic_hot_water_storage_mode\n    name: Storage Mode\n  - entity: binary_sensor.elco_domestic_hot_water_enabled\n    name: Enabled\n    secondary_info: none\n  - entity: sensor.elco_domestic_hot_water_temperature\n    name: Temperature\n    secondary_info: none\n  - entity: sensor.elco_domestic_hot_water_storage_temperature\n    name: Storage Temperature\n    secondary_info: last-changed\ntitle: Domestic Hot Water\nstate_color: true\nfooter:\n  type: graph\n  entity: sensor.elco_domestic_hot_water_storage_temperature\n  detail: 1\n```\n\n### Boiler status\n\nAnd finally to display the boiler status, use this yaml code in `Manual card`.\n\n```yaml\ntype: entities\nentities:\n  - entity: binary_sensor.elco_heatpump_on\n    name: Heat Pump\n  - entity: binary_sensor.elco_outside_temperature_error\n    name: Outside Temperature Error\n  - entity: binary_sensor.elco_domestic_hot_water_storage_temperature_error\n    name: Domestic Hot Water Storage Temperature Error\ntitle: THISION S 14.2 Status\nstate_color: true\nfooter:\n  type: graph\n  entity: sensor.elco_outside_temperature\n```\n\n## Limitations\n\n- This appdaemon's app only supports 1 gateway.\n- Readonly access, not set point, for the moment.\n- No support for Hot Water Heat Pumps\n\n### Tested system\n\n- THISION S boiler\n- Altron B boiler\n  \n###\n\n## License\n\n[MIT](LICENSE)\n\n[hass-add-on-folders]: https://github.com/nechry/elco-remocon-net-appdaemon/raw/main/assets/hass-add-on-folders.jpeg\n[hass-add-on-store]: https://github.com/nechry/elco-remocon-net-appdaemon/raw/main/assets/hass-add-on-store.png\n[gateway_id]: https://github.com/nechry/elco-remocon-net-appdaemon/raw/main/assets/gateway_id.png\n[home-assistant-card]: https://github.com/nechry/elco-remocon-net-appdaemon/raw/main/assets/home-assistant-card.png\n[commits-shield]: https://img.shields.io/github/commit-activity/y/nechry/elco-remocon-net-appdaemon.svg\n[commits]: https://github.com/nechry/elco-remocon-net-appdaemon/commits/main\n[releases-shield]: https://img.shields.io/github/release/nechry/elco-remocon-net-appdaemon.svg\n[releases]: https://github.com/nechry/elco-remocon-net-appdaemon/releases\n[license-shield]: https://img.shields.io/github/license/nechry/elco-remocon-net-appdaemon.svg\n[maintenance-shield]: https://img.shields.io/maintenance/yes/2023.svg\n[github-actions-shield]: https://github.com/nechry/elco-remocon-net-appdaemon/actions/workflows/hacs-validation.yaml/badge.svg\n[github-actions]: https://github.com/nechry/elco-remocon-net-appdaemon/actions\n[github-sponsors-shield]: https://github.com/nechry/nechry/raw/master/assets/GitHub_Sponsorship_button.png\n[github-sponsors]: https://github.com/sponsors/nechry\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnechry%2Felco-remocon-net-appdaemon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnechry%2Felco-remocon-net-appdaemon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnechry%2Felco-remocon-net-appdaemon/lists"}