Owl Intuition pv & Home Assistant

Many people from the uk & Portugal we’re reporting it down. No access via the app or web portal. Only one other person who was using mqtt had no break in service. I’m using this code and it was down for me. It recovered 3-4 hours ago now.

I couldn’t log in but my owl gateway was still sending the datagram by multicast. If someone can get the add-on working with multicast based on the code I posted above, it could prove more resilient.

My router blocks multicast packets so no joy here (need to figure this out with my ISP why the router is blocking multicast) in the meantime UDP solution on this thread works like a charm

Hi,

Great work on making OWL integrated with HA.

I have a set up on OWL tariff information (I have different electric costs depending on the day of the week and also depending on certain hours). Is OWL sending the cost elements? Can it be added as sensors?

Regards,
João

The OWL sensor does not send the cost info, but you can calculate this with a template sensor based on the kwh reporting, mine is as below:

  - platform: template
    sensors:
      # Standing charge £0.3644
      # kWh charge £0.15778
      electricity_cost:
        friendly_name: "Today's Cost"
        unit_of_measurement: '£'
        value_template: '{{ ((0.3644 + ((states("sensor.owl_intuition_electricity_today") | float) * 0.15778))) | round(2) }}'
        icon_template: mdi:currency-gbp
2 Likes

I have different rates at different times.
00:00 - 05:00 - rate 2
13:00 - 16:00 - rate 2
20:00 - 22:00 - rate 2

All other times rate 1

Is anyone able to modify @jchasey ‘s code to add these ?

Actually, the new edition of the OWL electricity sensors do report the cost info, like e.g.:

<electricity>
  ...
  <property>
    <current>
      <watts>275.00</watts>
      <cost>3.28</cost>
    </current>
    <day>
      <wh>1969.24</wh>
      <cost>41.06</cost>
    </day>
    ...
  </property>
</electricity>

Thanks to @jchasey we support the two models, and I can easily add a sensor for the new model that reports the above.

1 Like

And I realize I missed @Crhass multicast code (BTW I did not get any OWL service interruption in Switzerland). I should try and have a look at integrating that, but for now I’m struggling into making the code use async, to get rid of all the warnings and have a decent platform. No joy yet, I get only one update and then that’s it…

And that would be the preferred way of doing it since I see it would pull the day cost.

We may want to look at restructuring the code as a hub for the Network OWL and then we can dynamically add sensors/climate control/water heater control. Check out the source here which may provide a good template, using async etc:

https://github.com/asantaga/wiserHomeAssistantPlatform

1 Like

I pushed to github a patch to add two more sensors:

  • the electricity cost
  • the last update time (in UTC), useful for automations

@jchasey, of course I used the 2.0 XML format, could you please have a look at what you get with version 1.0 for the last update time? I understand the cost shall be N/A for you…

Otherwise, it might be a good idea to refactor the code as a hub, but for the async part the code above does not have any.

I’ve got 2 properties using OWL, the one with v2 runs the new update fine, will be able to check the other one next week.

For the last update time, wouldn’t it be better to add this as an attribute to the sensors in question rather the a sensor of its own? Reason is that there a different devices reporting the date, your electricity may update but not your hot water for example.

The last update sensor is “class specific”, and it could be extended for the other devices. Nevertheless, I agree that it’s more appropriate and neat to have that as an attribute (of the relevant sensors of course). I’ve just pushed to github the fix. It should be easy to adapt the code for the other devices if they report the lastupdate time in a different XML tag.

I have already added the owlintuition.py in the sensor page and the code on the configuration.yaml but i keep receiving the message:

“[homeassistant.loader] Unable to find platform owlintuition”

What am I doing wrong?

Where did you add owl intuition.py?

In the sensor page?

You need to put the file in config/custom_components/sensor

I put it on \hassio\config\custom_components\sensor

Now I can see it on the history but it doesn’t show on the main screen

That seems to hint that the platform has been loaded: you should see the sensors e.g. at https://YOUR_HASS_IP/dev-state.
To have (some of) them visible in the UI you’ll have to configure it - did not have time so far to use the new Lovelace UI, with the old one it’s about the group: section.

I am new to home assistant. I have managed to get it working on my synology NAS and installed the owlintuition.py. The software is running but it never receives anything from my network owl. I’ve set the ip address and port number in the data push settings to match the ip address of my NAS, and the port number as set in configuration.yaml
sensor:

  • platform: yr
  • platform: owlintuition
    port: 9876
    monitored_conditions:
    • hot_water
    • electricity

It never gets any information. I see the following error messages:

2019-03-16 09:52:27 WARNING (Thread-9) [custom_components.sensor.owlintuition] Timeout (60 seconds) waiting for data on port 9876
2019-03-16 09:52:27 INFO (MainThread) [homeassistant.core] Bus:Handling <Event system_log_event[L]: exception=, message=Timeout (60 seconds) waiting for data on port 9876, timestamp=1552729947.8810313, source=custom_components/sensor/owlintuition.py, level=WARNING>

Do you have any idea what I could be doing wrong? Is there anything else I need to set up to make this work? There is no firewall enabled on the NAS device.

It looks to me that you have a sensor folder within your custom components folder.
This has recently changed. My owl sensor.py file and pycache folder are within a folder named owlintuition.

Z:\custom_components\owlintuition