----------------------------------------------------------------------------------------
EO-BAC-IP - Changelog
----------------------------------------------------------------------------------------
+ added
- removed		
* modified/improved
! fixed
> prepared
----------------------------------------------------------------------------------------
Description:
	Firmware for gateway EnOcean/BACnet IP.
----------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------	
2025-11-13 V1.3.11
	Firmware:
	+ Indicate long initialization
	  If the initialization takes longer than three seconds, the PWR green LED
	  is blinking until initialization is complete. The frequency is two blinks per second.

	EnOcean EEP:
	! Fixed the reception of D2-10-30 MSG 0x23 (Actuator status message)
	  (values were always zero for MSG 0x23)
	
	BACnet:
	! "None" objects not hidden with InterfaceType=IFT_SELECTED_TELEGRAM

	Web:
	* Show the present value of "Disable view-only dashboard"

----------------------------------------------------------------------------------------	
2025-10-24 V1.3.10
	BACnet:
	+ Make object names and descriptions writable (see details #25-10-17).
	* Add EURID to the default object-name for objects belonging to a channel.
	  For example before: "Hall 2 east_RX_V0_Temperature"
	  now: "Hall 2 east_1122AABB_RX_V0_Temperature"     
	              
	Web:
	* Make the view-only dashboard optional
	  New setting in [Settings > Change Password > Disable view-only dashboard]
	  If checked, the dashboard is never shown without login.
	        
--- #25-10-17 Details
	These texts are stored in a non-volatile memory. They can only be
	changed via BACnet and are not part of the configuration backup.
	
	The default value can be changed by writing the object-name or
	description property of an object. The maximum length is 39 characters
	(bytes), writing an empty string "" or "!default" will restore the
	default text.
	
	The default object-name of objects belonging to a channel is given by
	the [Settings > BACnet > Object naming rule] setting.
---

----------------------------------------------------------------------------------------	
2025-08-20 V1.3.9
	BACnet:
	+ Add reliability information to analog input objects (#10)
	! Minor fixes in analog input object implementation (out-of-service and COV_Increment)
	
	Web:
	! Wrong object name displayed for Values extension (#25-04-24)

--- #10 Details
	Analog Input "Reliability" property has a value based on the channel status:
	- NO_SENSOR before the first telegram after gateway startup or channel initialization
	- NO_FAULT_DETECTED after a valid telegram has been received
	- COMMUNICATION_FAILURE after timeout - no valid telegram has been received during the last 120 minutes

	The timeout is evaluated for all sensors that have a heartbeat telegram, the default timeout of 120 minutes is used.
	
	Just the value connected to sensor data is evaluated, example for D5-00-01 on channel 1:
	AI 100 - V0_Contact - reliability evaluated
	AI 190 - V90_Telegram counter - always NO_FAULT_DETECTED
	AI 191 - V91_Telegram age - always NO_FAULT_DETECTED	
---
		
----------------------------------------------------------------------------------------	
2025-05-16 V1.3.8
	EnOcean EEP:
	* Improve support for D2-01-xx (#25-04-24).
	* Improve support for Eltako switches and dimmers
	  This change is to simplify pairing to be similar to devices with bidirectional profiles.

	EnOcean:
	! SmartAck teach-in error (response delay was too long)
		
	BACnet:
	+ Use the channel label in BACnet object names
	  The naming rule can be changed in Settings->BACnet->Object naming rule.
	  
	Web:
	+ Support minification and gzip of the web page
	! Unexpected automatic logout when the browser is minimized (Chrome)
	
--- #25-04-24 Example
	Example with NodOn relay switch SIN 2-2-1 (EEP D2-01-12) assigned to channel 1
	
	New BACnet objects:
		AI 151 - I/O Channel 1 Status (0...100%)
		AI 152 - I/O Channel 2 Status (0...100%)
		AO 100151 - I/O Channel 1 Command (0...100%)
		AO 100152 - I/O Channel 2 Command (0...100%)
		
	CMD 4 - Actuator status response:
		- is received to objects AI 100...106 as before
		- is also received to the object AI 15x if the I/O channel index match
	CMD 1 - Actuator set output:
		- is sent with the corresponding I/O channel index when the object AO 10015x is written
		- the objects AO 100100...100114 are not affected and can be used as before
---

----------------------------------------------------------------------------------------	
2024-12-11 V1.3.7
	EnOcean EEP:
	+ Support for D2-14-5C, D2-14-5D
	! Fixed teach-in issue with Pressac Pulse Counter
	! Fixed issue with bidirectional teach-in occuring when a repeater is present (wrong device ID was saved).
	! D2-14-52
	
	EnOcean Security:
	+ Support for encrypted STM32x and STM33x modules version DD and DE.

----------------------------------------------------------------------------------------	
2024-10-17 V1.3.6
	BACnet:
	+ Make BACnet UDP port number configurable
	+ Add BACnet Foreign device options
	
	Web:
	+ New settings in Settings->BACnet (Port number, Foreign device)
	
----------------------------------------------------------------------------------------	
2024-08-15 V1.3.5
	Network interface:
	* Changes in DHCP client (fixed some non-standard behaviour, changes in message contents) 
	
	Web:
	* The web interface is unlocked only for the client that entered the password.
	  Only one client can unlock the configuration at a time.
	! Configuration file import: BACnet objects "SEND" were hidden after import.
	
----------------------------------------------------------------------------------------	
2024-03-26 V1.3.2
	EnOcean EEP:
	+ Support for A5-30-05, A5-30-06
	
	Configuration:
	+ Configuration file version 1.4:
		Added BACnet settings (Visibility and COV_Increment) to the channel.
	+ Configuration file version 1.3:
		Added GatewaySettings (network and communication protocol settings).
		Added SendOption setting to the channel.
	* LRN Timeout extended to 5 minutes
	! ERR24-03-18 Memory error when saving a long label (> 108 bytes)
	
	Web:
	+ Export BACnet EDE (Engineering Data Exchange) file in CSV format (Settings->BACnet->Export)
	+ Export device list to CSV table (Settings->Backup/Restore->Export)

----------------------------------------------------------------------------------------	
2024-02-15 V1.3.1
	EnOceanEEP:
	+ Support for D2-07-00, D2-07-01
	* Conversion of F6-05-01 to false/true and release detection
	! Extension and bug fixes of EEP detection from data messages
	
	BACnet:
	! AnalogOutput->Relinquish_Default: writing the value did not change the Present_Value when empty Priority_Array. 
	
	Web:
	! Firmware update "Upload error: 2"

----------------------------------------------------------------------------------------	
2023-12-19 V1.3.0	
	Support for Kieback&Peter RPW414P-FTL room control panel (D2-10-30) and bug fixes.
	
	EnOcean EEP:
	+ Support for D2-10-30
			
	BACnet:
	! ERR23-12-15 Device reset when Read Property Multiple
	
	Configuration:
	+ "Interface type" settings
	
	Web:
	+ "Interface type" settings in Edit channel->Settings
	+ Edit channel->Device configuration
	* AddNew->LRN enable: checked automatically when AddNew is opened ("LRN enable" enables bidirectional teach-in).
	* Edit channel->Basic settings, Channel clonning: the view switches to the new channel after saving.
	! ERR23-12-11 Freezing when saving devices in Firefox.
	
----------------------------------------------------------------------------------------
2023-10-26 V1.2.2
	Network interface:
	+ SSDP NOTIFY message after startup and when the IP address changes. 
	* The default configuration is always used before the first response from the DHCP server.
	! DHCP delay after startup

----------------------------------------------------------------------------------------
2023-08-21 V1.2.1
	Minor bug fixes.

	Web:
	! Incorrect display of values in drop-down lists in Edit channel->Settings (Firefox).
	
----------------------------------------------------------------------------------------
2023-08-11 V1.2.0 (Generic Profiles)
	Extending support for Afriso and Eltako elements.
	Added support for Generic Pofiles (GP) communication.
		
	EnOcean GP:
	+ Support for Afriso Indoor Siren AIS 10, Indoor Siren AIS 10 PRO
		
	EnOcean EEP:
	+ Support for Eltako switches and dimmers (FSR61NP, FUD61NP and other types with the same telegram content)
	+ Universal profile F6-3F-7F
	+ Universal mapping for unsupported products with RORG A5 and F6 (same as A5-3F-7F and F6-3F-7F)
	+ Support for D2-03-10 (encrypted window handle)
	+ Teach-in sequences for RPS (F6-02-01, D2-03-10, etc.)

----------------------------------------------------------------------------------------
2023-06-21 V1.1.1
	* Improved compatibility with EO-BAC Tool
	! Unable to pair D2-01-09 (UTE response issue)
	
----------------------------------------------------------------------------------------
2023-05-22 V1.1.0 (EnOcean Security)
	Added support for receiving EnOcean Security telegrams.
	Merged chages since version 1.0.9.
	Changed default mapping for A5-07-01, A5-30-01 and A5-20-06.
	
	EnOcean Security:
	+ Receiving encrypted telegrams according to the EnOcean Security specification V3.0
	  (see https://www.enocean-alliance.org/specifications/)
		
	EnOcean EEP:
	+ Support for D2-03-00 (secure PTM), same mapping as F6-02-01 used
		F6-01-01, F6-02-01,02,03 or F6-04-01 can be set instead of D2-03-00 for compatibility with different PTM applications.
	
----------------------------------------------------------------------------------------
2023-05-19 V131.0.10 (V1.0.10-beta3)
	Changed default mapping for A5-07-01.
	
	EnOcean EEP:
	+ Support for D2-14-58
	* A5-07-01: added conversion of range-defined enumerations to states 0/1
		
----------------------------------------------------------------------------------------
2023-05-02 V121.0.10 (V1.0.10-beta2)
	EnOcean EEP:
	+ Thermokon SR65-3AI module support (EEP=A5-3F-7F and ManufacturerID=0x002:Thermokon must be set).	
	
----------------------------------------------------------------------------------------
2023-04-17 V111.0.10 (V1.0.10-beta1)
	Changed default mapping for A5-30-01 and A5-20-06.

	EnOcean EEP:
	* A5-30-01: added conversion of range-defined enumerations to states 0/1
	* Revision of A5-20-06
		
----------------------------------------------------------------------------------------
2023-03-30 V101.0.10 (V1.0.10-beta0)
	Added support for LED drivers.

	EnOcean EEP:
	+ Support for A5-37-01, A5-38-08, A5-38-09
	* Revision of D2-40-00,01
	* Preventing overflow when writing Values to the telegram (limitation of the raw value according to the maximum integer that can be stored in the data field).
	  For example, when the raw value is 18 (0b00010010) and the bit size of the data field is 4 (max integer is 0b00001111):
		before 18->2 (bits truncated)
		now 18->15
		
----------------------------------------------------------------------------------------
2023-03-24 V1.0.9
	* Receiving a teach-in message of assigned device changes Signal, T. Counter and T. Age.
	  Rx data is not modified.
	  In application: the box blinks yellow, signal is shown, record in telegram log, Rx data preserved.
	  Useful for testing, one does not have to wait for a data message.

	EnOcean EEP:	
	+ Support for D2-03-0A, D2-01-17, D2-14-40, D2-14-41
	+ Receiving of CMD 0xA (Pilot Wire) for D2-01-0C
	* Shortened/revised names of some EEPs (A5-02-xx, A5-04-xx, D2-01-XX, F6-xx-xx and others)
	* Names of values and enumeration texts shortened/revised or made easier to understand (A5-20-xx, F6-xx-xx and others).		
	* Timeout evaluation is disabled for D2-03-0A and virtual devices (Simulate=true) and is enabled for F6-05-00, 02.
	! F6-01-01 error of toggle value
	
	BACnet:
	* Setting the COV_Increment of an AI object automatically enables the global setting UCOV_MODE OFF->LOCAL, if it is OFF.
	! Wrong object ID sent in the COV message for T. Counter and T. Age AI objects.

	Web:
	+ The sensor box blinks when a telegram is received
	+ Channel status text in the sensor box.
	+ COV_Increment settings (Edit channel->BACnet)
	* BACnet settings separated (Edit channel->BACnet)
	* HTTP server improvements (reliability, loading speed). 
	! Freezing of http server (sometimes the web interface was inaccessible) 
	
----------------------------------------------------------------------------------------
2023-01-23 V1.0.8
	* D2-01-XX (switches, dimmers, smart plugs):
		Universal interface for all types
		+ Support for multiple commands (CMD 1 to 9, 0xB, 0xC)
		+ Possibility to set and receive measurements
		
----------------------------------------------------------------------------------------
2022-11-04 V1.0.7
	+ LRN mode timeout (the LRN mode is terminated after 60s)
	+ Smart Ack support (D2-11-01...08)
	+ MyID setting
	+ Usage of BaseID for transmission
	+ Simulate device	
	+ Support for multiple commands (case) (e.g. D2-05-00)
	* Extension of supported EEPs
	! F6-10-00,01: enum translation corrected
	
----------------------------------------------------------------------------------------
2022-08-04 V1.0.1	
	Bidirectional communication:
		+ Output channels
		+ 4BS and UTE bidirectional teach-in		
		+ A5-20-01,02,03,06 (HVAC actuators)
		+ D2-01-XX (switches and dimmers), supports CMD 1 and 4		
		
	! System reset during Factory reset
	
----------------------------------------------------------------------------------------
2022-06-27 V1.0.0
	Initial release.