Yacubane / esp32-arduino-matter

Matter IoT protocol library for ESP32 working on Arduino framework
Apache License 2.0
298 stars 29 forks source link

Arduino IDE update 2.2.1 breaks esp-arduino-matter #41

Closed frios closed 10 months ago

frios commented 10 months ago

A recent update to the Arduino Ice (2.2.1) seems to have broken this library. Compile of any sample gives an extensive list of errors. e.g. A simple compile of the Light sample gives the following errors:

chip::BitMask state = static_cast<chip::BitMask>(0); ^~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:16691:66: error: template argument 2 is invalid chip::BitMask mask = static_cast<chip::BitMask>(0); ^~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18181:30: error: template argument 2 is invalid chip::BitMask daysMask = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18181:69: error: template argument 2 is invalid chip::BitMask daysMask = static_cast<chip::BitMask>(0); ^~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18202:30: error: template argument 2 is invalid chip::BitMask daysMask = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18202:69: error: template argument 2 is invalid chip::BitMask daysMask = static_cast<chip::BitMask>(0); ^~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18268:28: error: template argument 2 is invalid Optional<chip::BitMask> daysMask; ^~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18268:39: error: template argument 1 is invalid Optional<chip::BitMask> daysMask; ^~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18290:28: error: template argument 2 is invalid Optional<chip::BitMask> daysMask; ^~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:18290:39: error: template argument 1 is invalid Optional<chip::BitMask> daysMask; ^~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19246:95: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19247:95: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19248:95: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19331:100: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19332:100: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19333:100: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19343:105: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19344:105: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19345:105: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19403:101: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19404:101: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19405:101: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19537:55: error: 'DecodableType' in 'struct chip::app::Clusters::DoorLock::Attributes::CredentialRulesSupport::TypeInfo' does not name a type Attributes::CredentialRulesSupport::TypeInfo::DecodableType credentialRulesSupport = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19547:56: error: 'DecodableType' in 'struct chip::app::Clusters::DoorLock::Attributes::SupportedOperatingModes::TypeInfo' does not name a type Attributes::SupportedOperatingModes::TypeInfo::DecodableType supportedOperatingModes = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19549:61: error: 'DecodableType' in 'struct chip::app::Clusters::DoorLock::Attributes::DefaultConfigurationRegister::TypeInfo' does not name a type Attributes::DefaultConfigurationRegister::TypeInfo::DecodableType defaultConfigurationRegister = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:19555:57: error: 'DecodableType' in 'struct chip::app::Clusters::DoorLock::Attributes::LocalProgrammingFeatures::TypeInfo' does not name a type Attributes::LocalProgrammingFeatures::TypeInfo::DecodableType localProgrammingFeatures = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20136:93: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20137:93: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20138:93: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20172:98: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20173:98: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20174:98: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20292:85: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20293:85: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20294:85: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20304:93: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20305:93: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20306:93: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20365:45: error: 'DecodableType' in 'struct chip::app::Clusters::WindowCovering::Attributes::ConfigStatus::TypeInfo' does not name a type Attributes::ConfigStatus::TypeInfo::DecodableType configStatus = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20369:50: error: 'DecodableType' in 'struct chip::app::Clusters::WindowCovering::Attributes::OperationalStatus::TypeInfo' does not name a type Attributes::OperationalStatus::TypeInfo::DecodableType operationalStatus = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20381:37: error: 'DecodableType' in 'struct chip::app::Clusters::WindowCovering::Attributes::Mode::TypeInfo' does not name a type Attributes::Mode::TypeInfo::DecodableType mode = static_cast<chip::BitMask>(0); ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20382:45: error: 'DecodableType' in 'struct chip::app::Clusters::WindowCovering::Attributes::SafetyStatus::TypeInfo' does not name a type Attributes::SafetyStatus::TypeInfo::DecodableType safetyStatus = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20824:110: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20825:110: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20826:110: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:20999:43: error: 'DecodableType' in 'struct chip::app::Clusters::PumpConfigurationAndControl::Attributes::PumpStatus::TypeInfo' does not name a type Attributes::PumpStatus::TypeInfo::DecodableType pumpStatus = ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21614:28: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21615:34: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21614:80: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21615:80: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^~~~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21632:28: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21633:34: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21632:80: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21633:80: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^~~~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21655:28: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21656:34: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21655:80: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21656:80: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^~~~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21673:28: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21674:34: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21673:80: error: template argument 2 is invalid chip::BitMask dayOfWeekForSequence = static_cast<chip::BitMask>(0); ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21674:80: error: template argument 2 is invalid chip::BitMask modeForSequence = static_cast<chip::BitMask>(0); ^~~~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21693:28: error: template argument 2 is invalid chip::BitMask daysToReturn = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21694:34: error: template argument 2 is invalid chip::BitMask modeToReturn = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21693:77: error: template argument 2 is invalid chip::BitMask daysToReturn = static_cast<chip::BitMask>(0); ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21694:77: error: template argument 2 is invalid chip::BitMask modeToReturn = static_cast<chip::BitMask>(0); ^~~~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21709:28: error: template argument 2 is invalid chip::BitMask daysToReturn = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21710:34: error: template argument 2 is invalid chip::BitMask modeToReturn = static_cast<chip::BitMask>(0); ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21709:77: error: template argument 2 is invalid chip::BitMask daysToReturn = static_cast<chip::BitMask>(0); ^~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:21710:77: error: template argument 2 is invalid chip::BitMask modeToReturn = static_cast<chip::BitMask>(0); ^~~~~~~ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22582:87: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22583:87: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22584:87: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22594:87: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22595:87: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22596:87: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22606:87: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22607:87: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22608:87: error: template argument 2 is invalid using DecodableArgType = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22618:87: error: template argument 2 is invalid using Type = chip::BitMask; ^ /Users/feldy/Documents/Arduino/libraries/ESP32_Arduino_Matter/src/app-common/zap-generated/cluster-objects.h:22619:87: error: template argument 2 is invalid using DecodableType = chip::BitMask; ^ ... text removed to fit body limitations

exit status 1

Compilation error: exit status 1

Yacubane commented 10 months ago

Thank you, I will look into this in my spare time

Yacubane commented 10 months ago

Hmm... I have just updated Arduino IDE to 2.2.1 and it works

Can you send full config? Which board is selected in Arduino IDE? Did you enable C++17 for Arduino IDE? What version of ESP32 boards are you using?

frios commented 10 months ago

I got it working. It seems like I reinstalled the IDE and that set the C++ back to 11. Once I followed your directions again, it all seems to have fallen back into place. Thank you.