Releases: fredlcore/BSB-LAN
Releases · fredlcore/BSB-LAN
v4.1
- ATTENTION: BREAKING CHANGE! Changed topic structure for MQTT. This means that all existing MQTT entities in your home-automation system will have to be adjusted or created anew! The new structure now is
BSB-LAN/<device id>/<category id>/<parameter number>
. - ATTENTION: BREAKING CHANGE! Changed unique_id for MQTT auto-discovery. This means that all MQTT entities that have been created via auto-discovery will have to be created anew!
- ATTENTION: Configuration options
fixed_device_family
andfixed_device_variant
have been removed since they no longer work for device-specific parameter lists. If your heating system is off when turning on the microcontroller, BSB-LAN will try to acquire the details every 60 seconds. - ATTENTION: Change of configuration options results in new EEPROM layout, therefore EEPROM will be reinitialized based on configuration of
BSB_LAN_config.h
. - MQTT auto-discovery now works for all devices, not only device ID 0. Use
/M1!<x>
or/M0!<x>
to create/remove entities for device ID<x>
. - Changed MQTT auto-discovery messages' flag to "retain" so that parameters remain available after reboot of Home Assistant.
v4.0
- ATTENTION: BREAKING CHANGE! Room temperature parameter 10000, 10001 and 10002 must now have the additional flag
FL_SPECIAL_INF
, otherwise setting temperature will not work! - ATTENTION: BREAKING CHANGE! Outside temperature simulation parameter 10017 must have
FL_SPECIAL_INF
flag removed, otherwise setting temperature will not work! - ATTENTION: BREAKING CHANGE! Room temperature parameter 10000, 10001 and 10002 for Weishaupt heaters (device families 49, 50, 51 and 59) must now have
FL_SPECIAL_INF
flag removd, otherwise setting temperature will not work! - ATTENTION: BREAKING CHANGE! URL commands
/U
(dislpay user-defined variables) and/X
(display MAX! values) have been removed as these values can now be accessed via parameters 20000++ - ATTENTION: BREAKING CHANGE! PPS time program parameters (15050-15091) have been streamlined with BSB/LPB time program parameters, resulting in only one parameter per day (instead of six), covering three switch points (start and end) per parameter.
- ATTENTION: For ESP32, BSB-LAN requires the ESP32 framework version 3.0.x - please look out for errors or strange behaviour, (1-Wire sensors are not tested yet).
- ATTENTION: New configuration options in
BSB_LAN_config.h
- please update your existing configuration files! Web-based configuration will be overwritten with config file settings due to changes in EEPROM layout! - ATTENTION: New manual URL: https://docs.bsb-lan.de/
- BUTTONS and
RGT_EMULATION
have been moved from main code tocustom_functions
library. To continue using them, make use ofBSB_LAN_custom_*.h
files and activateCUSTOM_COMMANDS
definement. - Most configuration definements removed from
BSB_LAN_config.h
. Almost all functionality can now be configured without reflashing. - BSB-LAN now supports MQTT auto discovery (supported e.g. by Home Assistant). To create devices, call URL command
/M1
to remove them call/M0
- ATTENTION: MQTT auto discovery creates a general switch for the BSB-LAN device in Home Assistant. This switch will immediately write all parameters with the values stored in Home Assistant. DO NOT USE THIS SWITCH unless you REALLY know what it does!
- "Set" button in webinterface now also works with non-default destination devices (i.e. 1 instead of 0)
- Queried/set parameters are now forwarded to the MQTT broker (if MQTT is enabled)
- Previously used
/M1
and/M0
for toggling monitor function have been removed since it can now be accessed via the configuration in the webinterface. - Listing categories with
/K
now also works with destination device. - Important bugfix for OTA update: Previous versions had a hard limit on file size which newer heating systems with several hundred parameters hit, so no OTA update was possible. This is now fixed, but affected users will have to make a USB-based update one more time.
- 1-Wire- and DHT-sensors are now be disabled with value -1 instead of 0. In web interface, an empty field is also accepted.
- MQTTTopicPrefix is no longer optional, "fromBroker" topic removed (formerly used to send commands to BSB-LAN via MQTT)
- Using the 24h averages functionality no longer requires the use of an SD card. SD card will only be used to store averages if interval logging to SD card is active.
- New PPS room unit variant for RVD130, which increases high nibble of magic byte at every transaction.
- Polling current time from NTP server is active by default. Deactivate by setting
ntp_server
to empty string. - New parameter flag
FL_NOSWAP_QUR
for parameters that do not swap the first two bytes of command ID in QUR telegram - New parameter flag
FL_FORCE_INF
for parameters from which we are certain they only work with INF (such as room temperature). Will force an INF telegram even if/S
is used to set the parameter (allows setting room temperature via web interface) - BSB-LAN logo watermark in log graph display (DE-cr)
- Binary ENUMs (yes/no, on/off etc.) now return either 0 or 1 when queried, not - as is the case with some heating systems - 0 or 255. Setting any value from 1 to 255 is still possible.
- Fixed a breaking bug in PPS that prevented running properly in active/room unit mode.
- Fixed bug (or, based on perspective, reduced security) that prevented issuing commands via serial/telnet console when HTTP authentication was active
- Various bugfixes, among others logging of bus telegrams on storage device.
- New OneWireNg library version
- This release has been supported by the following sponsors: Erich Scheilko
v2.2.2
Backport of changed meaning of FL_SPECIAL_INF. Room temperature parameters 10000, 10001 and 10002 must now have the FL_SPECIAL_INF flag added. Outside temperature simulation (10003 or 10017) must have it removed, the same goes for the Weishaupt room temperatur parameters.
v3.3
- ATTENTION: New configuration options in BSB_LAN_config.h - please update your existing configuration files!
- ESP32: Support for receiving date and time via NTP instead of taking it from the heater.
- MQTT broker setting now accepts domain names as well as IP addresses. An optional port can be added after a trailing colon, e.g. broker.my-domain.com:1884. Otherwise defaults to 1883.
- ESP32 NodeMCU: Support for optional additional SD card adapter. SPI pins can be configured in BSB_LAN_config.h, defaulting to standard SPI pins 5, 18, 19 and 23.
- ESP32: Switching between log storage device (SD card / internal flash) can now be done in the web interface.
- ESP32: Create temporary WiFi AP in case Ethernet connection fails
- ESP32 NodeMCU: EEPROM clear pin has changed from 18 to 21 in order not to collide with SPI SD card adapters.
- This release has been supported by the following GitHub sponsors: jsimon3
v3.2
- ATTENTION: In BSB_LAN_config.h, new layout of log_parameters, avg_parameters and ipwe_parameters now written in curly brackets and different size (40 instead of 80) and type ("parameter" instead of "float"). Please update your BSB_LAN_config.h accordingly to prevent errors!
- Added configuration file versioning checks to prevent the use of outdated configuration files with newer software versions.
- Variable esp32_save_energy now defaults to false because it only seems to make sense when using LAN connection or if you use WiFi and can live with the performance impact.
- Added folder "custom_functions" where code examples for useful functions will be collected which are nevertheless too specific to be added to BSB-LAN's core code.
- Added custom function example for mapping DS18B20 sensors to fixed custom floats parameters
- This release has been supported by the following GitHub Sponsors: BraweProg, fdobrovolny, Harald
v2.2.1
v3.1
- ATTENTION: For ESP32 devices using internal flash for log storage: Filesystem was switched from SPIFFS to LittleFS. Download important log data before updating!
- ATTENTION: In BSB_LAN_config.h, the structure of log_parameters, avg_parameters and ipwe_parameters has changed and now includes the destination device on the bus!
- ATTENTION: New EEPROM schema may result in lost web-configuration settings when updating. Note your settings prior to updating!
- ATTENTION: New variable esp32_save_energy in BSB_LAN_config.h - update before compiling new version.
- ATTENTION: New variable bssid in BSB_LAN_config.h - defines a fixed BSSID address to connect to when using WiFi on ESP32.
- Parameters can now be queried from other devices on the bus using the ! notation also when logging (including MQTT) or using average or IPWE parameters
- Enable/disable power saving on ESP32. Saves 20% of energy, but can have impact on WiFi range and downloading speed of log files when using WiFi (LAN not affected)
- Improved performance and flash memory usage on ESP32 devices using internal flash for logging due to switch from SPIFFS to LittleFS
- To improve handling of large datalogs: date range selection in /DG, new url commands /Da,b /DA /DB /Dn /DI /DKn
- This release has been supported by the following GitHub Sponsors: lapixo, nrobadey
v3.0
- ATTENTION: BSB_LAN_custom_defs.h.default needs to be renamed to BSB_LAN_custom_defs.h and only contains a very limited set of parameters by default. See the manual for getting device-specific parameter lists.
- Add new '/LN' URL command to force logging irrespective of current interval.
- Improved library checks: No need for ESP32 users to remove ArduinoMDNS and WiFiSpi folders anymore.
- New SdFat version 2 for Arduino Due
- New data type VT_BINARY_ENUM
- This release has been supported by the following GitHub Sponsors: Alex, DE-cr
v2.1
- Many new parameters for LMU64
- ATTENTION: New categories for LMU64 and RVD/RVP controllers due to their different numbering schemes. Will be filled over time. PPS and sensor categories have moved up by two.
- ESP32: OTA now uses system-wide HTTP AUTH authentication credentials
- Improved built-in chart display (/DG), new configuration definement #define USE_ADVANCED_PLOT_LOG_FILE - thanks to Christian Ramharter
- Lots of bugfixes
v2.0
- ATTENTION: LOTS of new functionalities, some of which break compatibility with previous versions, so be careful and read all the docs if you make the upgrade!
- ATTENTION: Added and reorganized PPS parameters, almost all parameter numbers have changed!
- ATTENTION: Change of EEPROM layout will lead to loading of default values from BSB_LAN_config.h! You need to write settings to EEPROM in configuration menu again!
- ATTENTION: Folder locations and filenames have been adjusted for easier installation! If you update your installation, please take note that the configuration is now in BSB_LAN_config.h (LAN in caps), and no longer in BSB_lan_config.h (lower-caps "lan")
- ATTENTION: HTTP-Authentication configuration has changed and now uses plain text instead of Base64 encoded strings!
- Thanks to GitHub user do13, this code now also compiles on a ESP32, tested on NodeMCU-ESP32, Olimex ESP32-POE and Olimex ESP32-EVB boards. ESP32 code uses SDK version 2.0.2, please take note when configuring Arduino IDE!
- OTA Updates now possible for ESP32-based devices
- Support for special PPS devices (based on DC225/Honeywell MCBA) added
- Webinterface allows for configuration of most settings without the need to re-flash, also split into basic and extended configuration
- Added better WiFi option for Arduinos through Jiri Bilek's WiFiSpi library, using an ESP8266-based microcontroller like Wemos D1 mini or LoLin NodeMCU. Older WiFi-via-Serial approach no longer supported.
- Added MDNS_SUPPORT definement in config so that BSB-LAN can be discovered through mDNS
- If BSB-LAN cannot connect to WiFi on ESP32, it will set up its own access point "BSB-LAN" with password "BSB-LPB-PPS-LAN" for 30 minutes. After that, it will reboot and try to connect again.
- New MQTT functions, including allowing any parameter to be set by an MQTT message and actively query any parameter once by sending an MQTT message
- Added support for BME280 sensors
- Setting a temporary destination address for querying parameters by adding !x (where x is the destination id), e.g. /6224!10 to query the identification of the display unit
- URL commands /A, /B, /T and /JA have been removed as all sensors can now be accessed via parameter numbers 20000 and above as well as (currently) under new category K49.
- New categories added, subsequent categories have been shifted up
- HTTP Authentification now uses clear text username and password in configuration
- PPS users can now send time and day of week to heater
- Lots of new parameters added
- URL command /JR allows for querying the standard (reset) value of a parameter in JSON format
- URL command /JB allows for backing up parameters to JSON file
- New library for DHT22 should provide more reliable results
- Consolidated data and value types: New data types VT_YEAR, VT_DAYMONTH, VT_TIME as subsets of VT_DATETIME for parameters 1-3, replacing VT_SUMMERPERIOD and adjusting VT_VACATIONPROG. New value types DT_THMS for time consisting of hour:minutes:seconds
- MQTT: Use MQTTDeviceID as a client ID for the broker, still defaults to BSB-LAN. ATTENTION: Check your config if you're broker relies on the client ID in any way for authorization etc.