BSB-Lan integration

Hi @GSzabados ,
I tried to follow your 02/2022 code to get a drinking water push realized.

Unfortunately I get an error saying as well, that

command_topic: "BSB-LAN"

is not valid.

Do I have to place the definitions in the same section in the configuration.yaml, where I have the mqtt logging data placed?

Here is my 1st approach:

mqtt:
  sensor:
    - name: "BSB-LAN TWW Push"
 #    unique_id: bsb_lan_dhw
      state_topic: "BSB-LAN/10019.00"
      command_topic: "BSB-LAN"
      payload_on: "S10019=1"
      payload_off: "S10019=0"
      state_on: "1 - On"
      state_off: "0 - Off"
      optimistic: false
      qos: 0
      retain: true
    - name: "Heizung-Aussentemperatur"
      state_topic: "BSB-LAN/8700.00"
      unit_of_measurement: °C
      device_class: temperature

Maybe someone can help with the payload send solution?

regards
Joerg

Yes i read it. I am even not able to find the config file. too bad!

Have you configured the topic on the BSB-LAN device?

It should be under the Settings menu of the BSB-LAN device? Down at the MQTT part, set Usage as Plain text and Topic Prefix as BSB-LAN, and of course your MQTT broker settings as IP username, password, all what is required. And below that at the Logging Parameters add what you want to report to HA. 10019 and 7900 what you are defining the MQTT sensors for.

And what version of BSB-LAN are you using? I don’t know how was the .0 resolved recently but the .00 looks weird.

By the way, is it really the DHW push? On mine it is 1603. You set it to on and it does a push, but the status goes back to off immediately.

I am operating 3.0.4 with OTA Update today.
But I ran the 3.0.0 before since mid November 2022 and optimized my
Brötje BBK22F the last 6 weeks. Worked as absolutely fine.
So config was fine until I started the update today.
Unfortunately I did not write down the final MQTT setup.
Starting again with mqtt troubleshooting.

So far I couldn’t check if it works.
But the 1603 was not documented by Brötje for the BBK 22 F and so it is with the new versions in an separate section of user defined variables.

But the status going back to off is fine for me as long as the controller realizes the status change and acts accordingly.

Will check as soon as it runs here .

Hi Tiger42,

I have read your instructions on setting parameters. It works fine with input_numbers thanks to
your instructions :slight_smile:
Now that everything is running quite well I want to try out to hand over a room temperature that I receive from as sensor.xxxx. in HA. It works by hand setting the value though URL http://bsb-lan.local/I10000=20 but as a complete newbie I have no clue how the syntax is done correctly for the automation. How do I set the parameter Type ? and do I have to convert the temperature value somehow upfront?

Have you tried out the closed loop control with a room temperature yourself by now? In the parameters of my Elco Thision heating system I see that the Kennlinie Adaption #726 can be set to on which should adjust the heating characteristics (in german: '’ Heizkennlinie Steilheit’ and ‘Kennlinie-Verschiebung’) automatically. If- a roomsensor is working


Just to give you an idea. In this case the temperature comes from a Wiser thermostat.

This is the rest command:

rest_command:
  bsb_lan_room_temperature_set_hc1:
    url: http://bsb-lan.local/I10000={{ state_attr('climate.wiser_kitchen', 'current_temperature') }}
    #method: POST
    #username: !secret bsb_lan_user
    #password: !secret bsb_lan_pass

This is the automation to send the value every 2 minutes:


alias: Room Temperature to BSB-LAN
description: ""
trigger:
  - platform: time_pattern
    minutes: /2
condition: []
action:
  - service: rest_command.bsb_lan_room_temperature_set_hc1
    data: {}
mode: single

Right, it worked with 3.0.0 that way, but with 3.0.4 it has to be

mqtt:
  sensor:
    - name: "Heizung-Aussentemperatur"
      state_topic: "BSB-LAN/8700"
      unit_of_measurement: °C
      device_class: temperature
    - name: "Heizung-Betriebsart"
      state_topic: "BSB-LAN/700"
      unit_of_measurement: °C
      device_class: temperature

Just figured it out with the MQTT Explorer.

1 Like

Ok, that’s what I meant.

Hi @GSzabados , can give some more hints please?
If I place the code

mqtt:
  sensor:
    - name: "BSB-LAN TWW Push"
      unique_id: bsb_lan_dhw
      state_topic: "BSB-LAN/10019"
      command_topic: "BSB-LAN"
      payload_on: "S10019=1"
      payload_off: "S10019=0"
      state_on: "1 - On"
      state_off: "0 - Off"
      optimistic: false
      qos: 0
      retain: true

in the configuration.yaml how will that provide a possibility to transmit a push?

Last time I was receiving errors, I think, because the mqtt options might have changed. The configuration.yaml check is showing an error that i.e. payload_on and command_topic is not valid.
Is the above code block still identical with your config?

If I want to initiate the Push via automation , what would be the action I have to perform?

Would appreciate your help.

It is not a sensor, it is a switch!

But to be honest, as it reverts to off automatically in my heater, and it is not 10019, but 1603 as I wrote, I would use for it a button and not a switch. It really matches then the push functionality.

Hello, is there german forum how to use BSB-lan on Brötje heaters
Thanks

Better to ask Frederik on the BSB-LAN Github page, but I think there must be some on the FHEM forum.

Hello
https://github.com/fredlcore/BSB-LAN/issues/442#issuecomment-1362751154

Maybe here is something missing before name Boiler? This is not a switch, it is not a button. Or this is at the moment not possible?
Thanks

name: Boiler changeover temperature
unique_id: dac63f1c-37dd-4837-a93b-0234c600dc14
state_topic: “bsblan/730”
command_topic: “bsblan”
availability_topic: “bsblan/status”

Could you please add some context to what you are trying to achieve? I do not understand what is your actual questions about.

Moin, the first switch is working “Trinkwasserfreigabe” the second “Parallelverschiebung” is not working. Both i have found one github. I put both directly in the config.yaml under Mqtt–> switch. Thanks

[FEATURE REQUEST] Forward all value updates to MQTT · Issue #442 · fredlcore/BSB-LAN · GitHub

the error

Invalid config for [mqtt]: [min] is an invalid option for [mqtt]. Check: mqtt->mqtt->switch->1->min.

switch:

- name: "Trinkwasserfreigabe"
  unique_id: 30d66077-1ea6-4c9a-a1a3-6871d1133525
  state_topic: "BSB-LAN/1600"
  state_on: "1 - On"
  state_off: "0 - Off"
  command_topic: "BSB-LAN"
  payload_on: "S1620=1"
  payload_off: "S1620=0"
  availability_topic: "BSB-LAN/status"
  icon: mdi:water-boiler
  
- name: "Parallelverschiebung Heizkreis 2 Vorgabe"
  unique_id: dac63f1c-37dd-4837-a93b-0234c600dc14
  state_topic: "BSB-LAN/1021"
  command_topic: "BSB-LAN"
  availability_topic: "BSB-LAN/status"
  min: 10.0
  max: 22.0
  step: 0.5
  mode: slider
  unit_of_measurement: °C
  device_class: temperature
  command_template: "S1021={{value}}"
  value_template: "{{value | float}}"
  icon: mdi:sun-snowflake-variant

You are right, that is not a switch. I believe that should be number:

But why do you want to change the 1021 Heating circuit 2 - Heating curve parallel displacement value? This should be a configured value for your heating system and you shouldn’t change it for temperature control for the house.

If you want temperature control, then you should use the 1010 Heating circuit 2 - Room temperature Comfort setpoint

the same with number instead of switch

Invalid config for [mqtt]: [min] is an invalid option for [mqtt]. Check: mqtt->mqtt->number->0->availability->0->min. (See /config/configuration.yaml, line 37

the was a copie and paste mistake, thanks
If you want temperature control, then you should use the 1010 Heating circuit 2 - Room temperature Comfort setpoint

Hello,
why Tiger42 puts here fĂŒr the attribute_templates the ID 8000 and for the value_template he uses the ID 700? For what you could use the attribute templates?
thanks

Handbuch zur BSB-LAN Hard- & Software | Handbuch zur BSB-LAN Hard- & Software (1coderookie.github.io)

sensor:
  - platform: template
    sensors:
      bsb_lan_betriebsart:
        unique_id: bsb_lan_betriebsart
        friendly_name: BSB-LAN Betriebsart
        value_template: "{% if states('sensor.bsb_lan_status') is defined and states('sensor.bsb_lan_status') != 'unavailable' %}{{ state_attr('sensor.bsb_lan_status', '700')['value'] }}{% else %}{{ states('sensor.bsb_lan_betriebsart') }}{% endif %}"
        attribute_templates:
          desc: "{% if states('sensor.bsb_lan_status') is defined and states('sensor.bsb_lan_status') != 'unavailable' %}{{ state_attr('sensor.bsb_lan_status', '8000')['desc'] }}{% else %}{{ state_attr('sensor.bsb_lan_betriebsart', 'desc') }}{% endif %}"
      bsb_lan_tww_nennsollwert:
        unique_id: bsb_lan_tww_nennsollwert
        friendly_name: BSB-LAN TWW Nennsollwert
        value_template: "{% if states('sensor.bsb_lan_status') is defined and states('sensor.bsb_lan_status') != 'unavailable' %}{{ state_attr('sensor.bsb_lan_status', '1610')['value'] }}{% else %}{{ states('sensor.bsb_lan_tww_nennsollwert') }}{% endif %}"
        unit_of_measurement: °C
        device_class: temperature