Loxone and Home Assistant

So I ran across this today and it appeared that at some point it was working with Home Assistant and was a component in it. I am wondering if it can be fixed? We do a lot of home automation with Loxone but if we could get this working I think having a nicer UI would be amazing!!!

1 Like

It works great for me. I had some problems but the newest version should work.
If you still have problems you can contact me.

I’ve just reinstalled this and works very will with Lovelace. Just trying now to work out the switches as their not toggling.

If you use the newest version 0.88.2 or newer please update to the newest version which I released
a view minutes ago. Home Assistant updated the structure of the custom components. Maybe this
causes the problems.

If you still has problems provide some debug messages from the component.

Thank you Jojo, I am running 0.88.2, When I installed your programme I just copied the contents of your custom_components folder into mine. How would I go about upgrading? do I just delete all your files and folders it created and reinstall the new files and folder into the custom_components folder as before?

Yes YouTube can delete everything and copy the new files to your config folder.

You can copy … Not YouTube :wink:

1 Like

Thanks again, Im still having problems with turning a light on and off.

The entitiy_id is ‘switch.candles’ which it created through your code.

If I go to states in dev-tools I can enter ‘switch.candle’ in the entity and ‘on’ or ‘off’ in the state and the candles will turn on or off

If I set a ‘Entity button’ card in lovelace the light will toggle on then off when selected and not stay on.

Any idea on how to resolve this please.

Sorted it, the candles were being controlled in loxone via a virtual input switch, changed to a toggle switch and all’s well

The component has worked good for me, but suddenly it stopped working without me upgrading neither the component nor home assistant. I get the following error:

Unable to install package pycryptodome==3.6.6: Failed building wheel for pycryptodome python-jose-cryptodome 1.3.2 has requirement pycryptodome<3.4.0,>=3.3.1, but you’ll have pycryptodome 3.8.0 which is incompatible. pyrebase4 4.3.0 has requirement oauth2client==4.1.2, but you’ll have oauth2client 4.0.0 which is incompatible. broadlink 0.9 has requirement pycryptodome==3.4.11, but you’ll have pycryptodome 3.8.0 which is incompatible.

I run hass.io on a ubuntu server. Is there something i can do to fix this? Maybe on the server?

Should be fixed in the newest release. They changed some requirements in hassio.

1 Like

Superb, tested it now, seems to work. Thanks a lot for the quick fix and mention, greatly appreciated. Weirdly enough for me it seemed to just top working sometime yesterday even without me updating hass.io

Hi.
I try to run this “bridge” from Loxone to HA, but it doesnt work for me.
Do you know, where is the problem?

In Log file (HA), I have this:

2019-12-18 07:36:41 ERROR (MainThread) [homeassistant.setup] Error during setup of component loxone
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 157, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 84, in create_connection
    raise err
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 74, in create_connection
    sock.connect(sa)
TimeoutError: [Errno 110] Operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 672, in urlopen
    chunked=chunked,
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 387, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/lib/python3.7/http/client.py", line 1244, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/local/lib/python3.7/http/client.py", line 1290, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.7/http/client.py", line 1239, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.7/http/client.py", line 1026, in _send_output
    self.send(msg)
  File "/usr/local/lib/python3.7/http/client.py", line 966, in send
    self.connect()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 184, in connect
    conn = self._new_conn()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 169, in _new_conn
    self, "Failed to establish a new connection: %s" % e
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0xb23bd3d0>: Failed to establish a new connection: [Errno 110] Operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 720, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/retry.py", line 436, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='192.168.1.77', port=8080): Max retries exceeded with url: /data/LoxAPP3.json (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0xb23bd3d0>: Failed to establish a new connection: [Errno 110] Operation timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 172, in _async_setup_component
    hass, processed_config
  File "/config/custom_components/loxone/__init__.py", line 186, in async_setup
    request_code = lox_config.getJson()
  File "/config/custom_components/loxone/__init__.py", line 112, in getJson
    verify=False)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 75, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 60, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 646, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='192.168.1.77', port=8080): Max retries exceeded with url: /data/LoxAPP3.json (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0xb23bd3d0>: Failed to establish a new connection: [Errno 110] Operation timed out'))

Hey,

Have you checked the IP and the port? Do you use the port 8080 for the loxone? Is the IP 192.168.1.77 right.

Can you post the loxone part of your config?

I hope yes.
In configuration.yaml I added:

loxone:
  port: !secret loxone_port
  host: !secret loxone_host
  username: admin
  password: !secret loxone_password
  generate_scenes: false # default is true

IP of my Loxone server is OK (192.168.1.xx) and port is 8080.
Folder loxone I save to folder custom_components.

Really dont know, where should I make a mistake…

Is it necessary to setup something on Loxone miniserver?

No normally not.

What you can try is to manually get the Loxone App Config by got to
this page with your browser:

http://192.168.1.xx:8080/data/LoxAPP3.json

Replace the “xx” with your ip of the Miniserver. You will ask for your password and username.
When everything is ok you will see all your devices and a lot of information.
Did you get this information or do you get an error?

Do you have the newest Miniserver Firmware?

Finally I find out, that the problem is in Loxone port. Because i use port 80. So if I change port number in configuration.yaml it start to work.
But now, whe I use http://192.168.1.xx:80/data/LoxAPP3.json, theres a lot of data. For example form my underflloor temperature sensor it show this:
{"name":"Teplota 108 Ložnice podlaha","type":"InfoOnlyAnalog","uuidAction":"1077fd14-0227-96ec-ffff00bdc36df1d0","room":"0dfa57e9-036d-03c2-ffff00bdc36df1d0","cat":"0dfa57e9-035d-032c-ffff00bdc36df1d0","defaultRating":0,"isFavorite":false,"isSecured":false,"defaultIcon":null,"details":{"format":"%.1f°C"},"states":{"value":"1077fd14-0227-96ec-ffff00bdc36df1d0","error":"1077fd14-0227-96eb-ffffea77334102f3"},"statistic":{"frequency":5,"outputs":[{"id":0,"name":"Teplota 108 Ložnice podlaha","format":"%.1f°C","uuid":"1077fd14-0227-96ea-ffffea77334102f3","visuType":0}]}},"1077e35f-02d4-2921-ffff00bdc36df1d0":{"name":"Teplota Ložnice","type":"InfoOnlyAnalog","uuidAction":"1077e35f-02d4-2921-ffff00bdc36df1d0","room":"0dfa57e9-036d-03c2-ffff00bdc36df1d0","cat":"0dfa57e9-035d-032c-ffff00bdc36df1d0","defaultRating":0,"isFavorite":false,"isSecured":false,"defaultIcon":null,"details":{"format":"%.1f°C"},"states":{"value":"1077e35f-02d4-2921-ffff00bdc36df1d0","error":"1077e35f-02d4-2920-ffff629973d688d4"},"statistic":{"frequency":5,

How should I use correct value to display in HA?

You do not need the data direct. It was only to check if you can communicate with the Mini-server.
When you change the port in the configuration yaml in Home Assistant then normally you should
get all the supported entities directly into Home Assistant. You can use it as any other entities.

Have you changed the port and started again? Do you see any entities from the Loxone in your Home Assistant?

Yes. I changed port number in configuration.yaml and restart Hass.io. But there is no new entities Developers Tools -> States.
In complete Hass.io log, there is display this:

2019-12-18 07:34:25 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for loxone which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant.
2019-12-18 07:36:41 ERROR (MainThread) [homeassistant.setup] Error during setup of component loxone
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 157, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 84, in create_connection
    raise err
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/connection.py", line 74, in create_connection
    sock.connect(sa)
TimeoutError: [Errno 110] Operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 672, in urlopen
    chunked=chunked,
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 387, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/lib/python3.7/http/client.py", line 1244, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/local/lib/python3.7/http/client.py", line 1290, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.7/http/client.py", line 1239, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.7/http/client.py", line 1026, in _send_output
    self.send(msg)
  File "/usr/local/lib/python3.7/http/client.py", line 966, in send
    self.connect()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 184, in connect
    conn = self._new_conn()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 169, in _new_conn
    self, "Failed to establish a new connection: %s" % e
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0xb23bd3d0>: Failed to establish a new connection: [Errno 110] Operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 720, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/retry.py", line 436, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='192.168.1.77', port=8080): Max retries exceeded with url: /data/LoxAPP3.json (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0xb23bd3d0>: Failed to establish a new connection: [Errno 110] Operation timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 172, in _async_setup_component
    hass, processed_config
  File "/config/custom_components/loxone/__init__.py", line 186, in async_setup
    request_code = lox_config.getJson()
  File "/config/custom_components/loxone/__init__.py", line 112, in getJson
    verify=False)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 75, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/api.py", line 60, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 646, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='192.168.1.77', port=8080): Max retries exceeded with url: /data/LoxAPP3.json (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0xb23bd3d0>: Failed to establish a new connection: [Errno 110] Operation timed out'))
2019-12-19 03:26:12 WARNING (zeroconf-ServiceBrowser__googlecast._tcp.local.) [zeroconf] Exception occurred:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/zeroconf.py", line 2245, in send
    bytes_sent = s.sendto(packet, 0, (addr, port))
OSError: [Errno 22] Invalid argument

There is something wrong with the connection. Sorry but it is not a mistake from the binding. I think I can not help you with this problem.

Do you have the loxone app in use? Do you have checked the that port and IP is exactly the same or do you use dyndns service?

But what I not understand you tries again the port 8080 and in the last post you said you use port 80.

I think it is the wrong port.