I’ve had some success in getting my electricity data consumption into the energy dashboard after forking and doing a bunch of re-work on the original repo. It’s still early days and a bit rough but it’s working. My green button provider lets me download the atom feed version of the ESPI xml, not a full xsd-compliant xml file - I have no idea if that’s what other providers supply so this may be a bespoke solution unless the atom feed format for green button data is used more commonly. Anyway, if you want to play with it, warts and all, it can be found at the rhounsell fork of the vqvu project (dev branch at the moment). You’ll have to copy/paste the actual xml into the XML field during the integration setup and then use the Import ESPI XML service/activity under developer tools to add subsequent XML. I’ve been focused on getting the data to display, but if things solidify this could probably be improved.
Thanks for your work on this. I tried importing via file and xml path with no luck today. I have Enbridge and Hydro One. Both provide 2 files - account info and usage. The account info files seem to be accepted by the integration, but no entities or info appear when loaded in. Both usage files result in Invalid ESPI XML error. I am not savvy enough to know what the issue but figured I’d share for those searching and in case I could be of any value in testing.
_UOM_MAP: Final = {
# Use strings to keep model generic across energy and gas
“72”: “Wh”, # Watt-hours (electricity)
“42”: “m³”, # Cubic meters (gas)
“80”: “currency”,
}
I’m encountering the following error:
Failed to check flowDirection for /UsagePoint/1/MeterReading/1: Invalid value '38' at path
'./atom:content/espi:ReadingType/espi:uom' of entry:
<ns0:entry xmlns:ns0="http://www.w3.org/2005/Atom" xmlns:ns1="http://naesb.org/espi"> <ns0:id>urn:uuid:8ef6f3bd-fe2f-4329-84e6-94241c5ace1d</ns0:id>
<ns0:link href="/ReadingType/1" rel="self" />
<ns0:link href="/ReadingType" rel="up" />
<ns0:title>Energy Delivered (W_ELE_DEL)</ns0:title> <ns0:content type="xml"> <ns1:ReadingType> <ns1:accumulationBehaviour>0</ns1:accumulationBehaviour> <ns1:commodity>1</ns1:commodity> <ns1:dataQualifier>0</ns1:dataQualifier> <ns1:flowDirection>0</ns1:flowDirection> <ns1:kind>8</ns1:kind> <ns1:phase>0</ns1:phase> <ns1:powerOfTenMultiplier>0</ns1:powerOfTenMultiplier> <ns1:timeAttribute>0</ns1:timeAttribute> <ns1:uom>38</ns1:uom> </ns1:ReadingType> </ns0:content> <ns0:updated>2025-11-07T12:34:00-05:00</ns0:updated> </ns0:entry> , including by default