diff --git a/eraser-base/src/main/java/de/tudresden/inf/st/eraser/util/MqttReceiver.java b/eraser-base/src/main/java/de/tudresden/inf/st/eraser/util/MqttReceiver.java
index 5fa9ad6800b3964369d0a1f140db6a4c3e0d164f..75bbfe3c434e95adfe3474c3ad571db46403748a 100644
--- a/eraser-base/src/main/java/de/tudresden/inf/st/eraser/util/MqttReceiver.java
+++ b/eraser-base/src/main/java/de/tudresden/inf/st/eraser/util/MqttReceiver.java
@@ -103,8 +103,7 @@ public class MqttReceiver implements AutoCloseable {
     mqtt.setHost(this.host);
     connection = mqtt.callbackConnection();
     AtomicReference<Throwable> error = new AtomicReference<>();
-    connection.listener(new Listener() {
-      @Override
+    connection.listener(new ExtendedListener() {
       public void onConnected() {
         logger.debug("Connected");
       }
@@ -115,12 +114,17 @@ public class MqttReceiver implements AutoCloseable {
       }
 
       @Override
-      public void onPublish(UTF8Buffer topicBuffer, Buffer body, Runnable ack) {
-        String topicString = topicBuffer.toString();
+      public void onPublish(UTF8Buffer topic, Buffer body, Callback<Callback<Void>> ack) {
+        String topicString = topic.toString();
         String message = body.ascii().toString();
 //        logger.debug("{}: {}", topicString, message);
         onMessageCallback.accept(topicString, message);
-        ack.run();  // always acknowledge message
+        ack.onSuccess(null);  // always acknowledge message
+      }
+
+      @Override
+      public void onPublish(UTF8Buffer topicBuffer, Buffer body, Runnable ack) {
+        logger.warn("onPublish should not be called");
       }
 
       @Override
diff --git a/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/EraserStarter.java b/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/EraserStarter.java
index cdf3e9d03c99e48df645c8df8dfcbd6eac754a8d..3f990bc454289c519c7f41f1851a9f00a423c9eb 100644
--- a/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/EraserStarter.java
+++ b/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/EraserStarter.java
@@ -1,6 +1,7 @@
 package de.tudresden.inf.st.eraser.starter;
 
 import beaver.Parser;
+import com.fasterxml.jackson.databind.DeserializationFeature;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
 import de.tudresden.inf.st.eraser.feedbackloop.analyze.AnalyzeImpl;
@@ -68,6 +69,7 @@ public class EraserStarter {
       System.exit(1);
     }
     ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
+    mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
     File settingsFile = new File(commandLineOptions.configFile);
     Setting settings;
     try {
@@ -127,52 +129,6 @@ public class EraserStarter {
       machineLearningModel.setEncoder(handler);
       machineLearningModel.setDecoder(handler);
       root.getMachineLearningRoot().setActivityRecognition(machineLearningModel);
-      /**
-      //Begin the Integration
-      Item item1=model.resolveItem("m_accel_x").get();
-      Item item2=model.resolveItem("m_accel_y").get();
-      Item item3=model.resolveItem("m_accel_z").get();
-      Item item4=model.resolveItem("m_rotation_x").get();
-      Item item5=model.resolveItem("m_rotation_y").get();
-      Item item6=model.resolveItem("m_rotation_z").get();
-      Item item7=model.resolveItem("w_accel_x").get();
-      Item item8=model.resolveItem("w_accel_y").get();
-      Item item9=model.resolveItem("w_accel_z").get();
-      Item item10=model.resolveItem("w_rotation_x").get();
-      Item item11=model.resolveItem("w_rotation_y").get();
-      Item item12=model.resolveItem("w_rotation_z").get();
-      //0.2717419,8.698134,4.471172,0.043741,0.515962,0.854318,1.8818425,4.9320555,8.145074,0.2374878,-0.032836914,0.3381958,working
-      item1.setStateFromString("0.2717419");
-      item2.setStateFromString("8.698134");
-      item3.setStateFromString("4.471172");
-      item4.setStateFromString("0.043741");
-      item5.setStateFromString("0.515962");
-      item6.setStateFromString("0.854318");
-      item7.setStateFromString("1.8818425");
-      item8.setStateFromString("4.9320555");
-      item9.setStateFromString("8.145074");
-      item10.setStateFromString("0.2374878");
-      item11.setStateFromString("-0.032836914");
-      item12.setStateFromString("0.3381958");
-
-      ArrayList<Item> newData=new ArrayList<>();
-      newData.add(item1);
-      newData.add(item2);
-      newData.add(item3);
-      newData.add(item4);
-      newData.add(item5);
-      newData.add(item6);
-      newData.add(item7);
-      newData.add(item8);
-      newData.add(item9);
-      newData.add(item10);
-      newData.add(item11);
-      newData.add(item12);
-      handler.newData(newData);*/
-      List<ItemPreference> preference=handler.classify().getPreferences();
-      for(ItemPreference preference1 : preference){
-        preference1.apply();
-      }
     }
 
     // initialize preference learning
@@ -188,23 +144,9 @@ public class EraserStarter {
       machineLearningModel.setEncoder(handler);
       machineLearningModel.setDecoder(handler);
       root.getMachineLearningRoot().setPreferenceLearning(machineLearningModel);
-      //working,medium,240,70
-      /**Item activity_item = model.resolveItem("activity").get();
-      String activity=activity_item.getStateAsString();
-      activity_item.setStateFromString(activity);
-      Item brightness_item = model.resolveItem("w_brightness").get();
-      brightness_item.setStateFromString("medium");
-      ArrayList<Item> newData1 = new ArrayList<>();
-      newData1.add(activity_item);
-      newData1.add(brightness_item);
-      handler.newData(newData1);*/
-      List<ItemPreference> preference=handler.classify().getPreferences();
-      for(ItemPreference preference1 : preference){
-        preference1.apply();
-      }
     }
 
-    machineLearningRoot.getPreferenceLearning().connectItems(settings.preference.items);
+//    machineLearningRoot.getPreferenceLearning().connectItems(settings.preference.items);
     if (!machineLearningRoot.getActivityRecognition().check()) {
       logger.fatal("Invalid activity recognition!");
       System.exit(1);
diff --git a/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/Setting.java b/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/Setting.java
index 09af126b0a66f54aa2b6c88fb04bda9cb7218cb3..642438af01298f801af358dfa7dc5a0eae920326 100644
--- a/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/Setting.java
+++ b/eraser.starter/src/main/java/de/tudresden/inf/st/eraser/starter/Setting.java
@@ -6,7 +6,6 @@ import org.apache.logging.log4j.Logger;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.nio.file.Paths;
-import java.util.List;
 
 /**
  * Setting bean.
@@ -47,10 +46,10 @@ class Setting {
     public boolean dummy = false;
     /** Model id. Default: 1.*/
     public int id = 1;
-    /** Items to connect to inputs */
-    public List<String> items;
-    /** Item to change with classification result */
-    public String affectedItem;
+//    /** Items to connect to inputs */
+//    public List<String> items;
+//    /** Item to change with classification result */
+//    public String affectedItem;
   }
   public class OpenHabContainer {
     /** The URL from which to import and at which openHAB is running */
diff --git a/eraser.starter/starter-setting.yaml b/eraser.starter/starter-setting.yaml
index e8f438cf3eeb22d71d44c675e7328e61ba612562..9bee9fd5220538612272edce35798a6b99629fe2 100644
--- a/eraser.starter/starter-setting.yaml
+++ b/eraser.starter/starter-setting.yaml
@@ -31,8 +31,8 @@ activity:
   dummy: false
   # Model id. Default: 1.
   id: 1
-  # Item to change with classification result
-  affectedItem: activity
+#  # Item to change with classification result
+#  affectedItem: activity
 
 # Model for preference learning. If dummy is true, then the file parameter is ignored.
 preference:
@@ -43,12 +43,12 @@ preference:
   dummy: false
   # Model id. Default: 1.
   id: 1
-  # Items to connect to inputs
-  items:
-    - activity
-    - w_brightness
-  # Item to change with classification result
-  affectedItem: iris1_item
+#  # Items to connect to inputs
+#  items:
+#    - activity
+#    - w_brightness
+#  # Item to change with classification result
+#  affectedItem: iris1_item
 
 # Initialize the knowledge base by importing data from openHAB.
 openhab: