Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

All entities unavailable. #332

Closed
Patbonamy opened this issue Apr 30, 2024 · 79 comments
Closed

All entities unavailable. #332

Patbonamy opened this issue Apr 30, 2024 · 79 comments
Assignees
Labels
bug Something isn't working

Comments

@Patbonamy
Copy link

First of all please check my wikipage: https://github.com/fustom/ariston-remotethermo-home-assistant-v3/wiki and the previous issues (included the closed ones) before you create a new one.

**Describe the bug"
I want to reopen this one #331

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Environment (please complete the following information):

  • HA version:
  • Version of the integration:
  • Ariston device type (check the integration Device info): [e.g. VELIS Evo2 | Model 4, VELIS LydosHybrid, GALEVO]

Additional context, debug log
How can we do?

@Patbonamy Patbonamy added the bug Something isn't working label Apr 30, 2024
@udoersam
Copy link

udoersam commented May 1, 2024

I got the same problem right now.
When I try to open the url https://www.ariston-net.remotethermo.com/api/v2/ I'm getting an error 404

@febreizh
Copy link

febreizh commented May 1, 2024

hi. i have the same problem right now

@febreizh
Copy link

febreizh commented May 1, 2024

I think that the Ariston service is either broken or there was an update of the API version

@jgrazina
Copy link

jgrazina commented May 1, 2024 via email

@febreizh
Copy link

febreizh commented May 1, 2024

I hope the problem will be corrected quickly. on the other hand I can access the web interface without problem.

@fustom
Copy link
Owner

fustom commented May 1, 2024

#331 (comment)

@gituletz
Copy link

gituletz commented May 3, 2024

Hi,
With the settings proposed here the problem persist.

@hipco
Copy link

hipco commented May 3, 2024

The following worked for me with my Velis Evo. First step is disabling the Ariston integration for about 2 hours and don't use the Ariston App in this time frame. Then enable it and make sure it's working again. After that apply the suggested scan intervals as mentioned above 180/60/600. The integration works for me now without spitting out the 429 exception for 15 hours. It seems Ariston has implemented a connection limit for device status requests on a time basis. Changing the ISP IP address didn't solve the problem so it must be a counter for each request that resets after an amount of time. In my opinion this makes sense to maintain the service and protect the Ariston Gateway from DoS attacks or excessive usage.

@luczky
Copy link

luczky commented May 3, 2024

The suggested scan intervals of 180/60/600 might be the reason if you have only one device. However, in my case, I have three Ariston devices, and the problem still persists.

@irsl
Copy link

irsl commented May 3, 2024

I started working on an MQTT broker emulating the official one. I'll share it on Github, if I succeed.

@bsjouke
Copy link

bsjouke commented May 4, 2024

The main app is also broken. It's likely a service outage

It's really unbelievable. Main app is still down after so many days. The web interface however still seems to work.

@Patbonamy
Copy link
Author

It's really unbelievable. Main app is still down after so many days. The web interface however still seems to work.

You must disable the integration in HA.
And wait 2 hours
Because the integration still try to connect to the API and block the connection.

@bsjouke
Copy link

bsjouke commented May 4, 2024

It's really unbelievable. Main app is still down after so many days. The web interface however still seems to work.

You must disable the integration in HA. And wait 2 hours Because the integration still try to connect to the API and block the connection.

I agree the solution at this moment is in slowing down. I doubled the time values in the config and during the last hour I did get responses. Still too early to draw conclusions.

@nelissuh
Copy link

nelissuh commented May 4, 2024

I increased to the suggested 180/50/600

Also switched off some time.

Now the “available” times are longer, but not always.

What is the strangest to me is the irregularity in the available / unavailable timeslots.

IMG_5685

@muligamma
Copy link

same problem, I heard from ARISTON support, I was told they have no problems

@bsjouke
Copy link

bsjouke commented May 5, 2024

same problem, I heard from ARISTON support, I was told they have no problems

It's really unbelievable. Main app is still down after so many days. The web interface however still seems to work.

You must disable the integration in HA. And wait 2 hours Because the integration still try to connect to the API and block the connection.

I agree the solution at this moment is in slowing down. I doubled the time values in the config and during the last hour I did get responses. Still too early to draw conclusions.

In the last 24 hours it switched online/offline 27 times. So I guess playing with the config values in fact doesn't solve anything.

@muligamma
Copy link

I tried increasing the scan, now let's see how it goes

Immagine 2024-05-05 085701

@cobirnm
Copy link

cobirnm commented May 8, 2024

Hello,

I'm with the configuration below but still get errors. How is this working for you? Is there any solution?
image

@Patbonamy
Copy link
Author

Patbonamy commented May 8, 2024

Hello,

I'm with the configuration below but still get errors. How is this working for you? Is there any solution? image

Disable the integration for about 2 hours, not using the Ariston App and Try 400, 60, 800, it's works for me no error since 4 days.
I also disable the entities that I don't need, the energy ones.

@irsl
Copy link

irsl commented May 11, 2024

I started working on an MQTT broker emulating the official one. I'll share it on Github, if I succeed.

https://github.com/irsl/broker-ari

@Patbonamy
Copy link
Author

I started working on an MQTT broker emulating the official one. I'll share it on Github, if I succeed.

https://github.com/irsl/broker-ari

Good idea irls!
Good luck
I wait for more news.

@emanueldobrin
Copy link

Disable the integration for about 2 hours, not using the Ariston App and Try 400, 60, 800, it's works for me no error since 4 days.
I also disable the entities that I don't need, the energy ones.

Actually, this one worked just fine for me. Thank you!

image

@fustom
Copy link
Owner

fustom commented May 14, 2024

Hi @irsl!

That's amazing! I really like the concept. I was able to run and even debug the project in my docker environment. Unfortunately I am not familiar with Go language nor MQTT, but I think I understand (almost) everything.

I have two questions:

  1. I have VELIS Evo2 | Model 4 device and the "T_22.*" parameters are all 0. How can I find the correct polling parameters for my device? https://github.com/irsl/broker-ari/blob/c6d115be4684a1693a8ce3482a061ab2e9e08728/mqtt.go#L208
  2. "You may do that by configuring static IP settings on the appliance and set the DNS resolver to the IP address where the DNS server of this software is listening" What is your recommended way to do that? I changed my DHCP in my router to serve my IP address as a DNS server, but that changed for all my network devices. How can I set only for my appliance?

@fustom
Copy link
Owner

fustom commented May 14, 2024

  1. Ahh ok. I am stupid. I need to set something in the real cloud and from the response I can see the parameters:
    "2024/05/14 09:08:14 proto decoded as: map[T_18.0.0:1 T_18.0.1:1 T_18.0.2:1 T_18.0.3:0 T_18.1.0:400 T_18.3.0:0 T_18.3.1:1 T_18.3.2:0 T_18.3.3:378 T_18.3.5:0 T_18.3.6:400 response.code:200]"

@irsl
Copy link

irsl commented May 14, 2024

What is your recommended way to do that?

There are a couple of options.

  1. When you enroll your device to the cloud using the official mobile phone app, you can choose whether you want to use DHCP or static IP configuration. If you select the static one, you should be able to specify DNS addresses. I didn't test this though.

  2. To serve DNS, you can also use a proper DNS resolver, e.g. dnsmasq. It is able to resolve addresses and override certain entries. E.g. in this case a config entry would look like this:

address=/broker-ari.everyware-cloud.com/10.6.8.146

The con here is, it requires operating a DNS server on your network.

  1. If you have a more powerful router, e.g. OpenWRT, then it could already feature overriding certain entries.

I need to set something in the real cloud and from the response I can see the parameters

Right, that's the way to learn which MQTT topics the official broker dispatches the actions to, and how the payload looks like.
There are so many different products and features, I already lost the motivation to reverse engineer everything properly:)

@bos-mary
Copy link

Hi @irsl!

That's amazing! I really like the concept. I was able to run and even debug the project in my docker environment. Unfortunately I am not familiar with Go language nor MQTT, but I think I understand (almost) everything.

I have two questions:

  1. I have VELIS Evo2 | Model 4 device and the "T_22.*" parameters are all 0. How can I find the correct polling parameters for my device? https://github.com/irsl/broker-ari/blob/c6d115be4684a1693a8ce3482a061ab2e9e08728/mqtt.go#L208
  2. "You may do that by configuring static IP settings on the appliance and set the DNS resolver to the IP address where the DNS server of this software is listening" What is your recommended way to do that? I changed my DHCP in my router to serve my IP address as a DNS server, but that changed for all my network devices. How can I set only for my appliance?

You could add a new wifi router to your network and connect your Ariston-appliance to the new router and serve your IP address.

Something like this: Internet <-> WAN-router1-LAN <-> WAN-Router2-wifi <-----> appliance.

@hipco
Copy link

hipco commented Jun 17, 2024

https://github.com/fustom/broker-ari

Can confirm that the fork from fustom works very well with my Velis Evo 2. Some rough information about my implementation on Gentoo.

Local Server and Network Gateway 10.10.10.1
Velis Evo 2 Mac ac:67:b2:xx:xx:xx

Init Script
#!/sbin/openrc-run
description="Ariston MQTT Broker"
command="/somepath/ariston/broker-ari"
command_user="${RC_SVCNAME}:${RC_SVCNAME}"
directory="/somepath/ariston"
command_background=yes
pidfile=/run/${RC_SVCNAME}.pid

Iptables
Appropriate Incoming/outgoing rules (123/2080/5300/8883) and DNAT rules
iptables -t nat -A PREROUTING -i br0 -p udp -m mac --mac-source ac:67:b2:xx:xx:xx --dport domain -j DNAT --to 10.10.10.1:5300
iptables -t nat -A PREROUTING -i br0 -p tcp -m mac --mac-source ac:67:b2:xx:xx:xx --dport 8883 -j DNAT --to 10.10.10.1:8883

homeassistant
core.config_entries
"username": "someusername",
"password": "somepassword",
"api_url_setting": "http://10.10.10.1:2080/",

broker-ari
{
"Api_debug": false,
"Api_listener": "10.10.10.1:2080",
"Api_password": "somepassword",
"Api_username": "someusername",
"Dns_listener": "10.10.10.1:5300",
"Dns_resolve_to": "10.10.10.1",
"Ntp_resolve_to": "162.159.200.1",
"Mqtt_broker_certificate_path": "/somepath/ariston/config/server.pem",
"Mqtt_broker_clear_listener": "",
"Mqtt_broker_private_key_path": "/somepath/ariston/config/server.key",
"Mqtt_broker_tls_listener": "10.10.10.1:8883",
"Mqtt_proxy_upstream": "ssl://broker-ari.everyware-cloud.com:8883",
"Poll_frequency": 60,
"Consumption_poll_frequency": 600,
"Devices":
[
{
"GwID": "AC67B2XXXXXX",
"Sys": 4,
"WheType": 6,
"WheModelType": 4,
"Name": "",
"ConsumptionTyp": "2",
"ConsumptionOffset": 0
},
{
"GwID": "",
"Sys": 4,
"WheType": 2,
"Name": "",
"ConsumptionTyp": "7,8",
"ConsumptionOffset": 1
}
]
}

@domenicoblanco
Copy link
Contributor

domenicoblanco commented Jun 18, 2024

Hi! I just tried with a Nimbus (an heat pump that should be similar to the Galevo) and I wasn't able to set it up.
The DNS should be fine, a nslookup on my laptop works well and resetted the network settings in order to set a static DNS, but the logs and the topics aren't logging anything useful and the integration in HASS says that wasn't able to find devices.

Finally, I wasn't sure about the parameters at the end of the config file:

{
    "GwID": "1C9XXXXXXXXX",
    "Sys": 3,
    "WheType": -1,
    "WheModelType": -1,
    "Name": "",
    "ConsumptionTyp": "1,3",
    "ConsumptionOffset": 0
 }

Probably this isn't supported in the fustom's fork, but I hoped to find anyway something useful inside the available topics

@Patbonamy
Copy link
Author

Nobody can make a guide for the broker for noobs?
Please help us.

@domenicoblanco
Copy link
Contributor

domenicoblanco commented Jun 19, 2024

Nobody can make a guide for the broker for noobs? Please help us.

In a few steps:

  • Clone the repository or download it
  • Open a terminal and change the folder inside the broker-ari folder
  • Install Go, minimum version 1.21
  • Run inside your terminal these two commands go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.28 and go install -v github.com/go-delve/delve/cmd/dlv@latest
  • Run CGO_ENABLED=0 go build -v -o broker-ari
  • Create the SSL certs with openssl (make sure to have it installed)
openssl req -nodes -x509 -sha256 -newkey rsa:2048 \
  -keyout  broker-ari.everyware-cloud.com.key \
  -out  broker-ari.everyware-cloud.com.crt \
  -days 356 \
  -subj "/C=NL/ST=Zuid Holland/L=Rotterdam/O=ACME Corp/OU=IT Dept/CN=broker-ari.everyware-cloud.com"  \
  -addext "subjectAltName = DNS:broker-ari.everyware-cloud.com" 

You should also reset your appliance and set a static address instead of DHCP, making sure to set the DNS to the machine's IP in which is running broker-ari

@Patbonamy
Copy link
Author

Nobody can make a guide for the broker for noobs? Please help us.

In a few steps:

  • Clone the repository or download it
  • Open a terminal and change the folder inside the broker-ari folder
  • Install Go, minimum version 1.21
  • Run inside your terminal these two commands go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.28 and go install -v github.com/go-delve/delve/cmd/dlv@latest
  • Run CGO_ENABLED=0 go build -v -o broker-ari
  • Create the SSL certs with openssl (make sure to have it installed)
openssl req -nodes -x509 -sha256 -newkey rsa:2048 \
  -keyout  broker-ari.everyware-cloud.com.key \
  -out  broker-ari.everyware-cloud.com.crt \
  -days 356 \
  -subj "/C=NL/ST=Zuid Holland/L=Rotterdam/O=ACME Corp/OU=IT Dept/CN=broker-ari.everyware-cloud.com"  \
  -addext "subjectAltName = DNS:broker-ari.everyware-cloud.com" 

You should also reset your appliance and set a static address instead of DHCP, making sure to set the DNS to the machine's IP in which is running broker-ari

Thank you [domenicoblanco]
I will try

@domenicoblanco
Copy link
Contributor

No problem, feel free to ask if something isn't clear!

Also, if I did something wrong, feel free to correct me c:

@domenicoblanco
Copy link
Contributor

domenicoblanco commented Jun 19, 2024

Small update for anyone that's trying something similar: I dug a bit in the logs and noticed that my heat pump is requesting for a different endpoint (connect.iot.remotethermo.com). I was able to receive the requests from the heat pump but I'm unable to resend data into the upstream broker.
Because of this I wasn't able to retrieve the parameters of my heat pump

@irsl
Copy link

irsl commented Jun 20, 2024

...a different endpoint (connect.iot.remotethermo.com). I was able to receive the requests from the heat pump ...

Just to avoid misunderstandings: you mean you got some MQTT traffic? If so, would you mind sharing the logs?

@domenicoblanco
Copy link
Contributor

domenicoblanco commented Jun 20, 2024

When I tried I was able to obtain some messages in the logs like

OnPublish on the local broker by inline: $EDC/ari/mqtt-explorer-76439da9/ar1/GET/Menu/Par, CJOp1Oa63KztF8K4AhAKAlAxEAVCCFRfMTguMC4wwrgCEAoCUDIQBUIIVF8xOC4wLjHCuAIQCgJQMxAFQghUXzE4LjAuMsK4AhAKAlA0EAVCCFRfMTguMC4zwrgCEAoCUDUQBUIIVF8xOC4wLjXCuAIQCgJQNhAFQghUXzE4LjEuMMK4AhAKAlA3EAVCCFRfMTguMS4zwrxOC4zLjDCuAIQCgJQORAFQghUXzE4LjMuMcK4AAhEKA1AxMRAFQghUXzE4LjMuM8K4AhEKA1AxMhAFQghUXzE4LjMuNcK4AhEKA1AxMxAFQghUXzE4LjMuNsK4Ah8KE3JlcXVlc3Rlci5jbGllbnQuaWQQBUIGaW5saW5lwrgCFgoKcmVxdWVzdC5pZBAFQgZwYXJhbXM=
2024/06/20 13:28:18 timestamp:1718882898722231443 params:{key:"P1" something1:5 value_s:"T_18.0.0"} params:{key:"P2" something1:5 value_s:"T_18.0.1"} params:{key:"P3" something1:5 value_s:"T_18.0.2"} params:{key:"P4" something1:5 value_s:"T_18.0.3"} params:{key:"P5" something1:5 value_s:"T_18.0.5"} params:{key:"P6" something1:5 value_s:"T_18.1.0"} params:{key:"P7" something1:5 value_s:"T_18.1.3"} params:{key:"P8" something1:5 value_s:"T_18.3.0"} params:{key:"P9" something1:5 value_s:"T_18.3.1"} params:{key:"P10" something1:5 value_s:"T_18.3.2"} params:{key:"P11" something1:5 value_s:"T_18.3.3"} params:{key:"P12" something1:5 value_s:"T_18.3.5"} params:{key:"P13" something1:5 value_s:"T_18.3.6"} params:{key:"requester.client.id" something1:5 value_s:"inline"} params:{key:"request.id" something1:5 value_s:"params"}

Now I'm noticing that the topic is the one from MQTT Explorer, so either my device isn't using the MQTT broker or is connecting in another way to the official API

Edit:
Of course I had to tweak a bit the code in order to not contact the official broker and prevent the use in any case of the client data stored in ClientsMap

@Patbonamy
Copy link
Author

Nobody can make a guide for the broker for noobs? Please help us.

In a few steps:

  • Clone the repository or download it
  • Open a terminal and change the folder inside the broker-ari folder
  • Install Go, minimum version 1.21
  • Run inside your terminal these two commands go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.28 and go install -v github.com/go-delve/delve/cmd/dlv@latest
  • Run CGO_ENABLED=0 go build -v -o broker-ari
  • Create the SSL certs with openssl (make sure to have it installed)
openssl req -nodes -x509 -sha256 -newkey rsa:2048 \
  -keyout  broker-ari.everyware-cloud.com.key \
  -out  broker-ari.everyware-cloud.com.crt \
  -days 356 \
  -subj "/C=NL/ST=Zuid Holland/L=Rotterdam/O=ACME Corp/OU=IT Dept/CN=broker-ari.everyware-cloud.com"  \
  -addext "subjectAltName = DNS:broker-ari.everyware-cloud.com" 

You should also reset your appliance and set a static address instead of DHCP, making sure to set the DNS to the machine's IP in which is running broker-ari

I want to install it in a docker container the command wont work: -bash: go: command not found

@domenicoblanco
Copy link
Contributor

I want to install it in a docker container the command wont work: -bash: go: command not found
If it's Debian based try with a RUN apt install go@1.21 or RUN apt install golang@1.21

@Patbonamy
Copy link
Author

install golang@1.21

Same problem -bash: RUN: command not found

@domenicoblanco
Copy link
Contributor

RUN is only if you use in the Dockerfile, if you’re doing it inside an already running container just remove the initial RUN

@irsl
Copy link

irsl commented Jun 21, 2024

Now I'm noticing that the topic is the one from MQTT Explorer, so either my device isn't using the MQTT broker or is connecting in another way to the official API

Edit: Of course I had to tweak a bit the code in order to not contact the official broker and prevent the use in any case of the client data stored in ClientsMap

Just checked, connect.iot.remotethermo.com is listening on port 8883 (just like broker-ari.everyware-cloud.com), so with some luck the protocol won't be entirely different. The Lydos devices do verify the common name/SAN of the certificate, but don't have a trust anchor. Did you try generating a certificate with the hostname your heat pump expects?

@domenicoblanco
Copy link
Contributor

domenicoblanco commented Jun 21, 2024

I tried with

openssl req -nodes -x509 -sha256 -newkey rsa:2048 \
  -keyout  broker-ari.everyware-cloud.com.key \
  -out  broker-ari.everyware-cloud.com.crt \
  -days 356 \
  -subj "/C=NL/ST=Zuid Holland/L=Rotterdam/O=ACME Corp/OU=IT Dept/CN=connect.iot.remotethermo.com"  \
  -addext "subjectAltName = DNS:connect.iot.remotethermo.com" 

But I don't know if it's correct and how to check if the heat pump accepts it, anyway there's another problem with the upstream broker as it refuses my credentials

Edit:
I just googled and found that openssl has something to see more informations about a remote cert. I'll try to generate a new certificate, hoping to receive at least something in my local broker

Edit 2:
Maybe this one could work

openssl req -nodes -x509 -sha256 -newkey rsa:2048 \
  -keyout  broker-ari.everyware-cloud.com.key \
  -out  broker-ari.everyware-cloud.com.crt \
  -days 356 \
  -subj "/C=US/O=Amazon/CN=connect.iot.remotethermo.com"  \
  -addext "subjectAltName = DNS:connect.iot.remotethermo.com"

Edit 3:
It didn't as the heat pump was still reachable from remotenet

Edit 4:
I tried again with the following cert and I still receive listener=t1s error="read connection: remote error: tls: unknown certificate authority"

openssl genrsa -out private.key 2048 \
&& openssl req -new -key private.key -out certificate.csr -subj "/C=US/O=Amazon/CN=iot.remotethermo.com" \
&& echo -e "[req]\ndistinguished_name = req_distinguished_name\nx509_extensions = v3_ca\nprompt = no\n[req_distinguished_name]\nC = US\nO = Amazon\nCN = Amazon RSA 2048 M02\n[v3_ca]\nbasicConstraints = CA:TRUE\nsubjectKeyIdentifier = hash\nauthorityKeyIdentifier = keyid:always,issuer:always" > ca.conf \
&& openssl req -x509 -new -nodes -key private.key -days 365 -out ca.crt -config ca.conf \
&& openssl x509 -req -in certificate.csr -CA ca.crt -CAkey private.key -CAcreateserial -out certificate.crt -days 365 -extfile ca.conf -extensions v3_ca

Probably it checks the trustchain and it will not work with this method :/

@bos-mary
Copy link

I was playing with your code. Now it works perfectly fine with my velis evo2 device. 30/30/600 Except the bus errors. I don't understand how it works, but I don't really need it.

This is awesome! Have you got time/motivation to implement support for additional models as well? With the help of users of course, e.g. if they provide the T ids with example values for their model.

https://github.com/fustom/broker-ari/tree/support_lydos_hybrid

It would be awesome if you could find time to add Ariston Genus/Alteas-One to the list of supported models.

I'm using irls's pool-ari script and still dependent on official cloud....(6 guest accounts at 70 seconds polling interval )

How can I provide this T ids ?

@irsl
Copy link

irsl commented Sep 21, 2024

My Ariston Lydos Hybrid got a firmware update recently and connects to a new MQTT host with proper TLS validation. As such I lost access to any test devices and also my motivation.
Personally, I won't ever buy anything from this vendor anymore.

@ilgio
Copy link

ilgio commented Sep 27, 2024

Has anyone been able to find a local alternative to communicate?

@Patbonamy
Copy link
Author

Has anyone been able to find a local alternative to communicate?

Hi ilglio, I use an ebusd adapter https://www.elecrow.com/ebus-to-wifi-adapter-module-v5-2.html?qty=1 with Ebusd Addon in home assistant it's working after hours of configuration. Look here https://github.com/komw/ariston-bus-bridgenet-ebusd and here https://community.home-assistant.io/t/ariston-group-integration-via-ebusd/738887
Good luck

@ilgio
Copy link

ilgio commented Oct 2, 2024

Has anyone been able to find a local alternative to communicate?

Hi ilglio, I use an ebusd adapter https://www.elecrow.com/ebus-to-wifi-adapter-module-v5-2.html?qty=1 with Ebusd Addon in home assistant it's working after hours of configuration. Look here https://github.com/komw/ariston-bus-bridgenet-ebusd and here https://community.home-assistant.io/t/ariston-group-integration-via-ebusd/738887 Good luck

I bought https://www.elecrow.com/ebus-to-wifi-adapter-module-v5-2.html?qty=1

I'm waiting for it to arrive, then how do you configure it? Is it difficult to get the boiler sensors?

@Patbonamy
Copy link
Author

Has anyone been able to find a local alternative to communicate?

Hi ilglio, I use an ebusd adapter https://www.elecrow.com/ebus-to-wifi-adapter-module-v5-2.html?qty=1 with Ebusd Addon in home assistant it's working after hours of configuration. Look here https://github.com/komw/ariston-bus-bridgenet-ebusd and here https://community.home-assistant.io/t/ariston-group-integration-via-ebusd/738887 Good luck

I bought https://www.elecrow.com/ebus-to-wifi-adapter-module-v5-2.html?qty=1

I'm waiting for it to arrive, then how do you configure it? Is it difficult to get the boiler sensors?

Install the integration and folow the instructions here. If you have problem I can try to help you. you also need the mqtt integration for home assistant https://www.home-assistant.io/integrations/mqtt

@ilgio
Copy link

ilgio commented Oct 2, 2024

Has anyone been able to find a local alternative to communicate?

Hi ilglio, I use an ebusd adapter https://www.elecrow.com/ebus-to-wifi-adapter-module-v5-2.html?qty=1 with Ebusd Addon in home assistant it's working after hours of configuration. Look here https://github.com/komw/ariston-bus-bridgenet-ebusd and here https://community.home-assistant.io/t/ariston-group-integration-via-ebusd/738887 Good luck

I bought https://www.elecrow.com/ebus-to-wifi-adapter-module-v5-2.html?qty=1
I'm waiting for it to arrive, then how do you configure it? Is it difficult to get the boiler sensors?

Install the integration and folow the instructions here. If you have problem I can try to help you. you also need the mqtt integration for home assistant https://www.home-assistant.io/integrations/mqtt

MQTT is already installed and I have been using it for years
Screenshot 2024-10-02 alle 19 07 12

what other integration should I install instead?

@Patbonamy
Copy link
Author

what other integration should I install instead?

You need this addon : https://github.com/LukasGrebe/ha-addons

@kamilszewczyk
Copy link

@hipco @irsl - can I bother you with few questions regarding the custom broker?
First - When broker is installed, do I still need the remotethermo integration in home assistant, or does everything comes through home assistant mqtt integration?

And few config questions:

  • api_listener - what this listener is for? Is it home assistant instance, home assistant mqtt broker config or something else
  • Is DNS listener config required if I have a local DNS server, so that I can resolve the broker-ari.everyware-cloud.com domain to any ip in my network?
  • Broker tls listener - I assume this is the main listener that receives messages from the device and it should always only point to the machine where broker is running?

Thanks a lot for your work!

@bos-mary
Copy link

bos-mary commented Oct 3, 2024

@irsl

My Ariston Genus One+ Wifi boiler (maybe applies also to Ariston Alteas and Ariston Clas) :

./broker-ari --mqtt-broker-certificate-path ./connect.iot.remotethermo.com.crt --mqtt-broker-private-key-path ./connect.iot.remotethermo.com.key -api-username someusername --api-password somepassword
time=2024-10-02T18:34:59.376+03:00 level=INFO msg="added hook" hook=auth-ledger
time=2024-10-02T18:34:59.377+03:00 level=INFO msg="loaded auth rules" hook=auth-ledger authentication=0 acl=0
time=2024-10-02T18:34:59.377+03:00 level=INFO msg="added hook" hook=base
time=2024-10-02T18:34:59.379+03:00 level=INFO msg="attached listener" id=t1s protocol=tcp address=172.16.44.12:8883
time=2024-10-02T18:34:59.380+03:00 level=INFO msg="mochi mqtt starting" version=2.6.4
time=2024-10-02T18:34:59.382+03:00 level=INFO msg="mochi mqtt server started"

time=2024-10-02T18:35:04.462+03:00 level=WARN msg="" listener=t1s error="read connection: remote error: tls: unknown certificate authority"
time=2024-10-02T18:35:15.745+03:00 level=WARN msg="" listener=t1s error="read connection: remote error: tls: unknown certificate authority"

this means that I can't use broker-ari because of my self-signed certificate ?
(official broker is connect.iot.remotethermo.com)

@irsl
Copy link

irsl commented Oct 3, 2024

@bos-mary : if your appliance connects to a hostname other than broker-ari.everyware-cloud.com, then the TLS trust is verified properly and the broker-ari project won't work.

@kamilszewczyk:
First: yes and no. The mqtt server is hosting raw data. Theoretically you could retrieve that directly and make a bit of post processing (e.g. temperature values are to be divided by 10). Effectively this is what the api emulation layer does (which needs the remotethermo integration).

Api_listener: this is where the rest api compatible with the vendor's will be listening. When you configure the remotethermo integration, you need to specify the url accordingly. (E.g. http://127.0.0.1:11111/)

The embedded DNS server is optional. If you can setup the hijack onnyour network via alternative means (e.g. a DNAT or a different default gw on the appliance), that's fine.

Broker tls listener: this is where the mqtt server will be listening - the device's mqtt client should establish the connection to this service

@kamilszewczyk
Copy link

kamilszewczyk commented Oct 16, 2024

@irsl - Thank you very much for the explanation. I hope I have one last question.
If I understood custom broker is also trying to connect to the remote one broker-ari.everyware-cloud.com, passing over all the commands/data between so that the official app continues to work.
If the above is correct, I assumed, that in both HA Ariston integration, and custom broke api username and password I should put username and password I'm using to log in to the official app.
However, when I do this and check the custom broker logs I'm seeing only error "Unable to connect to the upstream mqtt broker: not Authorized".

Am I missing something, or is it a problem with Ariston being difficult?

@fredericuslaurentii
Copy link

I've got two Ariston household appliances and the same problem as anyone here.
I tried to set ari-broker with no luck. Will the broker be implemented by default in Ariston add-on by any luck in the future?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests