Rainforest Automation (v1.0.0b)

zigbee
app

#1

Rainforest Automation

Have Homey report on your entire home’s power usage, simply by pluging in a gateway into a standard power point. Note that it requires that your energy provider is using a smart energy meter.


Supports

Currently supports the latest gateway from Rainforest, the eagle-200.


Pairing

In order to pair a new device, you will need your gateway details (found on the bottom of your gateway) and preferably your gateway should be statically assigned an IP address using your router.


Details

Tested

Hypothetically this will work with any device connected to the gateway. Practically it has been tested with Smart Power Meters, specifically a “Generic Zigbee Smart Power Meter”.

Features

Power Metering 
Power Measuring

Settings

Power Meter Polling Frequency
Power Measure Polling Frequency
Gateway IP Address

Languages

English (Australian)

Change Log

  • 1.0.0

    Pairs a Smart Meter, connected to an Eagle-200 gateway, to Homey. Display the current power demand and total power supplied. Shows total home power usage upon Homey insights. Hypothetically supports additional devices and types connected to the gateway but is untested.


Road Map

  • 1.1.0

    Will update the capabilities meter/measurement units to be be better suited to whole home meter. Meter : kWh -> mWh and Measure W -> kW. It will also update the settings, to allow the metering to be reset (in Homey) and customised : ie Meter = Delivered or Received or (Delivered - Received).

  • 1.2.0

    To add additional features related flows, cards, actions, etc.

  • > 2.0.0

    Backwards support for original Eagle gateway, detailed reporting, reading load switches/thermostats/HW Switch/CT Meter/Inverters specific data, setting thermostat, pulling historical data from cloud API, setting device specific values, break down of billing periods and tariffs, etc.


Requests

Given that smart power meters are generally only installed in Australia, Canada, US and the Homey community is largely based in Europe. With such a small foot print of users, new features/versions will be added upon request/demand if there is any.


#2
  • Reserved

#3

Hi,

Just tried this, put in all the details and it just sits there spinning gear icon, and gets no further ?

Any way to debug this ?

just noticed however that my model number is different, RFA-Z109-PC-002


#4

Hey Tony, your using the original Eagle, I have the Eagle 200. I am happy to add support for the original Eagle but ill need some help to make sure it actually works as it is a completely different structure/authorisation.


#5

Sure, what do you need me to do ?

I am a software dev myself, and have already done other integrations with my eagle, so should be pretty easy.


#6

All I have done with mine is a HTTP post (with authorisation username = cloud id, password = install code)

http:{ipaddress}/cgi-bin/cgi_manager

with the content

<LocalCommand>\n\r<Name>get_usage_data</Name>\n\r<MacId>0xd8d5b90000005dbc</MacId>\n\r<Format>JSON</Format>\n\r</LocalCommand>

which returns back the json structure

{“meter_status”:“Connected”,
“demand”:“0.5700”,
“demand_units”:“kW”,
“demand_timestamp”:“1536235984”,
“summation_received”:“0.000”,
“summation_delivered”:“42351.001”,
“summation_units”:“kWh”,
“price”:“0.1759”,
“price_units”:“840”,
“price_label”:“Set by User”,
“message_timestamp”:“946684800”,
“message_confirmed”:“N”,
“message_confirm_required”:“N”,
“message_id”:“0”,
“message_queue”:“active”,
“message_read”:“Y”,
“threshold_upper_demand”:“11.548000”,
“threshold_lower_demand”:"-2.000000",
“fast_poll_frequency”:“0x00”,
“fast_poll_endtime”:“0x00000000”}


#7

Thanks for sending through the command, made things a lot clearer. It looks like that command is for the Uploader API. [Push] I was looking at the REST API [Pull] - Pretty glad we figured that out early.

Honestly Ive only had a quick glance at both documents, looks like the REST API is accessing their cloud server? I have to look into it in more detail.

All I would need from you would be each CURL commands we would send and the response,so I can build a ‘dummy’ device. And then to test ideally dev branch (or alpha) with me to make sure its connecting / getting back the same results as your CURL command. In my experience most APIs have a couple of small idiosyncrasies that need to be worked out.


#8

Doesn’t seem like either of the documents I sent through have the command you are using, nor its response. Which document did you use to find that command?


#9

I can’t attach a PDF here, but its the same as their Cloud REST API, you just use the local address instead of the cloud one (took me ages to find that one)

But you are right, get_usage_data does not exist in the documents, I can’t remember where I found that, was over a year ago.

If you want, I can open up my FW to port forward thru to this device - perhaps best to take this out of public forums, send me a PM with your IP address and we can go from there


#10

@Tony_Burn I’ve created a new branch with support for the original eagle device.

However, It was built based of the spec doc, with out any testing upon a device. Using the undocumented ‘localCommand’ syntax upon the documented commands. Soooo YMMV.

In theory (ha) it should work but this is as far as I can take it personally with out a device to test upon or with out someone with a device testing it for me.

I’ve got one more release I would like to do before I move onto another project, so hopefully it gets tested and merged back in time.

Thanks


#11

Hi @Jamie what do I need to do to test this for you ?