Rinnai Tankless Water Heater & Control-R Module Integration

I have this installed and working but I’m still unable to control circulation. All I get is read only info.

Hi Ambi,
Did you figure out how to get the integration installed and working? I will be happy to help if not.

Have you updated the Control-R firmware and using Rinnai app 2.0?

I believe the person who made this custom integration reverse engineered the Rinnai API and it does not require connectivity to the cloud, it communicates directly to the Control-R module on your local network, but I’m not 100% sure.

Pushing the Rinnai push button does NOT require the cloud. The button they supply communicates with the Rinnai Control-R module via Zigbee.

@bbarbour on your custom integration can you please confirm if this can be used 100% local with a Control-R controller or if connectivity to Rinnai’s cloud is still needed to be able to trigger water circulation?

@robo003 I apologize for the delayed response as I was working on adjusting my username to match my developer account. Yes this integration does require a cloud connection as of now. I have not seen any local connections made to the water heater from the Rinnai app as of my research. I continue to check and poke around to hopefully find something, but since all the updates they have made in version 2 of the app with the use of aws I haven’t found a way to send the commands as of yet.

Thanks @Explosivo22 for the confirmation and your work! I had just picked up a used Control-R module but only with the included documentation found out that it’s not compatible with my existing MC-195T-US controller. I’m not the biggest fan of exposing my water heater to the Internet just to toggle recirculation locally. I will likely still install the Control-R module but then once up/running block Internet access and add an ESPHome to simulate triggering the Zigbee button.

I did download the repo in HACS but I am unable to configure the email and password for it. How do you configure it ?

If you have updated to the 2.0 version app, then you should just be able to add the integration via HACS and then add it from the integrations page. The same email address and password for the app should give you access.

I had the same issue as Ambi.

I had to add the repository as a “Custom Repository”. HACS → Integrations → (tripple dots) → Custom Repositories.

Works great. Many thanks to @bbarbour for an awesome component!

Thanks for the work on this integration!

I’ve got the integration installed and can see my tankless heater. What I cannot figure is how to call for recirculation. Ideally I would like to have a button for my dashboard that calls for recirculation for 10 minutes. Any help or pointers would be appreciated.

I’m trying to make the service call but having a hard time finding the proper entity_id to use. Is it just the name of the heater? If so, I’m getting the following error:

2022-08-10 22:04:06.934 WARNING (MainThread) [homeassistant.helpers.service] Unable to find referenced devices Bully House or it is/they are currently not available

@Explosivo22 WoW WoW Great job! Thanks for the work on the project. Just installed it and it seems to be working.
I cannot seem to find a way to kick off a recirculation event. I see that it is set up in the json. I would like to be able to automate a kick of the recirc if the recirc loop gets below a certain temp. I don’t want to just set the recirculation on between a certain time and maintain the loop at the Max temp That is a waste but during peak times of the day I would like to keep the recirc line at a min temp.
Also do you think you can add more of the sensor data like GPM(Water Flow), combustion cycles and operational hours.
Also the ability to change the water temp setpoint like a thermostat gauge so it can be added to this display in HomeAssistant.
Thanks Bill




It’s done as a service call. You can test it via the Developer Tools under “Services”. However, as you can see above, I’m having issues as well.

Hey all, I’m coming from HomeKit land and I’ve been using a rinnai plugin for it that communicates to the cloud service. However that broke a few days ago and I’d LOVE a local control option. Reading this thread it seems like someone might have found one in a dev tools tab somewhere? What’s this interface I’m seeing in the screenshots above? Sorry for the naive questions!

@tbully This should be fixed now.

1 Like

@wrmacj Thank you. You are welcome. Love giving back when I actually can.

So this is called as a service call as you can see from @tbully’s post

I have tried to use different time intervals other than the ones defined by Rinnai in the app and it doesn’t seem to take anything other than 5 minute intervals, but I will need to test again.

I will check into this. The issue with these, if I’m remembering while away from my desk, is that these require a do_maintenance_retrieval on the water heater to update these values. Currently this only happens on a 10 minute interval as it seems more intensive on the water heater from my observations. Maybe it could be decreased, but would definitely need some testing.

I will look at what this might take. We might be able to get something going on this.

@guillochon Currently the only option I have seen to connect to Rinnai is via the cloud. I continue to look into this in hopes that I might come across something that would give me local access.

The dashboard you are seeing is one created by @wrmacj. I am sure he wouldn’t mind giving you some more information.

@Explosivo22 - Has something changed on Rinnai’s end regarding sending commands recently? I use your repo: RinnaiControlR and i can no longer trigger a a recirculation. Querying results still works (Temperature, is_Heating, etc).

@Python_1 Yes they did make a change. I am working on updating all repositories. Should have a fix deployed soon.