feat: update DaliDomainService to support logarithmic brightness control and enhance KNX broadcast management request handling
Signed-off-by: Tony <tonylu@tony-cloud.com>
This commit is contained in:
@@ -1213,12 +1213,12 @@ CONFIG_BT_CTRL_RX_ANTENNA_INDEX_EFF=0
|
|||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_N0 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_N0 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P3 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P3 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P6 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P6 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P9 is not set
|
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P9=y
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P12 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P12 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P15 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P15 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P18 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P18 is not set
|
||||||
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P20=y
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P20 is not set
|
||||||
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF=15
|
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF=11
|
||||||
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP=y
|
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP=y
|
||||||
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM=100
|
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM=100
|
||||||
CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD=20
|
CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD=20
|
||||||
@@ -1861,7 +1861,7 @@ CONFIG_SPIRAM_USE_MALLOC=y
|
|||||||
CONFIG_SPIRAM_MEMTEST=y
|
CONFIG_SPIRAM_MEMTEST=y
|
||||||
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=16384
|
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=16384
|
||||||
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y
|
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y
|
||||||
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=32768
|
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=65535
|
||||||
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
|
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
|
||||||
# CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY is not set
|
# CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY is not set
|
||||||
# end of SPI RAM config
|
# end of SPI RAM config
|
||||||
@@ -2480,9 +2480,9 @@ CONFIG_LWIP_HOOK_IP6_INPUT_DEFAULT=y
|
|||||||
#
|
#
|
||||||
# mbedTLS
|
# mbedTLS
|
||||||
#
|
#
|
||||||
CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y
|
# CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC is not set
|
||||||
# CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC is not set
|
# CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC is not set
|
||||||
# CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC is not set
|
CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
|
||||||
# CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set
|
# CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set
|
||||||
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
|
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
|
||||||
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
|
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
|
||||||
@@ -2646,7 +2646,7 @@ CONFIG_STDATOMIC_S32C1I_SPIRAM_WORKAROUND=y
|
|||||||
# CONFIG_NVS_ENCRYPTION is not set
|
# CONFIG_NVS_ENCRYPTION is not set
|
||||||
# CONFIG_NVS_ASSERT_ERROR_CHECK is not set
|
# CONFIG_NVS_ASSERT_ERROR_CHECK is not set
|
||||||
# CONFIG_NVS_LEGACY_DUP_KEYS_COMPATIBILITY is not set
|
# CONFIG_NVS_LEGACY_DUP_KEYS_COMPATIBILITY is not set
|
||||||
# CONFIG_NVS_ALLOCATE_CACHE_IN_SPIRAM is not set
|
CONFIG_NVS_ALLOCATE_CACHE_IN_SPIRAM=y
|
||||||
# end of NVS
|
# end of NVS
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1213,12 +1213,12 @@ CONFIG_BT_CTRL_RX_ANTENNA_INDEX_EFF=0
|
|||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_N0 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_N0 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P3 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P3 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P6 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P6 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P9 is not set
|
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P9=y
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P12 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P12 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P15 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P15 is not set
|
||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P18 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P18 is not set
|
||||||
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P20=y
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P20 is not set
|
||||||
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF=15
|
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF=11
|
||||||
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP=y
|
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP=y
|
||||||
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM=100
|
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM=100
|
||||||
CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD=20
|
CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD=20
|
||||||
|
|||||||
@@ -170,7 +170,8 @@ class DaliDomainService {
|
|||||||
int freecolour = 255, int rgbwaf_control = -1) const;
|
int freecolour = 255, int rgbwaf_control = -1) const;
|
||||||
bool storeDt8PowerOnLevelSnapshot(uint8_t gateway_id, int short_address, int level) const;
|
bool storeDt8PowerOnLevelSnapshot(uint8_t gateway_id, int short_address, int level) const;
|
||||||
bool storeDt8SystemFailureLevelSnapshot(uint8_t gateway_id, int short_address, int level) const;
|
bool storeDt8SystemFailureLevelSnapshot(uint8_t gateway_id, int short_address, int level) const;
|
||||||
bool setBright(uint8_t gateway_id, int short_address, int brightness) const;
|
bool setBright(uint8_t gateway_id, int short_address, int brightness,
|
||||||
|
bool logarithmic_curve = false) const;
|
||||||
bool setColTempRaw(uint8_t gateway_id, int short_address, int mirek) const;
|
bool setColTempRaw(uint8_t gateway_id, int short_address, int mirek) const;
|
||||||
bool setColTemp(uint8_t gateway_id, int short_address, int kelvin) const;
|
bool setColTemp(uint8_t gateway_id, int short_address, int kelvin) const;
|
||||||
bool setColourRaw(uint8_t gateway_id, int raw_addr, int x, int y) const;
|
bool setColourRaw(uint8_t gateway_id, int raw_addr, int x, int y) const;
|
||||||
|
|||||||
@@ -1404,13 +1404,14 @@ bool DaliDomainService::storeDt8SystemFailureLevelSnapshot(uint8_t gateway_id,
|
|||||||
return channel->dali->dt8.storeSystemFailureLevelSnapshot(short_address, level);
|
return channel->dali->dt8.storeSystemFailureLevelSnapshot(short_address, level);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DaliDomainService::setBright(uint8_t gateway_id, int short_address, int brightness) const {
|
bool DaliDomainService::setBright(uint8_t gateway_id, int short_address, int brightness,
|
||||||
|
bool logarithmic_curve) const {
|
||||||
const auto* channel = findChannelByGateway(gateway_id);
|
const auto* channel = findChannelByGateway(gateway_id);
|
||||||
if (channel == nullptr || channel->dali == nullptr) {
|
if (channel == nullptr || channel->dali == nullptr) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
markBusActivity(gateway_id);
|
markBusActivity(gateway_id);
|
||||||
return channel->dali->base.setBright(short_address, brightness);
|
return channel->dali->base.setBright(short_address, brightness, logarithmic_curve);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DaliDomainService::setColTempRaw(uint8_t gateway_id, int short_address, int mirek) const {
|
bool DaliDomainService::setColTempRaw(uint8_t gateway_id, int short_address, int mirek) const {
|
||||||
|
|||||||
@@ -848,6 +848,8 @@ bool IsKnxBroadcastManagementRequest(CemiFrame& frame) {
|
|||||||
case IndividualAddressRead:
|
case IndividualAddressRead:
|
||||||
case IndividualAddressSerialNumberRead:
|
case IndividualAddressSerialNumberRead:
|
||||||
case IndividualAddressSerialNumberWrite:
|
case IndividualAddressSerialNumberWrite:
|
||||||
|
case FunctionPropertyCommand:
|
||||||
|
case FunctionPropertyState:
|
||||||
return true;
|
return true;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
+1
-1
Submodule knx updated: 413c8f5e26...cc476dd71d
Reference in New Issue
Block a user