diff --git a/buffet/manager.cc b/buffet/manager.cc
index dd1ba79..572963e 100644
--- a/buffet/manager.cc
+++ b/buffet/manager.cc
@@ -264,15 +264,15 @@
   dbus_adaptor_.SetStatus(weave::EnumToString(status));
 }
 
-void Manager::OnConfigChanged(const weave::BuffetConfig& config) {
-  dbus_adaptor_.SetDeviceId(config.device_id());
-  dbus_adaptor_.SetOemName(config.oem_name());
-  dbus_adaptor_.SetModelName(config.model_name());
-  dbus_adaptor_.SetModelId(config.model_id());
-  dbus_adaptor_.SetName(config.name());
-  dbus_adaptor_.SetDescription(config.description());
-  dbus_adaptor_.SetLocation(config.location());
-  dbus_adaptor_.SetAnonymousAccessRole(config.local_anonymous_access_role());
+void Manager::OnConfigChanged(const weave::Settings& settings) {
+  dbus_adaptor_.SetDeviceId(settings.device_id);
+  dbus_adaptor_.SetOemName(settings.oem_name);
+  dbus_adaptor_.SetModelName(settings.model_name);
+  dbus_adaptor_.SetModelId(settings.model_id);
+  dbus_adaptor_.SetName(settings.name);
+  dbus_adaptor_.SetDescription(settings.description);
+  dbus_adaptor_.SetLocation(settings.location);
+  dbus_adaptor_.SetAnonymousAccessRole(settings.local_anonymous_access_role);
 }
 
 void Manager::UpdateWiFiBootstrapState(weave::WifiSetupState state) {
diff --git a/buffet/manager.h b/buffet/manager.h
index feb6b9d..6db50fe 100644
--- a/buffet/manager.h
+++ b/buffet/manager.h
@@ -102,7 +102,7 @@
 
   void OnStateChanged();
   void OnRegistrationChanged(weave::RegistrationStatus status);
-  void OnConfigChanged(const weave::BuffetConfig& config);
+  void OnConfigChanged(const weave::Settings& settings);
   void UpdateWiFiBootstrapState(weave::WifiSetupState state);
   void OnPairingStart(const std::string& session_id,
                       weave::PairingType pairing_type,
