Giter Site home page Giter Site logo

remora-ha's Introduction

remora-ha Remora custom component for Home Assistant

Remora

Remora is a IoT/DIY solution using a dedicated hardware and software to:

  • get electrical consumption information via the TeleInfo
  • manage heating via the Fil Pilote

Link: https://github.com/hallard/remora_soft

PyRemora

This is a simple Python library to handle the Remora API.
The main objective is to include it into Home Assistant components to manage heaters using the Fil Pilote technique and fetch TeleInfo information.

Link: https://github.com/FreeTHX/pyremora

Remora in Home Assistant

This component provides:

  • sensor over TeleInfo
    A sensor for each TeleInfo header can be configured to fetch TeleInfo value.
    See SENSOR_TYPES in sensor.py to get the list of supported headers.
  • climate to manage water heater via Relais
    Use it to switch on/off the heater and set the preset mode.
  • climate to manage heater via Fil Pilote
    Setup a climate entity for each Fil Pilote.

Note : A mapping between hvac_mode and preset_mode has been implemented as follow :

REMORA_PRESET_MODES_TO_HVAC_MODE = {
    remora.FpMode.Arrêt.name: HVAC_MODE_OFF,
    remora.FpMode.HorsGel.name: HVAC_MODE_COOL,
    remora.FpMode.Eco.name: HVAC_MODE_HEAT_COOL,
    remora.FpMode.Confort.name: HVAC_MODE_HEAT
}

HASS Integration

Copy the custom_components folder to get it install under '/config/custom_components/remora/'.
Edit your configuration.yaml file.

# Remora
remora:
  host: 'Your Remora device hostname or IP address'

sensor:
  - platform: remora
  # scan_interval: xx (in sec, default 30)
    resources:
      # Add a list of valid TeleInfo headers
      # Check valid list with SENSOR_TYPES in sensor.py
      - IINST
      - ADCO
      - BASE
      - PAPP

climate:
  - platform: remora
    filpilote:
      # List of FilPilote index you want to manage
      # name is optional to set a friendly_name 
      # temp_sensor is optional for temperature sensor display
      - fp: 1
        name: 'Kitchen'
        temp_sensor: 'sensor.temperature_158d000XXXXXXX'
      - fp: 2
      - fp: 3
      - fp: 4
      - fp: 5
    relais: True

Demo

Example

Energy Integration

You can add sensors like BASE, HCHC, HCHP or others Index on the Energy Dashboard.
Add Index to Energy Dashboard

This will give you the following energy consuption chart.
Energy Chart

remora-ha's People

Contributors

freethx avatar

Stargazers

 avatar Steph avatar

Watchers

 avatar Steph avatar

remora-ha's Issues

Warning in logs

Hello, thank to you, because since the 1 year, I use your component to manage my heating and my power consumption.

Since a few months, I have a lot of warning and I would like to share with you, if you know why. For every scan (30 second by default), I have this error message and I tried some fix, but it's the same.
XXXX-XX-XX XX:XX:XX WARNING (MainThread) [homeassistant.util.async_] Detected I/O inside the event loop. This is causing stability issues. Please report issue to the custom component author for remora doing I/O at custom_components/remora/__init__.py, line 84: return self._remora.getTeleInfo()
Thank you for your help

Use the "climat" HA function

Hello and thank you for the awesone HA plugin.

I would like to use this plugin like a thermostat, so the parameters doesn't work with it (as target_sensor: sensor.study_temperature ) to show all information of my house (temperature and heater configuration at least).

Thank you again !

plugin doesn't start when teleinfo not enabled on remora

plugins fails when fetching http://remora.local/tinfo as this endpoint answer "teleinfo not enabled" when disabled on Remora.

Traceback (most recent call last): File "/config/custom_components/remora/__init__.py", line 35, in async_setup await remora.async_updateTeleInfo() File "/config/custom_components/remora/remora.py", line 41, in async_updateTeleInfo self._teleInfo = await self.async_get_TeleInfo() File "/config/custom_components/remora/remora.py", line 36, in async_get_TeleInfo return await self._remora.getTeleInfo() File "/usr/local/lib/python3.10/site-packages/remora/remora.py", line 40, in getTeleInfo return (await tinfo.json()) File "/usr/local/lib/python3.10/site-packages/aiohttp/client_reqrep.py", line 1103, in json raise ContentTypeError( aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/plain', url=URL('http://remora.local/tinfo')

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.