BSB-Lan integration

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!

Should be there under integrations.

Let me know. I really need some time to get the integration more robust.
Which board do you have? Arduino mega or the due? It should still work with 1.0 firmware.

It’s empty:
image

I’m using Arduino due with the last version of bsb-lan.
If i can give you more logs or more info, tell me :slight_smile:

Don’t use the latest version. They are changing a lot. Use the latest release. 1.0 release is safe.
Next release of the integration will hopefully have a firmware check to see if the firmware is safe.

I think i use the v1 version:

I ve downloaded from master.

Here are the releases

Ok thanks, i’m on 1.1 patch 14, i will go with 1.0!

I switch back to 1.0 and integration is still empty, but, i have some logs now! :slight_smile:

Error fetching data: http://192.168.0.39/JQ=1610 failed with HTTPConnectionPool(host='192.168.0.39', port=80): Max retries exceeded with url: /JQ=1610 (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f20ee7e96d0>, 'Connection to 192.168.0.39 timed out. (connect timeout=10)'))
Error fetching data: http://192.168.0.39/JQ=8323 failed with HTTPConnectionPool(host='192.168.0.39', port=80): Max retries exceeded with url: /JQ=8323 (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f20ee7e9a60>, 'Connection to 192.168.0.39 timed out. (connect timeout=10)'))
Error fetching data: http://192.168.0.39/JQ=1612 failed with HTTPConnectionPool(host='192.168.0.39', port=80): Max retries exceeded with url: /JQ=1612 (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f20ee7f1400>, 'Connection to 192.168.0.39 timed out. (connect timeout=10)'))

Url are working so i don’t know why it fails. Maybe i need a bigger timeout?

If you are working on a new version (compatible with the 1.1?) i won’t bother you so much, let’s wait the update :slight_smile:

Which heating circuit are you using? What are the parameters you read out when you are in the webserver of the bsblan board?

I’m using circuit 1 but it’s off for the moment. (state is Schutzbetrieb, parameter 700)

What are the parameters you read out when you are in the webserver of the bsblan board?

I’m not sure to understand

Hi, I am VERY new to Home Assistant. I configured LAN-Bsb on fhem which works nice since years.
How can I configure HA to read more parameters? I added something like…

sensor:
  - platform: bsblan
    payload:
      - '8700'
      - '8830'
      - '8740'
      - '8006'
      - '8003'
      - '1600'

into configuration.yaml without success. I would like to log hot water temp, outside temp…

ModuleNotFoundError: No module named 'homeassistant.components.bsblan.sensor'

Could I get a hint on that?
Thanks!

got it!

sensor:
  - platform: bsb_lan

the “_” was missing!

Hi there!
It’s working now for me, i can see my climate entity, and with the last bsb-lan version!
Problem was that i wasn’t sending temperature to the 8740 parameter. Now it’s ok.

I have a new question, i ve got 2 heating system, one for the bedrooms and one for the living room.
Is it possible to have second climate entity ? (i see only one)