Broadlink AC Integration (AC Freedom) (AUX, Dunham, Rcool, Akai, Rinnai, Kenwood, Tornado, Ballu)

Arbuzov, greate job! i spend 3 hours, befour i scroll to Your’s addon - everything working perfect :wink:
and i confirm that this addon working and we still have access to device in ac freedom, if anyone need

Are you running Docker version or natively in linux? I had the same issue in Docker and I never figured it out. I’m running it directly in linux (Ubuntu on Windows WSL to be precise). It does have it’s own hickups, but generally it works.

Finally I succeeded, for information my problem was that the vesion of ac freedom is the last one, to succeed in integrating the air conditioners, it is necessary to remove the air conditioner to redo the integration, but it is not necessary to go to the end of the procedure, it is necessary to stop just after saving the name, and immediately delete the application, and miraculously it appears in HA.

I get the same error as you:

Starting Monitor...
Authentication Failed to AC
__init__() should return None, not 'bool'
Stopping

Have you solved it?

your problem is not on the side of home assistant, but on the side of the application on AC Freedom, you must delete the air conditioner, then repair it, you remove the pairing as soon as it tells you that the air conditioner is connected to wifi, and you give up the procedure, and you will discover your air conditioner in home assistant.

I can confirm this too … If you just get the WiFi config to your AC unit, before it’s completely set-up in the app (and before it’s connected to the cloud I guess), this integration works much better - there are still some occasional something went wrong, no devices found for me, but it works 90% of the time while starting monitor.

Hi!
Not working since the last OS update. Everything seems fine, but there is no connection to the devices.
Has anyone else experienced this?

Home Assistant 2022.10.5
Supervisor 2022.10.0
Operating System 9.3

Yes, the solution was:

  1. Delete the AC from the AC Freedom app
  2. Follow the steps to add the AC again.
  3. Wait for the wifi to connect and stop the steps in the App.

At this point the connection started working in Home Assistant.

1 Like

It didn’t help anyway. In the ac2mqtt log:
Starting Monitor…
(200, (‘192.168.0.164’, 80))
Stopping
Starting Monitor…
(200, (‘192.168.0.164’, 80))
Stopping

In the Mosquitto log:
2022-11-09 20:33:11: New client connected from 172.30.32.1:57408 as ac_to_mqtt (p2, c1, k60, u’mqtt’).
2022-11-09 20:33:12: The ac_to_mqtt client is disabled.
2022-11-09 20:33:13: New connection from 172.30.32.1:57412 to port 1883.
2022-11-09 20:33:13: New client connected from 172.30.32.1:57412 as ac_to_mqtt (p2, c1, k60, u’mqtt’).
2022-11-09 20:33:14: The ac_to_mqtt client is disabled

Topic in mqtt:
image

1 Like

Thank you all! Working perfectly with Rcool Prime 2

Actually I can even control something that I cannot do with AC freedom: Set the swing to top/middle/bottom.
With the official app, I can only disable or enable the auto swing.

I have the same problem, if you find a solution, please post.
I studied the git code - as I understand it, the problem is not in the mqtt -

Start Monitor…
(200, (‘192.168.1.100’, 80))
Stopping

file - ac_db.py - line 1262, script can not connect to device

Tell me where you found the log file ac_db.py ?

Dear all,

thank you for sharing your issues in this thread.

I own an ARGO air conditioner that works quite fine with AC Freedom APP 2.3.2 for IOS.

Unfortunately it seems there is no way to integrate it with HA. Maybe I’m doing something wrong but the ac_broadlink_mqtt integration doesn’t discover my devices which are available in the same broadcast network.

I did some troubleshooting checks with the developer of the integration… your can find outcomes here: ERROR [monitor.py:382] (200, ('192.168.25.96', 80)) · Issue #101 · liaan/broadlink_ac_mqtt · GitHub

but it seems that the devices are locked to talk only with a remote endpoint.

I don’t know if this is due to the new AC Freedom app, but I think that I should be able at least to discover devices on my network, and this does not happen.

Devices report the following label: bl3353-p, so it seems they are related to something like this: https://fccid.io/2ATEV-BL3353-P

Does anyone know another way to integrate them with HA?

if not, possible workaround are:

  1. buy Wifi Broadlink IR Universal controller. I can’t figure out watching tutorials and reported experiences if they work just fine. The main question is: are they developed to be integrated with HA? I would avoid to buy devices which are integrated with HA by means of some trick that could not work in the future after a firmware upgrade (see the experience with AC Freedom). The best would be to buy MQTT compatible devices. Any suggestion about that?

  2. find a replacement for the wifi board installed on the air conditioner… I don’t know if ARGO customer service can help in that way… but I guess they will do the dumbs regarding possible integration with HA.

  3. waiting that some geek pull out from the cylinder an out of the box working solution. I have no hurry at the moment.

Thank you for your replies.

I’m having the same issue that the add-on is just repeating:

Start Monitor…
(200, (‘192.168.1.100’, 80))
Stopping

endlessly
in addition when I try to install manually as the OP I’m not able to install pycrypto - apparently since its legacy it won’t install. Any ideas?

so just an update - nothing was working for me with this repo because I couldn’t install pycrypto
I’m running hassio as a vm under promox.
there are issues with python 3.10 -
how I fixed:
a. installed python3-dev (apk add python3-dev)
b. installed build stuff (apk add build-base)
c. installed pyrcrypto’s replacement (pip3 install pycryptodome)

still had issues with “parser” which is removed from python 3.10
so what I did is I removed the line “import parser” in ac_db.py (hopefully that’s not needed somewhere)
after that it worked PERFECTLY!!
one other issue, would be great to use the hass add-on built by @Arbuzov but its not working, maybe something in what I wrote above would help.

I setup service in my MAC (not in HA) - and call it python monitor.py -T

log

Traceback (most recent call last):
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/broadlink_ac_mqtt/classes/broadlink/ac_db.py", line 1255, in send_packet
    response = self.cs.recvfrom(1024)
socket.timeout: timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/monitor.py", line 392, in <module>
    start()
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/monitor.py", line 334, in start
    AC.test(config)
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/broadlink_ac_mqtt/AcToMqtt.py", line 40, in test
    device_bla = broadlink.gendevice(devtype=0xFFFFFFF, host=(device['ip'],device['port']),mac = bytearray.fromhex(device['mac']), name=device['name'])		
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/broadlink_ac_mqtt/classes/broadlink/ac_db.py", line 21, in gendevice
    return ac_db_debug(host=host, mac=mac,name=name, cloud=cloud,devtype= devtype,update_interval = 0)
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/broadlink_ac_mqtt/classes/broadlink/ac_db.py", line 985, in __init__
    if self.auth() == False:
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/broadlink_ac_mqtt/classes/broadlink/ac_db.py", line 1293, in auth
    response = self.send_packet(0x65, payload)    
  File "/Users/evgeniy_home/Documents/test_ac/broadlink_ac_mqtt/broadlink_ac_mqtt/classes/broadlink/ac_db.py", line 1262, in send_packet
    raise ConnectTimeout(200,self.host)
broadlink_ac_mqtt.classes.broadlink.ac_db.ConnectTimeout: (200, ('192.168.1.100', 80))

here you can see problem - raise ConnectTimeout(200,self.host)

perhaps the problem is that HA is knocking on the wrong port, below is a dump, on which port the software is knocking, and on which application through the cloud - unfortunately I can’t make out deeper yet, maybe someone will come up with an idea

02:43:05.605903 IP AC_SMT-6c-cc-24.localdomain.52269 > 255.255.255.255.2415: UDP, length 25
02:44:08.476394 IP ec2-13-52-83-1.us-west-1.compute.amazonaws.com.1885 > AC_SMT-6c-cc-24.localdomain.59156: Flags [F.], seq 365, ack 573, win 27872, length 0
02:44:08.482472 ARP, Request who-has ubnt tell AC_SMT-6c-cc-24.localdomain, length 46
02:44:08.482502 ARP, Reply ubnt is-at 24:5a:4c:70:6c:c3 (oui Unknown), length 28
02:44:08.485784 IP AC_SMT-6c-cc-24.localdomain.59156 > ec2-13-52-83-1.us-west-1.compute.amazonaws.com.1885: Flags [R.], seq 573, ack 366, win 2920, length 0
^C

Can you tell me if it is possible to do this on HassOS?

I’m a little bit familiar with python, but I don’t understand HassOS at all yet, I integrated it into the HassOS according to the manuals, it runs the same python script. there is no difference as far as I understand, you run it locally or with HassOS

Morning all

phew… not looked into my plugin use for years . did not even know there nice tutorials on how to use it :wink:

Thought give you heads up … I’m eventually moving to Homeassistant (away from openhan), and thus going to see if one can rewrite the plugin to work without mqtt/dockers/python hacks etc.

I will need some assistance on this, as I don’t have access to the new AC’s out there.

Let me know if there any people that willing to help out. I created a telegram group. Telegram: Join Group Chat for simpler discussion as i’m never on Hass forums

Cheers
L: