LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)

Begonnen von justme1968, 29 November 2014, 19:50:40

Vorheriges Thema - Nächstes Thema

freetz

Ich habe bei der MDNS-Funktionalität ein paar Bugs gefixt, die insbesondere den Due betreffen. Kann jemand, der einen Due im Einsatz hat, mal schauen, ob die MDNS-Einträge nun korrekt angezeigt werden? Danke!
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

carbonara

meinst Du "mDNS"? wo kann ich schauen und helfen?
Heizung: MHG ProCon E25, BSB-LAN: Arduino DUE , Volkszähler, Home Assistant

freetz

Ja, meine ich, es gibt ein aktuell offenes Issue auf GitHub, aber ein anderer User hat da glaube ich schon eine Lösung gefunden, die ich im Laufe des Tages einbauen werde. Dann wäre es gut, wenn Du das bei Dir mal testen könntest - danke!
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

DTh

Guten Morgen zusammen.
Bin vor kurzem auf BSB-LAN aufmerksam geworden, als ich nach einer Lösung gesucht habe, meine ältere Brötje Therme in HomeAssistant einzubinden.
Nachdem ich mich etwas eingelesen habe, wollte ich gestern versuchsweise mal einen ESP32 mit der BSB-LAN Firmware flashen.
Einstellungen habe ich, wie in der Doku angegeben, eingestellt.
Arduino IDE ist die V2.4.3

Sobald die FW zum hochladen kompiliert wird erhalte ich folgende Fehlermeldung:

C:\Users\Dirk\Desktop\BSB-LAN-master\BSB_LAN\BSB_LAN.ino:23:2: error: #error "Wrong partition scheme selected! You have to select Minimal/SPIFFS! Please, please, please(!) do read the manual at docs.bsb-lan.de - if you don't even read the quickstart instructions, you _will_ not be able to run BSB-LAN! Thank you."
 #error "Wrong partition scheme selected! You have to select Minimal/SPIFFS! Please, please, please(!) do read the manual at docs.bsb-lan.de - if you don't even read the quickstart instructions, you _will_ not be able to run BSB-LAN! Thank you."
  ^
C:\Users\Dirk\Desktop\BSB-LAN-master\BSB_LAN\BSB_LAN.ino:401:22: fatal error: LittleFS.h: No such file or directory
compilation terminated.
exit status 1

Compilation error: #error "Wrong partition scheme selected! You have to select Minimal/SPIFFS! Please, please, please(!) do read the manual at docs.bsb-lan.de - if you don't even read the quickstart instructions, you _will_ not be able to run BSB-LAN! Thank you."


Woran kann das liegen ?
Partition Sheme ist wie vorgesehen auf Minimal SPIFFS eingestellt

Danke und Grüße
Dirk



freetz

Was für einen ESP32 genau wolltest Du damit flashen? Jedes Board kommt mit anderen Board-Definitionen. Wenn Du einen der in der Anleitung genannten Microcontroller ausgewählt hast, sollte der Fehler nicht auftauchen. Andernfalls mag es zwar die Partition zur Auswahl geben, aber sie könnte intern anders definiert sein und daher zu dem Fehler führen.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

DTh

#7100
Zitat von: freetz am 17 Februar 2025, 16:36:56Was für einen ESP32 genau wolltest Du damit flashen? Jedes Board kommt mit anderen Board-Definitionen. Wenn Du einen der in der Anleitung genannten Microcontroller ausgewählt hast, sollte der Fehler nicht auftauchen. Andernfalls mag es zwar die Partition zur Auswahl geben, aber sie könnte intern anders definiert sein und daher zu dem Fehler führen.

Moin...
Sorry, gerade erst gesehen, dass Du geantwortet hast.
Hab leider keine Benachrichtigung bekommen über neue Antwort. Muss später mal schauen, ob man das irgendwo einstellen kann...

Ich habe am Sonntag versucht einen ESP32 WROOM-32 (Lieferant AZ-Delivery) zu flashen.
Ist allerdings eine Version mit 38 pins und nicht die mit 30 pins.
Das sollte aber eigentlich doch keinen Einfluss haben, oder ?
Hoffe in den nächsten Tagen trifft ein bestellter 30pin ESP-32 WROOM bei mir ein, mit dem ich es weiter testen kann.

Grüße
Dirk

DTh

Kurze Info:
Der neu bestellte ESP32 WROOM (NodeMCU, 30pin) ist bereits gestern eingetroffen.
Auch damit gibt es keine Änderung.
Die Fehlermeldung ist nach wie vor die selbe.
Lt. Meldung ist das falsche Partition-Sheme ausgewählt. :-(

Hab auch die IDE gestern dann nochmals komplett deinstalliert, alle verbleibenden Ordner, Boarddefinitionen und Libraries gelöscht. -> Ohne Erfolg

Keine Ahnung, woran es nun noch liegen könnte...


Grüße
Dirk

freetz

Du hast leider nicht auf meine Frage geantwortet, welches Board Du in der Arduino IDE ausgewählt hast. Wenn Du da etwas anderes ausgewählt hast, als in der Anleitung steht, dann hast Du natürlich ein Problem. Alternativ kannst Du die "#error" Zeile auch einfach aus dem Code löschen. Ich würde aber vermuten, dass es dann eben mit dem Flashen nicht klappt, bzw. dann evtl. ein Partitionsschema aktiv ist, bei dem man keine OTA-Updates machen kann.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

DTh

#7103
Zitat von: freetz am 19 Februar 2025, 08:38:34Du hast leider nicht auf meine Frage geantwortet, welches Board Du in der Arduino IDE ausgewählt hast. Wenn Du da etwas anderes ausgewählt hast, als in der Anleitung steht, dann hast Du natürlich ein Problem. Alternativ kannst Du die "#error" Zeile auch einfach aus dem Code löschen. Ich würde aber vermuten, dass es dann eben mit dem Flashen nicht klappt, bzw. dann evtl. ein Partitionsschema aktiv ist, bei dem man keine OTA-Updates machen kann.
Moin...
Sorry, hatte die Frage falsch interpretiert.
Habe als Board ESP32 Dev Module ausgewählt.

Kann man hier im Forum irgendwie Bilder anhängen ?
Dann könnte ich mal einen Screenshot der IDE Einstellungen posten.

Noch eine 2. Frage:
Was ist in der Fehlermeldung mit
C:\Users\Dirk\Desktop\BSB-LAN-master\BSB_LAN\BSB_LAN.ino:401:22: fatal error: LittleFS.h: No such file or directory
gemeint ?
Fehlt mir hier evt. eine Library o.ä. in der IDE ?

Grüße
Dirk

freetz

Nach einigen Monaten ist es mal wieder Zeit für ein neues Release, aktuell ist nun die Version 5.0, die in den letzten Monaten folgende Änderungen angesammelt hat:

- **ATTENTION: BREAKING CHANGE!** Streamlined topic structure for MQTT. New strucuture adds `/status` for querying a parameter, `/set` for SETting a parameter, `/inf` for sending data as INF telegram and `/poll` to force BSB-LAN to send an update of that parameter value to the broker. If you are using MQTT auto-discovery, ideally, calling `/M1` should update these changes. However, if you are using your own configurations, you'll have to make adjustments here.
- **ATTENTION: BREAKING CHANGE!** When using JSON settings for MQTT, previously all messages were written to the `BSB-LAN/json` and thus basically immediately overwritten when logging several parameters. Now this setting only determines the format (and not format and topic) of the data that is written into `/status` of each parameter. For auto-discovery, plain text remains the only valid choice.
- **ATTENTION: BREAKING CHANGE** The acknowledgement message sent by BSB-LAN to the `MQTT` topic has been removed. Instead, QoS for publishing messages has been set to level 1.
- **ATTENTION: BREAKING CHANGE:** Log configuration values have changed. However, only users that have logged to UDP are affected and will have to adjust their settings.
- **ATTENTION: BREAKING CHANGE:** Removed WiFiSPI support to use WiFi on the Arduino Due.
- **ATTENTION: BREAKING CHANGE:** Removed the need to add `#define CUSTOM_COMMANDS` in order to run code as part of `BSB_LAN_custom*.h`. Check these files for old/unused code that might inadvertently get executed when updating to the new version. If you want to enable/disable custom code quickly, add a new variable in `BSB_LAN_config.h` and include that as a condition in your code.
- **ATTENTION:** `/JK=ALL` now lists all categories of all devices in LPB systems with more than one device. Use `dev_fam` (device family), `dev_var` (device variant), `dev_id` (destination device ID) and `dev_name` (device model) elements to sort and identify which category applies to the current destination device.
- **ATTENTION** Users that have a parameter with data type `VT_CURRENT1000` in their `BSB_LAN_custom_defs.h`: Please change it to `VT_CURRENT` unless(!) you have BSB-LAN connected to an LMU64/LMU74 via an OCI420. Only in that case, keep the parameter's data type at `VT_CURRENT1000`.
- Added new URL command /QDB - this queries BSB/LPB heating systems for device-specific parameters (for safety reasons, only read-only parameters are added) and activates these until reboot. All these parameters are in category 0, generically named "Parameters". Likewise, the name of all parameters is "Parameter". You have to identify their meaning by their parameter number.
This is not a replacement for generating a proper device-specific parameter list as it only contains few parameter types which we know for certain how they work and no harm can be done (mostly read-only status temperatures). However, these can be helpful for heating technicians which want to monitor on the spot the behavior of a random heating system without the need to create a device-specific parameter list.
- Added possibility to set the room setpoint temperature with MAX! thermostats. Specific variables `max_cul_rf_addr`, `max_flags`, `max_group_id` and `max_temp_mode` are pre-defined in `BSB_LAN.ino` but can be overwritten in `BSB_LAN_config.h` if necessary.
- Added setting to only publish log parameters to MQTT. Forcing MQTT updates via /poll topic are still possible. This setting also applies to MQTT auto-discovery, i.e. only log parameters will be discovered!
- Moved MQTT username and password configuration to basic configuration view in webinterface
- Added state_class for non cumulative sensors in MQTT auto-discovery
- Updated the room unit emulation in `custom_functions` to work with version 4.x.
- Disabling parameters can now be done both with an empty value as well as by sending `---`. Sending an empty value is still possible, but is depracated and will be removed at some later time.
- BSB-LAN now scans the BSB/LPB bus during startup (and later periodically, if not connected to heating system) for other devices on the bus. This significantly reduces access times later on for systems with more than one device on the bus.
- `/JQ` now contains "payload" which contains the raw payload data which can be useful for evaluating non-standard commands.
- Workaround for intermittent crashes on PoE- or barrel-connector-powered Olimex microcontrollers
- New version from new repo of PubSubClient. Hopefully with this version, disconnects will be greatly reduced.
- Bugfix for VT_ENERGY, added new data type VT_ENERGY10 and VT_ENERGY10_N
- Numerous bugfixes, especially for the JSON API
- French and German translations of the manual added, special thanks to GitHub user @plauwers for this!
- This release has been supported by the following sponsors: Sven Rutten

Viel Spaß mit der neuen Version!
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

thetaphi

Moin,
Habe soeben meinen Olimex PoE ISO auf 5.0.2 upgedatet - rennt. Der Pinmode-Fix führt hier weder zu Verbesserung noch Verschlechterung, da ich mit Wifi und USB Adapter laufe, hat es dort auch keine negativen Auswirkungen. Den eigentlich wichtigen Fix für den Stacksmash hatte ich schon länger getestet, auch problemlos.

Wenn ich irgendwann mal viel Zeit habe bestelle ich einen neuen Olimex PoE und teste mit PoE. Vorerst geht's bei mir via Wifi und USB Adapter und das bleibt auch erstmal so.

Gratulation zur neuen Version!
Uwe

RonaldN

Zitat von: freetz am 11 Januar 2025, 18:18:05Ich hätte eine Bitte an alle BSB-LAN-User, die BSB-LAN am BSB Bus angeschlossen haben (also nicht LBP oder PPS):
In diesem GitHub Issue sammle ich die Bedeutung des Brennerstatus-Telegramms 0x05000213, das BSB-LAN auswertet, um z.B. die Brennerlaufzeit auszuwerten. Bislang sind wir davon ausgegangen, dass es nur zwei relevante Status gibt, und zwar in Byte 0 der Payload, wo dann 0x04 für "Brennerstufe 1 aktiv" und 0x10 für "Brennerstufe 2 aktiv" stand. Da es aber dabei noch mehrere Kombinationen (wie z.B. 0x44 oder 0x01) geben kann, wäre es hilfreich zu wissen, welche Faktoren noch beim Heizen eine Rolle spielen, dass ein bestimmter Wert dort übermittelt wird. Wir haben z.B. inzwischen herausgefunden, dass in Byte 1 der Wert 0x81 für den Handbetrieb und 0x83 für den Schornsteinfegermodus steht. Byte 2 und 3 scheinen immer auf 00 19 zu stehen, auch hier ist unklar, ob/was das bedeutet.

Wer Lust hat, da mal ein Auge drauf zu werfen und ggf. auf der SD-Karte "Unbekannte Bustelegramme mitloggen" aktiviert und dann nachvollziehen kann, was sich sonst zeitgleich geändert hat, dann freue ich mich über Rückmeldungen. Ein Logging per MQTT ist leider nicht möglich, da das Telegramm keine Parameternummer hat.

VG, F.

Hallo Frederik

Ich bin leider nicht in der Lage, die Bus Telegramme mitzuloggen, habe aber festgestellt, dass es bei mir den Parameter 8009 Status Brenner gibt. Den schreibe ich seit ein paar Tagen mittels MQTT jede Minute in meine Datenbank.

Bis jetzt konnte ich "nur" die folgenden Werte ermitteln. Liegt wohl am Zeitintervall  ;)

216    Standby
215    Inbetriebsetzung
18    In Betrieb
217    Heimlauf
219    Nachlüftung
214    Sicherheitszeit
213    Ausserbetriebsetzung

Parallel dazu habe ich den Gasverbrauch gelegt, den die Heizung ermittelt. Hier sieht es so aus, dass der "Status Brenner" den tatsächlichen Status widerspiegelt.

Du darfst diesen Dateianhang nicht ansehen.

Vielleicht hilft Dir das auch weiter.

Gruß
Ronald

malkaltmalheiss

Hi zusammen,

ich nutze hier aktuell BSB-LAN, Version 4.2.82-20250313230943.

Zusammen mit Home Assistant: Core 2025.4.2, Supervisor 2025.04.0, Operating System 15.1, Frontend 20250411.0

Parameter in den BSB-LAN Einstellungen die ich via MQTT in diese Richtung im 45 Sekunden Intervall senden lasse:
8700,8743,8314,8308,8830,8310,8311,8312,8323,8324,8326,710,712,714,720,721,1610,1612,8378,8379,8703,8831,8744,9009,8735,8380,8325,8329,8330,8331,8338,8339,8023,8704

Dazu hatte ich auch einmal auf den "neuen" MQTT Auto Discovery Prozess geklickt. Da bin ich mir nicht sicher ob es dann noch diese manuellen Parameter siehe oben benötigt?

Nunja, bisher hat alles soweit wunderbar funktioniert.

Aber.. Seit einiger Zeit werden manche Parameter in HA nicht mehr korrekt angezeigt bzw. sporadisch korrekt umgesetzt. Habe nichts verändert in diesem Setup - Außer HA Updates gemacht...

Ich bekomme das in den HA Logs angezeigt:

ZitatLogger: homeassistant.components.mqtt.models
Quelle: components/mqtt/models.py:366
Integration: MQTT (Dokumentation, Probleme)
Erstmals aufgetreten: 12. April 2025 um 20:21:01 (17 Vorkommnisse)
Zuletzt protokolliert: 08:05:14

Exception raised while updating state of sensor.bsb_lan_00_37_diagnose_erzeuger_8308_drehzahl_kesselpumpe, topic: 'BSB-LAN/0/37/8308/status' with payload: b'---'
Exception raised while updating state of sensor.bsb_lan_00_37_diagnose_erzeuger_8311_kesseltemperatur_sollwert, topic: 'BSB-LAN/0/37/8311/status' with payload: b'---'
Exception raised while updating state of sensor.bsb_lan_00_37_diagnose_erzeuger_8326_brennermodulation, topic: 'BSB-LAN/0/37/8326/status' with payload: b'---'
Exception raised while updating state of sensor.bsb_lan_00_38_diagnose_verbraucher_8735_heizkreispumpe_drehzahl_hk1, topic: 'BSB-LAN/0/38/8735/status' with payload: b'---'
Exception raised while updating state of sensor.bsb_lan_00_38_diagnose_verbraucher_8744_vorlauftemperatur_sollwert_resultierend_hk1, topic: 'BSB-LAN/0/38/8744/status' with payload: b'---'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 636, in state
    numerical_value = int(value)
ValueError: invalid literal for int() with base 10: '---'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 639, in state
    numerical_value = float(value)
ValueError: could not convert string to float: '---'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 366, in process_write_state_requests
    entity.async_write_ha_state()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1023, in async_write_ha_state
    self._async_write_ha_state()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1148, in _async_write_ha_state
    self.__async_calculate_state()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1085, in __async_calculate_state
    state = self._stringify_state(available)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1029, in _stringify_state
    if (state := self.state) is None:
                ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 643, in state
    raise ValueError(
    ...<5 lines>...
    ) from err
ValueError: Sensor sensor.bsb_lan_00_37_diagnose_erzeuger_8308_drehzahl_kesselpumpe has device class 'None', state class 'measurement' unit '%' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '---' (<class 'str'>)


Kann da vlt. jemand weiter helfen? Verschluckt sich HA seit neuestem hier am Typ des gelieferten Wertes?



Zweite Frage: Update zu aktueller Version 5.09 via http://bsb-lan.local:8080/ ist safe? Muss ich etwas beachten oder einfach loslegen? :)


Dank und Grüße
:)

freetz

@RonaldN: Sorry, da hatte ich keine Benachrichtigung bekommen :(. Leider ist 8009 etwas anderes als das o.g. Telegramm, von daher hilft das leider nicht wirklich weiter...

@malkaltmalheiss: Das ist ein Problem von HA, weil das nicht mit dem Wert "---" bei numerischen Parametern umgehen kann. "---" bedeutet so viel wie "nicht/aktiv" bzw. "deaktiviert". Das ist nicht das gleiche wie "0", weil z.B. bei der Sollvorlauftemperatur "---" bedeutet, dass es keine Solltemperatur gibt, weil die Heizung aus sein soll. Eine Soll-VL-Temp von "0" würde bei einer Heizung, die auch kühlen kann, bedeuten, dass sie auf 0 Grad runterkühlen soll.

Seit vorgestern gibt es in der aktuellen Version die Möglichkeit, diesen Wert selber zu definieren. Wer unbedingt will, kann hier 0 angeben, aber bei HA scheint wohl "None" der sinnvollste Wert zu sein, dann setzt der Plot für den Zeitraum einfach aus.

Autodiscovery hat nichts mit Logging zu tun. Auto-Discovery legt Dir die Parameter in HA an, aber Du musst trotzdem selber dafür sorgen, dass die, die Du aktualisiert haben willst, auch aktualisiert werden. Entweder über die Logging-Funktion in BSB-LAN oder über Polling von HA aus. Dazu gibt es ein Video auf dem BSB-LAN YT-Kanal.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

malkaltmalheiss

Hi wieder und Danke für die Antwort.

1. Seit vorgestern gibt es in welcher Version (HA? BSB-LAN?) diese Funktion? Und wo genau stelle ich da was ein?

Am 12.4. fing dieses Thema erst an. Sonst hat es stets funktioniert (denke ich). Bild dazu: https://ibb.co/zW2n71Qv

Aber ja, ich sehe hier ein "---" in bsb-lan: https://ibb.co/BVjDH5mj

Und HA bleibt "hängen" bei 27%: https://ibb.co/xt6QK25t

Sprich ich würde für meinen Fall gerne da eine "0" sehen wenn der Brenner bzw. die Heizung aus/standby ist. (Ja, ich weiß, dass die 0 bei der Brötje eigentlich AN bedeutet mit kleinster Modulation.)

Sprich auf 5.09 updaten und alles wird gut? :)

thxx