BSB-Lan integration

Hi Jörg,

to connect your Brötje heating, you’ll need an Arduino Mega with Ethernet Shield and a special DIY adapter called “BSB-LAN-Adapter”:

. All necessary information can be found here: https://1coderookie.github.io/BSB-LPB-LAN/. I’ve got my adapter working with a Brötje BBK 22 D. I’ve configured my heating dashboard in HA without the use of this component, just using self-defined REST sensors and switches:

Regards, Olli (from Hamburg too)

I am currently having a pull request to homeassitant to add the integration. For now it’s only a basic thermostat. More features will be added soon! So I hope it will be in the next release. Fingers crossed

Nice implementation you got there Olli.

I’t not hard to add a lot of sensors to the integration. I could try to have those in the next release.
Next release will focus on cleaning stuff up and also add security.

Documentation is finished!

Thanks to both of you - that looks very good.
:slight_smile:

Good to have local HA support now :wink:

Hello Willem-Jan,

yesterday I had the time to finalize my bsblan device and connect it to my Brötje Heating System.
Afterwards I came across this page. Many thanks for working on it.
How are your efforts going regarding the upstreaming of your integration to home assistant? Is there some help required for getting this further? I am willing help with testing and/or coding.

Best Regards

René

Hi René,

Help is always welcome. I have done a pull request and my code is now under review. I need to do some changes and I hope to do it this weekend. I don’t know in which release the integration will be released.
This is my first integration and for me this is all new.
You can track it https://github.com/home-assistant/core/pull/32375 . Feel free to make suggestions. I am not a professional coder and could some help with building test for the configflow

I am also currently working on improvements. https://github.com/liudger/python-bsblan/projects/1
These needs to be implemented into the integration yet. So help is is also welcome.

Does it work with Immergas boilers?

Hi djxlea,

For this you should contact the developer at https://github.com/fredlcore/bsb_lan
It supports a lot of heaters out of the box but it depends what for board is inside the heater. Often the developer can tell by making a picture of the inside.

If it works with your heater this integration should work and getting it in your homeassistant is quite easy.

The integration is now in review and I made a pull request for the last fixes so maybe next release??

Does it work with Immergas boilers?

It seems that it could work! manual immergas

The pull request is approved :tada:

Now we will hopefully see this integration soon. So get your Arduino ready!
Passkey is supported in the initial release. Authentication using username and password is for next release.

OK the beta is online. If you want to test set the supervisor on beta channel and you can download the latest home assistant beta with bsblan integration. Let me know if you find bugs!

regards Willem-Jan

BSB LAN v0.43

BSB-LAN integration connects to my BSB-LAN device fine (showing LMU7 connected), but no cards are showing up. Do I need to add some code to configuration-file to make this work ?

log-file is showing some errors

2020-05-22 22:23:19 ERROR (MainThread) [homeassistant.components.climate] bsblan: Error on device update!
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/helpers/entity_platform.py”, line 322, in _async_add_entity
await entity.async_device_update(warning=False)
File “/usr/src/homeassistant/homeassistant/helpers/entity.py”, line 470, in async_device_update
await self.async_update()
File “/usr/src/homeassistant/homeassistant/components/bsblan/climate.py”, line 216, in async_update
self._current_temperature = float(state.current_temperature)
ValueError: could not convert string to float: ‘—’

You don’t have a temperature it can read. So your system doesn’t have a thermostat?

For this kind of setup I have to figure out how it should handle this. But this is in the goal of the project. Just not yet now indeed.

Willem-Jan, thx for looking into this.

To clarify: our heating system has 2 circuits. The thermostat is on the second circuit (floorheating).

8770 Diagnosis consumer - Room temp 2 actual value: 22.4 °C

The radiators are connected to the first circuit. There is no room-thermostat, just on/off switch and thermostatic valves on the radiators.

8740 Diagnosis consumer - Room temp 1 actual value: — °C

Thanks for the info. I’ll make an issue for this. It’s in the development that this integration supports multiple heating systems.

If you have a separate temperature sensor in the no-room-thermostat. It’s possible to push a temperature to the heating system. This is also on the project planning. This way you can control heating system 1 better.

I’ve tried to push the current temperature using the http://ip-adress/I10000=19 as a test.

This worked fine with my heating system. Parameter 8740 was set to 19 degrees. The bsb-lan integration started working fine after that.

After some minutes the 8740 parameter was cleared/reset.

Maybe it’s possible to connect a temperature sensor to the Arduino and push this value to the heater system at regular times?

Maybe it’s possible to connect a temperature sensor to the Arduino and push this value to the heater system at regular times?

For what I know this is not possible. But the development at the board goes fast as well. My plan is to support a temperature push. This will be a bit challenging in the configflow. This is for a later release.
You could use home assistant maybe to push a temperature. You can ask tiger42 how he hass setup his setup

At the moment I am working on to support most parameters for heating circuit1 and circuit2 if the parameters are not present for the user system it will skip them. This will also work for the temperature that is not present in your setup.
This way your thermostat in homeassistant will use for example the max and min temp of your heating system and the switching temp when it needs to start cooling etc. And there are a lot more paramerters. It will also read the heater current action.

But it’s a lot of rewrite to get it nice and efficient.

That’s true, I think. Unless you extend the BSB-LAN software with custom code.

But in fact it’s quite simple to push values to the BSB-LAN adapter with Home Assistant using a REST command:

configuration.yaml:

rest_command:
  bsb_lan_set_parameter:
    url: http://192.168.0.95/JS
    method: POST
    username: !secret bsb_lan_user
    password: !secret bsb_lan_pass
    # Parameter "type": 1 = SET (default), 0 = INF
    payload: '{"Parameter": "{{ parameter }}", "Value": "{{ value }}", "Type": "{% if type is defined %}{{ type }}{% else %}1{% endif %}"}'
    content_type: "application/json; charset=utf-8"

The REST command can be used in scripts or automations like this (the “action” part is the relevant part):

automations.yaml:

- id: bsb_lan_set_komfortsollwert
  alias: BSB-LAN Komfortsollwert setzen
  description: ''
  trigger:
    - platform: state
      entity_id: input_number.bsb_lan_komfortsollwert
  condition: []
  action:
    - data_template:
        parameter: 710
        value: "{{ states('input_number.bsb_lan_komfortsollwert') }}"
      service: rest_command.bsb_lan_set_parameter

You should be able to adapt these examples and write a script that regularly pushes any value (like the room temperature to parameter 10000). I haven’t done that yet as I’m not sure if a room sensor really makes the heating system more efficient. I’m waiting for next winter to continue with my experiments :wink:

Hi all,

The development is a bit slow by other priorities. I’ve made some progress in the python lib for connecting with bsblan board. It now scans what is available for the thermostat function on your heater. So if your heater support cooling than that should be available in next release.

The only thing is that you need bsblan firmware 1.0 and this is not tested on the old Arduino Mega. So you need the Arduino Due.
So the next release will be breaking if you didn’t update to the latest firmware.

Firmware 1.0 works with current setup so you are free to update now the firmware on your board. Or update your board to the Arduino Due. Check your config file because bus number changed. It’s save to start from scratch and input the values you need.

regards Willem-Jan

Hi there!
I have installed this weekend a bsb-lan board on my heating pump (Atlantic Alfea extensa duo+)
Just after i setup the bsb-lan integration. Bsb-lan integration shows " RVS21.831F/127" but no devices and no entites are discover. I didn’t find logs too.
Maybe you can help me to use your integration?

thanks!