Home Assistant

Home Assistant Logo – A Blue House with Cables

I have been struggling with for some time, while the system might be powerful, it is what in French you call une usine à gaz, literally a gas work, but this mostly describes an overly complex, heavy infrastructure. Multiple friends recommended I use , so I imaged an SD-card for my Raspberry Pi and gave it a try.

I found the system much more user-friendly, and I was able to quickly setup the system to recognise most of the devices in the house. Many things that were supported out of the box on openHAB are not in Home Assistant and vice-versa. So there was an automatic recognition of the my router (via UP&P) but I needed to edit the configuration file to get my MyStrom switches and the Fronius inverter to be recognised.

Still I managed to get a usable system quickly, with features that seemed out of reach in OpenHAB, like graphs with persistent history, or making devices visible on HomeKit. I really like the that that system has good basic tools to support devices with a REST api, or even just TCP connections. I cannot say I’m overly enthusiastic about the YAML data format, but this was also used by OpenHAB, so…

I managed to get the Zug Oven recognised using the following code (adapted from things found on the forums). I set a very large time interval so as to not get the annoying clicking I described in my post on hacking the over.

rest:
  - scan_interval: 600
    resource: http://192.168.1.59/ai?command=getDeviceStatus
    sensor:
      name: v_zug_oven
      json_attributes:
        - DeviceName
        - Serial
        - Inactive
        - Status
        - Program
        - ProgramEnd
  - resource: http://192.168.1.54/report

template:
  - sensor:
    - name: oven_name
      state: "{{ state_attr('sensor.v_zug_oven', 'DeviceName') }}"
  - sensor:
    - name: oven_inactive
      state: "{{ state_attr('sensor.v_zug_oven', 'Inactive') }}"
  - sensor:
    - name: oven_status
      state: "{{ state_attr('sensor.v_zug_oven', 'Status') }}"
  - sensor:
    - name: oven_program
      state: "{{ state_attr('sensor.v_zug_oven', 'Program') }}"
  - sensor:
    - name: oven_program_end
      state: "{{ state_attr('sensor.v_zug_oven', 'ProgramEnd') }}"

I also managed to get the temperature out of my FlashForge Adventurer 3 printer, the functionality is pretty rough – and I’m not 100% sure that it is reading the actual temperature, but I was happy to get something working:

sensor:
  - platform: tcp
    name: 'rodin-temperature-raw'
    host: 192.168.1.11
    port: 8899
    payload: "~M105\n"
    value_template: "{{ value.split('\r')[1] }}" 

template:
  - sensor:
    - name: rodin-temperature
      state: "{{ states('sensor.rodin_temperature_raw')|regex_findall_index(':(\\d+)', index=0)|float }}"
      unit_of_measurement: "°C"
      device_class: temperature

I found some people in the forums that managed to get Home Assistant to talk to the printer by using an intermediate package, given the simplicity of the FlashForge commands, I felt this was overkill. From the look of it, it should be possible to control the LED light in the printer like a generic RGB light.

I was always fascinated by the number of sensors that are in electronic devices, with no real way to pull the information or make it useful, so this feels like a step in the right direction.

2 thoughts on “Home Assistant”

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.