From e1f80a3d77017038170acce000c3a30e48647556 Mon Sep 17 00:00:00 2001 From: Rohit Jadhav Date: Tue, 26 Jul 2022 18:52:08 +0800 Subject: [PATCH] Updated connectedhomeip submodule to ae4e105 --- README.md | 2 +- components/esp_matter/esp_matter_client.cpp | 54 ++--- .../zap_common/zap-generated/CHIPClusters.h | 191 ++++++++++++------ connectedhomeip/connectedhomeip | 2 +- .../ESP32_custom/nimble/BLEManagerImpl.cpp | 18 -- 5 files changed, 146 insertions(+), 121 deletions(-) diff --git a/README.md b/README.md index 7268ce5f5..5cb0718dc 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ git clone --recursive https://github.com/espressif/esp-matter.git ## Supported ESP-IDF and connectedhomeip versions -- ESP Matter currently works with [commit c1d5431](https://github.com/project-chip/connectedhomeip/tree/c1d5431) of connectedhomeip. +- ESP Matter currently works with [commit ae4e105](https://github.com/project-chip/connectedhomeip/tree/ae4e105) of connectedhomeip. - For Wi-Fi devices (ESP32, ESP32-C3, ESP32-S3), ESP-IDF [v4.4.1 release](https://github.com/espressif/esp-idf/releases/tag/v4.4.1) is required. - For Thread devices (ESP32-H2), ESP-IDF master branch at [commit 047903c](https://github.com/espressif/esp-idf/commit/047903c) should be used. diff --git a/components/esp_matter/esp_matter_client.cpp b/components/esp_matter/esp_matter_client.cpp index bedaf13d3..ee202f3cb 100644 --- a/components/esp_matter/esp_matter_client.cpp +++ b/components/esp_matter/esp_matter_client.cpp @@ -146,30 +146,27 @@ namespace command { esp_err_t send_on(peer_device_t *remote_device, uint16_t remote_endpoint_id) { - chip::Controller::OnOffCluster cluster; OnOff::Commands::On::Type command_data; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::OnOffCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } esp_err_t send_off(peer_device_t *remote_device, uint16_t remote_endpoint_id) { - chip::Controller::OnOffCluster cluster; OnOff::Commands::Off::Type command_data; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::OnOffCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } esp_err_t send_toggle(peer_device_t *remote_device, uint16_t remote_endpoint_id) { - chip::Controller::OnOffCluster cluster; OnOff::Commands::Toggle::Type command_data; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::OnOffCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -183,14 +180,13 @@ namespace command { esp_err_t send_move(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t move_mode, uint8_t rate, uint8_t option_mask, uint8_t option_override) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::Move::Type command_data; command_data.moveMode = (LevelControl::MoveMode)move_mode; command_data.rate = rate; command_data.optionMask = option_mask; command_data.optionOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -198,14 +194,13 @@ esp_err_t send_move(peer_device_t *remote_device, uint16_t remote_endpoint_id, u esp_err_t send_move_to_level(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t level, uint16_t transition_time, uint8_t option_mask, uint8_t option_override) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::MoveToLevel::Type command_data; command_data.level = level; command_data.transitionTime = transition_time; command_data.optionMask = option_mask; command_data.optionOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -213,12 +208,11 @@ esp_err_t send_move_to_level(peer_device_t *remote_device, uint16_t remote_endpo esp_err_t send_move_to_level_with_on_off(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t level, uint16_t transition_time) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::MoveToLevelWithOnOff::Type command_data; command_data.level = level; command_data.transitionTime = transition_time; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -226,12 +220,11 @@ esp_err_t send_move_to_level_with_on_off(peer_device_t *remote_device, uint16_t esp_err_t send_move_with_on_off(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t move_mode, uint8_t rate) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::MoveWithOnOff::Type command_data; command_data.moveMode = (LevelControl::MoveMode)move_mode; command_data.rate = rate; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -239,7 +232,6 @@ esp_err_t send_move_with_on_off(peer_device_t *remote_device, uint16_t remote_en esp_err_t send_step(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t step_mode, uint8_t step_size, uint16_t transition_time, uint8_t option_mask, uint8_t option_override) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::Step::Type command_data; command_data.stepMode = (LevelControl::StepMode)step_mode; command_data.stepSize = step_size; @@ -247,7 +239,7 @@ esp_err_t send_step(peer_device_t *remote_device, uint16_t remote_endpoint_id, u command_data.optionMask = option_mask; command_data.optionOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -255,13 +247,12 @@ esp_err_t send_step(peer_device_t *remote_device, uint16_t remote_endpoint_id, u esp_err_t send_step_with_on_off(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t step_mode, uint8_t step_size, uint16_t transition_time) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::StepWithOnOff::Type command_data; command_data.stepMode = (LevelControl::StepMode)step_mode; command_data.stepSize = step_size; command_data.transitionTime = transition_time; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -269,22 +260,20 @@ esp_err_t send_step_with_on_off(peer_device_t *remote_device, uint16_t remote_en esp_err_t send_stop(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t option_mask, uint8_t option_override) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::Stop::Type command_data; command_data.optionMask = option_mask; command_data.optionOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } esp_err_t send_stop_with_on_off(peer_device_t *remote_device, uint16_t remote_endpoint_id) { - chip::Controller::LevelControlCluster cluster; LevelControl::Commands::Stop::Type command_data; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::LevelControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -298,14 +287,13 @@ namespace command { esp_err_t send_move_hue(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t move_mode, uint8_t rate, uint8_t option_mask, uint8_t option_override) { - chip::Controller::ColorControlCluster cluster; ColorControl::Commands::MoveHue::Type command_data; command_data.moveMode = (ColorControl::HueMoveMode)move_mode; command_data.rate = rate; command_data.optionsMask = option_mask; command_data.optionsOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::ColorControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -313,14 +301,13 @@ esp_err_t send_move_hue(peer_device_t *remote_device, uint16_t remote_endpoint_i esp_err_t send_move_saturation(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t move_mode, uint8_t rate, uint8_t option_mask, uint8_t option_override) { - chip::Controller::ColorControlCluster cluster; ColorControl::Commands::MoveSaturation::Type command_data; command_data.moveMode = (ColorControl::SaturationMoveMode)move_mode; command_data.rate = rate; command_data.optionsMask = option_mask; command_data.optionsOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::ColorControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -328,7 +315,6 @@ esp_err_t send_move_saturation(peer_device_t *remote_device, uint16_t remote_end esp_err_t send_move_to_hue(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t hue, uint8_t direction, uint16_t transition_time, uint8_t option_mask, uint8_t option_override) { - chip::Controller::ColorControlCluster cluster; ColorControl::Commands::MoveToHue::Type command_data; command_data.hue = hue; command_data.direction = (ColorControl::HueDirection)direction; @@ -336,7 +322,7 @@ esp_err_t send_move_to_hue(peer_device_t *remote_device, uint16_t remote_endpoin command_data.optionsMask = option_mask; command_data.optionsOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::ColorControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -345,7 +331,6 @@ esp_err_t send_move_to_hue_and_saturation(peer_device_t *remote_device, uint16_t uint8_t saturation, uint16_t transition_time, uint8_t option_mask, uint8_t option_override) { - chip::Controller::ColorControlCluster cluster; ColorControl::Commands::MoveToHueAndSaturation::Type command_data; command_data.hue = hue; command_data.saturation = saturation; @@ -353,7 +338,7 @@ esp_err_t send_move_to_hue_and_saturation(peer_device_t *remote_device, uint16_t command_data.optionsMask = option_mask; command_data.optionsOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::ColorControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -361,14 +346,13 @@ esp_err_t send_move_to_hue_and_saturation(peer_device_t *remote_device, uint16_t esp_err_t send_move_to_saturation(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t saturation, uint16_t transition_time, uint8_t option_mask, uint8_t option_override) { - chip::Controller::ColorControlCluster cluster; ColorControl::Commands::MoveToSaturation::Type command_data; command_data.saturation = saturation; command_data.transitionTime = transition_time; command_data.optionsMask = option_mask; command_data.optionsOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::ColorControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -376,7 +360,6 @@ esp_err_t send_move_to_saturation(peer_device_t *remote_device, uint16_t remote_ esp_err_t send_step_hue(peer_device_t *remote_device, uint16_t remote_endpoint_id, uint8_t step_mode, uint8_t step_size, uint16_t transition_time, uint8_t option_mask, uint8_t option_override) { - chip::Controller::ColorControlCluster cluster; ColorControl::Commands::StepHue::Type command_data; command_data.stepMode = (ColorControl::HueStepMode)step_mode; command_data.stepSize = step_size; @@ -384,7 +367,7 @@ esp_err_t send_step_hue(peer_device_t *remote_device, uint16_t remote_endpoint_i command_data.optionsMask = option_mask; command_data.optionsOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::ColorControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } @@ -393,7 +376,6 @@ esp_err_t send_step_saturation(peer_device_t *remote_device, uint16_t remote_end uint8_t step_size, uint16_t transition_time, uint8_t option_mask, uint8_t option_override) { - chip::Controller::ColorControlCluster cluster; ColorControl::Commands::StepSaturation::Type command_data; command_data.stepMode = (ColorControl::SaturationStepMode)step_mode; command_data.stepSize = step_size; @@ -401,7 +383,7 @@ esp_err_t send_step_saturation(peer_device_t *remote_device, uint16_t remote_end command_data.optionsMask = option_mask; command_data.optionsOverride = option_override; - cluster.Associate(remote_device, remote_endpoint_id); + chip::Controller::ColorControlCluster cluster(*remote_device->GetExchangeManager(), remote_device->GetSecureSession().Value(), remote_endpoint_id); cluster.InvokeCommand(command_data, NULL, send_command_success_callback, send_command_failure_callback); return ESP_OK; } diff --git a/components/esp_matter/zap_common/zap-generated/CHIPClusters.h b/components/esp_matter/zap_common/zap-generated/CHIPClusters.h index bc78e4480..bfeb56dcc 100644 --- a/components/esp_matter/zap_common/zap-generated/CHIPClusters.h +++ b/components/esp_matter/zap_common/zap-generated/CHIPClusters.h @@ -33,448 +33,509 @@ namespace Controller { class DLL_EXPORT AccessControlCluster : public ClusterBase { public: - AccessControlCluster() : ClusterBase(app::Clusters::AccessControl::Id) {} + AccessControlCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::AccessControl::Id, endpoint) {} ~AccessControlCluster() {} }; class DLL_EXPORT AccountLoginCluster : public ClusterBase { public: - AccountLoginCluster() : ClusterBase(app::Clusters::AccountLogin::Id) {} + AccountLoginCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::AccountLogin::Id, endpoint) {} ~AccountLoginCluster() {} }; class DLL_EXPORT AdministratorCommissioningCluster : public ClusterBase { public: - AdministratorCommissioningCluster() : ClusterBase(app::Clusters::AdministratorCommissioning::Id) {} + AdministratorCommissioningCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::AdministratorCommissioning::Id, endpoint) {} ~AdministratorCommissioningCluster() {} }; class DLL_EXPORT ApplicationBasicCluster : public ClusterBase { public: - ApplicationBasicCluster() : ClusterBase(app::Clusters::ApplicationBasic::Id) {} + ApplicationBasicCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ApplicationBasic::Id, endpoint) {} ~ApplicationBasicCluster() {} }; class DLL_EXPORT ApplicationLauncherCluster : public ClusterBase { public: - ApplicationLauncherCluster() : ClusterBase(app::Clusters::ApplicationLauncher::Id) {} + ApplicationLauncherCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ApplicationLauncher::Id, endpoint) {} ~ApplicationLauncherCluster() {} }; class DLL_EXPORT AudioOutputCluster : public ClusterBase { public: - AudioOutputCluster() : ClusterBase(app::Clusters::AudioOutput::Id) {} + AudioOutputCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::AudioOutput::Id, endpoint) {} ~AudioOutputCluster() {} }; class DLL_EXPORT BarrierControlCluster : public ClusterBase { public: - BarrierControlCluster() : ClusterBase(app::Clusters::BarrierControl::Id) {} + BarrierControlCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::BarrierControl::Id, endpoint) {} ~BarrierControlCluster() {} }; class DLL_EXPORT BasicCluster : public ClusterBase { public: - BasicCluster() : ClusterBase(app::Clusters::Basic::Id) {} + BasicCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Basic::Id, endpoint) {} ~BasicCluster() {} }; class DLL_EXPORT BinaryInputBasicCluster : public ClusterBase { public: - BinaryInputBasicCluster() : ClusterBase(app::Clusters::BinaryInputBasic::Id) {} + BinaryInputBasicCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::BinaryInputBasic::Id, endpoint) {} ~BinaryInputBasicCluster() {} }; class DLL_EXPORT BindingCluster : public ClusterBase { public: - BindingCluster() : ClusterBase(app::Clusters::Binding::Id) {} + BindingCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Binding::Id, endpoint) {} ~BindingCluster() {} }; class DLL_EXPORT BooleanStateCluster : public ClusterBase { public: - BooleanStateCluster() : ClusterBase(app::Clusters::BooleanState::Id) {} + BooleanStateCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::BooleanState::Id, endpoint) {} ~BooleanStateCluster() {} }; class DLL_EXPORT BridgedActionsCluster : public ClusterBase { public: - BridgedActionsCluster() : ClusterBase(app::Clusters::BridgedActions::Id) {} + BridgedActionsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::BridgedActions::Id, endpoint) {} ~BridgedActionsCluster() {} }; class DLL_EXPORT BridgedDeviceBasicCluster : public ClusterBase { public: - BridgedDeviceBasicCluster() : ClusterBase(app::Clusters::BridgedDeviceBasic::Id) {} + BridgedDeviceBasicCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::BridgedDeviceBasic::Id, endpoint) {} ~BridgedDeviceBasicCluster() {} }; class DLL_EXPORT ChannelCluster : public ClusterBase { public: - ChannelCluster() : ClusterBase(app::Clusters::Channel::Id) {} + ChannelCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Channel::Id, endpoint) {} ~ChannelCluster() {} }; class DLL_EXPORT ColorControlCluster : public ClusterBase { public: - ColorControlCluster() : ClusterBase(app::Clusters::ColorControl::Id) {} + ColorControlCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ColorControl::Id, endpoint) {} ~ColorControlCluster() {} }; class DLL_EXPORT ContentLauncherCluster : public ClusterBase { public: - ContentLauncherCluster() : ClusterBase(app::Clusters::ContentLauncher::Id) {} + ContentLauncherCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ContentLauncher::Id, endpoint) {} ~ContentLauncherCluster() {} }; class DLL_EXPORT DescriptorCluster : public ClusterBase { public: - DescriptorCluster() : ClusterBase(app::Clusters::Descriptor::Id) {} + DescriptorCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Descriptor::Id, endpoint) {} ~DescriptorCluster() {} }; class DLL_EXPORT DiagnosticLogsCluster : public ClusterBase { -public: - DiagnosticLogsCluster() : ClusterBase(app::Clusters::DiagnosticLogs::Id) {} + DiagnosticLogsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::DiagnosticLogs::Id, endpoint) {} ~DiagnosticLogsCluster() {} }; class DLL_EXPORT DoorLockCluster : public ClusterBase { public: - DoorLockCluster() : ClusterBase(app::Clusters::DoorLock::Id) {} + DoorLockCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::DoorLock::Id, endpoint) {} ~DoorLockCluster() {} }; class DLL_EXPORT ElectricalMeasurementCluster : public ClusterBase { public: - ElectricalMeasurementCluster() : ClusterBase(app::Clusters::ElectricalMeasurement::Id) {} + ElectricalMeasurementCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ElectricalMeasurement::Id, endpoint) {} ~ElectricalMeasurementCluster() {} }; class DLL_EXPORT EthernetNetworkDiagnosticsCluster : public ClusterBase { public: - EthernetNetworkDiagnosticsCluster() : ClusterBase(app::Clusters::EthernetNetworkDiagnostics::Id) {} + EthernetNetworkDiagnosticsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::EthernetNetworkDiagnostics::Id, endpoint) {} ~EthernetNetworkDiagnosticsCluster() {} }; class DLL_EXPORT FanControlCluster : public ClusterBase { public: - FanControlCluster() : ClusterBase(app::Clusters::FanControl::Id) {} + FanControlCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::FanControl::Id, endpoint) {} ~FanControlCluster() {} }; class DLL_EXPORT FixedLabelCluster : public ClusterBase { public: - FixedLabelCluster() : ClusterBase(app::Clusters::FixedLabel::Id) {} + FixedLabelCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::FixedLabel::Id, endpoint) {} ~FixedLabelCluster() {} }; class DLL_EXPORT FlowMeasurementCluster : public ClusterBase { public: - FlowMeasurementCluster() : ClusterBase(app::Clusters::FlowMeasurement::Id) {} + FlowMeasurementCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::FlowMeasurement::Id, endpoint) {} ~FlowMeasurementCluster() {} }; class DLL_EXPORT GeneralCommissioningCluster : public ClusterBase { public: - GeneralCommissioningCluster() : ClusterBase(app::Clusters::GeneralCommissioning::Id) {} + GeneralCommissioningCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::GeneralCommissioning::Id, endpoint) {} ~GeneralCommissioningCluster() {} }; class DLL_EXPORT GeneralDiagnosticsCluster : public ClusterBase { public: - GeneralDiagnosticsCluster() : ClusterBase(app::Clusters::GeneralDiagnostics::Id) {} + GeneralDiagnosticsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::GeneralDiagnostics::Id, endpoint) {} ~GeneralDiagnosticsCluster() {} }; class DLL_EXPORT GroupKeyManagementCluster : public ClusterBase { public: - GroupKeyManagementCluster() : ClusterBase(app::Clusters::GroupKeyManagement::Id) {} + GroupKeyManagementCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::GroupKeyManagement::Id, endpoint) {} ~GroupKeyManagementCluster() {} }; class DLL_EXPORT GroupsCluster : public ClusterBase { public: - GroupsCluster() : ClusterBase(app::Clusters::Groups::Id) {} + GroupsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Groups::Id, endpoint) {} ~GroupsCluster() {} }; class DLL_EXPORT IdentifyCluster : public ClusterBase { public: - IdentifyCluster() : ClusterBase(app::Clusters::Identify::Id) {} + IdentifyCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Identify::Id, endpoint) {} ~IdentifyCluster() {} }; class DLL_EXPORT IlluminanceMeasurementCluster : public ClusterBase { public: - IlluminanceMeasurementCluster() : ClusterBase(app::Clusters::IlluminanceMeasurement::Id) {} + IlluminanceMeasurementCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::IlluminanceMeasurement::Id, endpoint) {} ~IlluminanceMeasurementCluster() {} }; class DLL_EXPORT KeypadInputCluster : public ClusterBase { public: - KeypadInputCluster() : ClusterBase(app::Clusters::KeypadInput::Id) {} + KeypadInputCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::KeypadInput::Id, endpoint) {} ~KeypadInputCluster() {} }; class DLL_EXPORT LevelControlCluster : public ClusterBase { public: - LevelControlCluster() : ClusterBase(app::Clusters::LevelControl::Id) {} + LevelControlCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::LevelControl::Id, endpoint) {} ~LevelControlCluster() {} }; class DLL_EXPORT LocalizationConfigurationCluster : public ClusterBase { public: - LocalizationConfigurationCluster() : ClusterBase(app::Clusters::LocalizationConfiguration::Id) {} + LocalizationConfigurationCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::LocalizationConfiguration::Id, endpoint) {} ~LocalizationConfigurationCluster() {} }; class DLL_EXPORT LowPowerCluster : public ClusterBase { public: - LowPowerCluster() : ClusterBase(app::Clusters::LowPower::Id) {} + LowPowerCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::LowPower::Id, endpoint) {} ~LowPowerCluster() {} }; class DLL_EXPORT MediaInputCluster : public ClusterBase { public: - MediaInputCluster() : ClusterBase(app::Clusters::MediaInput::Id) {} + MediaInputCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::MediaInput::Id, endpoint) {} ~MediaInputCluster() {} }; class DLL_EXPORT MediaPlaybackCluster : public ClusterBase { public: - MediaPlaybackCluster() : ClusterBase(app::Clusters::MediaPlayback::Id) {} + MediaPlaybackCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::MediaPlayback::Id, endpoint) {} ~MediaPlaybackCluster() {} }; class DLL_EXPORT ModeSelectCluster : public ClusterBase { public: - ModeSelectCluster() : ClusterBase(app::Clusters::ModeSelect::Id) {} + ModeSelectCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ModeSelect::Id, endpoint) {} ~ModeSelectCluster() {} }; class DLL_EXPORT NetworkCommissioningCluster : public ClusterBase { public: - NetworkCommissioningCluster() : ClusterBase(app::Clusters::NetworkCommissioning::Id) {} + NetworkCommissioningCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::NetworkCommissioning::Id, endpoint) {} ~NetworkCommissioningCluster() {} }; class DLL_EXPORT OtaSoftwareUpdateProviderCluster : public ClusterBase { public: - OtaSoftwareUpdateProviderCluster() : ClusterBase(app::Clusters::OtaSoftwareUpdateProvider::Id) {} + OtaSoftwareUpdateProviderCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::OtaSoftwareUpdateProvider::Id, endpoint) {} ~OtaSoftwareUpdateProviderCluster() {} }; class DLL_EXPORT OtaSoftwareUpdateRequestorCluster : public ClusterBase { public: - OtaSoftwareUpdateRequestorCluster() : ClusterBase(app::Clusters::OtaSoftwareUpdateRequestor::Id) {} + OtaSoftwareUpdateRequestorCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::OtaSoftwareUpdateRequestor::Id, endpoint) {} ~OtaSoftwareUpdateRequestorCluster() {} }; class DLL_EXPORT OccupancySensingCluster : public ClusterBase { public: - OccupancySensingCluster() : ClusterBase(app::Clusters::OccupancySensing::Id) {} + OccupancySensingCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::OccupancySensing::Id, endpoint) {} ~OccupancySensingCluster() {} }; class DLL_EXPORT OnOffCluster : public ClusterBase { public: - OnOffCluster() : ClusterBase(app::Clusters::OnOff::Id) {} + OnOffCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::OnOff::Id, endpoint) {} ~OnOffCluster() {} }; class DLL_EXPORT OnOffSwitchConfigurationCluster : public ClusterBase { public: - OnOffSwitchConfigurationCluster() : ClusterBase(app::Clusters::OnOffSwitchConfiguration::Id) {} + OnOffSwitchConfigurationCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::OnOffSwitchConfiguration::Id, endpoint) {} ~OnOffSwitchConfigurationCluster() {} }; class DLL_EXPORT OperationalCredentialsCluster : public ClusterBase { public: - OperationalCredentialsCluster() : ClusterBase(app::Clusters::OperationalCredentials::Id) {} + OperationalCredentialsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::OperationalCredentials::Id, endpoint) {} ~OperationalCredentialsCluster() {} }; class DLL_EXPORT PowerSourceCluster : public ClusterBase { public: - PowerSourceCluster() : ClusterBase(app::Clusters::PowerSource::Id) {} + PowerSourceCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::PowerSource::Id, endpoint) {} ~PowerSourceCluster() {} }; class DLL_EXPORT PowerSourceConfigurationCluster : public ClusterBase { public: - PowerSourceConfigurationCluster() : ClusterBase(app::Clusters::PowerSourceConfiguration::Id) {} + PowerSourceConfigurationCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::PowerSourceConfiguration::Id, endpoint) {} ~PowerSourceConfigurationCluster() {} }; class DLL_EXPORT PressureMeasurementCluster : public ClusterBase { public: - PressureMeasurementCluster() : ClusterBase(app::Clusters::PressureMeasurement::Id) {} + PressureMeasurementCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::PressureMeasurement::Id, endpoint) {} ~PressureMeasurementCluster() {} }; class DLL_EXPORT PumpConfigurationAndControlCluster : public ClusterBase { public: - PumpConfigurationAndControlCluster() : ClusterBase(app::Clusters::PumpConfigurationAndControl::Id) {} + PumpConfigurationAndControlCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::PumpConfigurationAndControl::Id, endpoint) {} ~PumpConfigurationAndControlCluster() {} }; class DLL_EXPORT RelativeHumidityMeasurementCluster : public ClusterBase { public: - RelativeHumidityMeasurementCluster() : ClusterBase(app::Clusters::RelativeHumidityMeasurement::Id) {} + RelativeHumidityMeasurementCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::RelativeHumidityMeasurement::Id, endpoint) {} ~RelativeHumidityMeasurementCluster() {} }; class DLL_EXPORT ScenesCluster : public ClusterBase { public: - ScenesCluster() : ClusterBase(app::Clusters::Scenes::Id) {} + ScenesCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Scenes::Id, endpoint) {} ~ScenesCluster() {} }; class DLL_EXPORT SoftwareDiagnosticsCluster : public ClusterBase { public: - SoftwareDiagnosticsCluster() : ClusterBase(app::Clusters::SoftwareDiagnostics::Id) {} + SoftwareDiagnosticsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::SoftwareDiagnostics::Id, endpoint) {} ~SoftwareDiagnosticsCluster() {} }; class DLL_EXPORT SwitchCluster : public ClusterBase { public: - SwitchCluster() : ClusterBase(app::Clusters::Switch::Id) {} + SwitchCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Switch::Id, endpoint) {} ~SwitchCluster() {} }; class DLL_EXPORT TargetNavigatorCluster : public ClusterBase { public: - TargetNavigatorCluster() : ClusterBase(app::Clusters::TargetNavigator::Id) {} + TargetNavigatorCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::TargetNavigator::Id, endpoint) {} ~TargetNavigatorCluster() {} }; class DLL_EXPORT TemperatureMeasurementCluster : public ClusterBase { public: - TemperatureMeasurementCluster() : ClusterBase(app::Clusters::TemperatureMeasurement::Id) {} + TemperatureMeasurementCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::TemperatureMeasurement::Id, endpoint) {} ~TemperatureMeasurementCluster() {} }; class DLL_EXPORT TestClusterCluster : public ClusterBase { public: - TestClusterCluster() : ClusterBase(app::Clusters::TestCluster::Id) {} + TestClusterCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::TestCluster::Id, endpoint) {} ~TestClusterCluster() {} }; class DLL_EXPORT ThermostatCluster : public ClusterBase { public: - ThermostatCluster() : ClusterBase(app::Clusters::Thermostat::Id) {} + ThermostatCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::Thermostat::Id, endpoint) {} ~ThermostatCluster() {} }; class DLL_EXPORT ThermostatUserInterfaceConfigurationCluster : public ClusterBase { public: - ThermostatUserInterfaceConfigurationCluster() : ClusterBase(app::Clusters::ThermostatUserInterfaceConfiguration::Id) {} + ThermostatUserInterfaceConfigurationCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ThermostatUserInterfaceConfiguration::Id, endpoint) {} ~ThermostatUserInterfaceConfigurationCluster() {} }; class DLL_EXPORT ThreadNetworkDiagnosticsCluster : public ClusterBase { public: - ThreadNetworkDiagnosticsCluster() : ClusterBase(app::Clusters::ThreadNetworkDiagnostics::Id) {} + ThreadNetworkDiagnosticsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::ThreadNetworkDiagnostics::Id, endpoint) {} ~ThreadNetworkDiagnosticsCluster() {} }; class DLL_EXPORT TimeFormatLocalizationCluster : public ClusterBase { public: - TimeFormatLocalizationCluster() : ClusterBase(app::Clusters::TimeFormatLocalization::Id) {} + TimeFormatLocalizationCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::TimeFormatLocalization::Id, endpoint) {} ~TimeFormatLocalizationCluster() {} }; class DLL_EXPORT UnitLocalizationCluster : public ClusterBase { public: - UnitLocalizationCluster() : ClusterBase(app::Clusters::UnitLocalization::Id) {} + UnitLocalizationCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::UnitLocalization::Id, endpoint) {} ~UnitLocalizationCluster() {} }; class DLL_EXPORT UserLabelCluster : public ClusterBase { public: - UserLabelCluster() : ClusterBase(app::Clusters::UserLabel::Id) {} + UserLabelCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::UserLabel::Id, endpoint) {} ~UserLabelCluster() {} }; class DLL_EXPORT WakeOnLanCluster : public ClusterBase { public: - WakeOnLanCluster() : ClusterBase(app::Clusters::WakeOnLan::Id) {} + WakeOnLanCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::WakeOnLan::Id, endpoint) {} ~WakeOnLanCluster() {} }; class DLL_EXPORT WiFiNetworkDiagnosticsCluster : public ClusterBase { public: - WiFiNetworkDiagnosticsCluster() : ClusterBase(app::Clusters::WiFiNetworkDiagnostics::Id) {} + WiFiNetworkDiagnosticsCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::WiFiNetworkDiagnostics::Id, endpoint) {} ~WiFiNetworkDiagnosticsCluster() {} }; class DLL_EXPORT WindowCoveringCluster : public ClusterBase { public: - WindowCoveringCluster() : ClusterBase(app::Clusters::WindowCovering::Id) {} + WindowCoveringCluster(Messaging::ExchangeManager & exchangeManager, const SessionHandle & session, + EndpointId endpoint) : ClusterBase(exchangeManager, session, app::Clusters::WindowCovering::Id, endpoint) {} ~WindowCoveringCluster() {} }; diff --git a/connectedhomeip/connectedhomeip b/connectedhomeip/connectedhomeip index c1d543182..ae4e10500 160000 --- a/connectedhomeip/connectedhomeip +++ b/connectedhomeip/connectedhomeip @@ -1 +1 @@ -Subproject commit c1d543182fccd0c37c03379602a86fddadff68b1 +Subproject commit ae4e105008b5ab363c02481ec8245d08b913b534 diff --git a/examples/blemesh_bridge/platform/ESP32_custom/nimble/BLEManagerImpl.cpp b/examples/blemesh_bridge/platform/ESP32_custom/nimble/BLEManagerImpl.cpp index c53945782..67a216aca 100644 --- a/examples/blemesh_bridge/platform/ESP32_custom/nimble/BLEManagerImpl.cpp +++ b/examples/blemesh_bridge/platform/ESP32_custom/nimble/BLEManagerImpl.cpp @@ -173,23 +173,6 @@ exit: return err; } -CHIP_ERROR BLEManagerImpl::_SetCHIPoBLEServiceMode(CHIPoBLEServiceMode val) -{ - CHIP_ERROR err = CHIP_NO_ERROR; - - VerifyOrExit(val != ConnectivityManager::kCHIPoBLEServiceMode_NotSupported, err = CHIP_ERROR_INVALID_ARGUMENT); - VerifyOrExit(mServiceMode != ConnectivityManager::kCHIPoBLEServiceMode_NotSupported, err = CHIP_ERROR_UNSUPPORTED_CHIP_FEATURE); - - if (val != mServiceMode) - { - mServiceMode = val; - PlatformMgr().ScheduleWork(DriveBLEState, 0); - } - -exit: - return err; -} - CHIP_ERROR BLEManagerImpl::_SetAdvertisingEnabled(bool val) { CHIP_ERROR err = CHIP_NO_ERROR; @@ -311,7 +294,6 @@ void BLEManagerImpl::_OnPlatformEvent(const ChipDeviceEvent * event) break; case DeviceEventType::kServiceProvisioningChange: - case DeviceEventType::kAccountPairingChange: case DeviceEventType::kWiFiConnectivityChange: // If CHIPOBLE_DISABLE_ADVERTISING_WHEN_PROVISIONED is enabled, and there is a change to the