From 5102d6d9034457d7568406f411a0e24ddf32320b Mon Sep 17 00:00:00 2001
From: Raphael Grimm <raphael.grimm@kit.edu>
Date: Sat, 11 Jul 2020 21:57:19 +0200
Subject: [PATCH] Update scenario default parameters

---
 scenarios/Armar3Replay/Armar3Replay.scx       |  20 +-
 .../Armar3Replay/config/ConditionHandler.cfg  | 113 ++++++----
 .../Armar3Replay/config/DebugObserver.cfg     | 122 +++++++----
 .../config/ForceTorqueObserver.cfg            | 145 ++++++++-----
 .../InertialMeasurementUnitObserverApp.cfg    | 131 ++++++++----
 .../config/KinematicUnitObserver.cfg          | 134 ++++++++----
 .../config/KinematicUnitSimulation.cfg        | 140 ++++++++----
 .../config/PlatformUnitObserver.cfg           | 122 +++++++----
 .../config/RobotStateComponent.cfg            | 170 ++++++++++-----
 .../Armar3Replay/config/SystemObserver.cfg    | 120 +++++++----
 scenarios/Armar3Replay/config/global.cfg      |   3 -
 .../CyberGloveObserver/CyberGloveObserver.scx |   4 +-
 .../config/CyberGloveObserverApp.cfg          | 104 +++++----
 .../CyberGloveObserver/config/global.cfg      |   3 -
 .../GamepadControlUnit/GamepadControlUnit.scx |   4 +-
 .../config/GamepadControlUnitApp.cfg          | 142 +++++++++----
 .../GamepadControlUnit/config/global.cfg      |   3 -
 scenarios/GamepadUnit/GamepadUnit.scx         |   8 +-
 .../config/GamepadControlUnitApp.cfg          | 105 ++++++---
 .../GamepadUnit/config/GamepadUnitApp.cfg     | 121 +++++++----
 .../config/GamepadUnitObserverApp.cfg         | 126 +++++++----
 scenarios/GamepadUnit/config/global.cfg       |   3 -
 .../KITProstheticHand/KITProstheticHand.scx   |   6 +-
 .../config/ExternalApplicationManager.cfg     | 150 ++++++++-----
 scenarios/KITProstheticHand/config/global.cfg |   3 -
 .../KinematicSimulationArmar3.scx             |  30 +--
 .../config/ConditionHandler.cfg               | 101 +++++----
 .../config/DebugObserver.cfg                  | 110 ++++++----
 .../config/ForceTorqueObserver.cfg            | 133 +++++++-----
 .../config/ForceTorqueUnitSimulation.cfg      | 105 +++++----
 .../config/Global.cfg                         |   3 -
 .../config/HandUnitSimulation.LeftHand.cfg    | 103 +++++----
 .../config/HandUnitSimulation.RightHand.cfg   | 103 +++++----
 .../config/HeadIKUnit.cfg                     | 112 ++++++----
 .../config/KinematicUnitObserver.cfg          | 122 +++++++----
 .../config/KinematicUnitSimulation.cfg        | 128 +++++++----
 .../config/RobotStateComponent.cfg            | 158 +++++++++-----
 .../config/SystemObserver.cfg                 | 108 ++++++----
 .../config/TCPControlUnit.cfg                 | 136 +++++++-----
 .../LaserScannerTest/LaserScannerTest.scx     |   6 +-
 .../config/HokuyoLaserUnitApp.cfg             | 133 ++++++++----
 .../config/LaserScannerUnitObserverApp.cfg    | 122 +++++++----
 scenarios/LaserScannerTest/config/global.cfg  |   3 -
 scenarios/MetaWearIMU/MetaWearIMU.scx         |   6 +-
 .../MetaWearIMU/config/MetaWearIMUApp.cfg     | 118 ++++++----
 .../config/MetaWearIMUObserverApp.cfg         | 129 ++++++-----
 scenarios/MetaWearIMU/config/global.cfg       |   3 -
 scenarios/OptoForceUnit/OptoForceUnit.scx     |   6 +-
 .../OptoForceUnit/config/OptoForceUnitApp.cfg | 113 ++++++----
 .../config/OptoForceUnitObserverApp.cfg       | 124 +++++++----
 scenarios/OptoForceUnit/config/global.cfg     |   3 -
 .../OrientedTactileSensor.scx                 |   6 +-
 .../config/OrientedTactileSensorUnitApp.cfg   | 135 +++++++-----
 .../OrientedTactileSensorUnitObserverApp.cfg  | 124 +++++++----
 .../OrientedTactileSensor/config/global.cfg   |   3 -
 scenarios/SpeechObserver/SpeechObserver.scx   |   6 +-
 .../config/DummyTextToSpeechApp.cfg           | 107 +++++++---
 .../config/SpeechObserverApp.cfg              | 118 ++++++----
 scenarios/SpeechObserver/config/global.cfg    |   3 -
 scenarios/TopicTimingTest/config/global.cfg   |   4 +
 .../tests/DebugDrawerTest/DebugDrawerTest.scx |   8 +-
 .../tests/DebugDrawerTest/config/global.cfg   |   4 +
 .../InertialMeasurementUnit.scx               |  10 +-
 .../InertialMeasurementUnit/config/global.cfg |   4 +
 ...StatechartProfilesTestArmar3Simulation.scx |  14 +-
 ...ateOfferer.StatechartProfilesTestGroup.cfg | 201 ++++++++++++++----
 .../config/global.cfg                         |   4 +
 .../StatechartProfilesTestArmar3a.scx         |  14 +-
 ...ateOfferer.StatechartProfilesTestGroup.cfg | 201 ++++++++++++++----
 .../config/global.cfg                         |   4 +
 .../WeissHapticSensorsUnitTest.scx            |  12 +-
 .../config/global.cfg                         |   4 +
 .../statecharttestscenario/config/global.cfg  |   4 +
 .../statecharttestscenario.scx                |   6 +-
 74 files changed, 3434 insertions(+), 1782 deletions(-)
 create mode 100644 scenarios/TopicTimingTest/config/global.cfg
 create mode 100644 scenarios/tests/DebugDrawerTest/config/global.cfg
 create mode 100644 scenarios/tests/InertialMeasurementUnit/config/global.cfg
 create mode 100644 scenarios/tests/StatechartProfilesTestArmar3Simulation/config/global.cfg
 create mode 100644 scenarios/tests/StatechartProfilesTestArmar3a/config/global.cfg
 create mode 100644 scenarios/tests/WeissHapticSensorsUnitTest/config/global.cfg
 create mode 100644 scenarios/tests/statecharttestscenario/config/global.cfg

diff --git a/scenarios/Armar3Replay/Armar3Replay.scx b/scenarios/Armar3Replay/Armar3Replay.scx
index bafc4c459..452ba177a 100644
--- a/scenarios/Armar3Replay/Armar3Replay.scx
+++ b/scenarios/Armar3Replay/Armar3Replay.scx
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="Armar3Replay" creation="2017-02-14.19:27:46" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="SystemObserver" instance="" package="ArmarXCore" enabled="true"/>
-	<application name="DebugObserver" instance="" package="ArmarXCore" enabled="true"/>
-	<application name="KinematicUnitObserver" instance="" package="RobotAPI" enabled="true"/>
-	<application name="PlatformUnitObserver" instance="" package="RobotAPI" enabled="true"/>
-	<application name="ForceTorqueObserver" instance="" package="RobotAPI" enabled="true"/>
-	<application name="KinematicUnitSimulation" instance="" package="RobotAPI" enabled="true"/>
-	<application name="RobotStateComponent" instance="" package="RobotAPI" enabled="true"/>
-	<application name="InertialMeasurementUnitObserverApp" instance="" package="RobotAPI" enabled="true"/>
-	<application name="ConditionHandler" instance="" package="ArmarXCore" enabled="true"/>
+<scenario name="Armar3Replay" creation="2017-02-14.19:27:46" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="SystemObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="DebugObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="KinematicUnitObserver" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="PlatformUnitObserver" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ForceTorqueObserver" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="KinematicUnitSimulation" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="RobotStateComponent" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="InertialMeasurementUnitObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ConditionHandler" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/Armar3Replay/config/ConditionHandler.cfg b/scenarios/Armar3Replay/config/ConditionHandler.cfg
index 8a4a4832a..302cdee3a 100644
--- a/scenarios/Armar3Replay/config/ConditionHandler.cfg
+++ b/scenarios/Armar3Replay/config/ConditionHandler.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,31 +13,32 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.ConditionHandler.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ConditionHandler.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ConditionHandler.EnableProfiling = false
 
 
 # ArmarX.ConditionHandler.HistoryLength:  Length of condition history kept by the conditionhandler
 #  Attributes:
 #  - Default:            1000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ConditionHandler.HistoryLength = 1000
 
@@ -45,15 +46,16 @@
 # ArmarX.ConditionHandler.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.ConditionHandler.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.ConditionHandler.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ConditionHandler.ObjectName = ""
 
@@ -61,7 +63,7 @@
 # ArmarX.ConditionHandler.Observers:  Comma seperated observer list
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ConditionHandler.Observers = ""
 
@@ -69,7 +71,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -77,7 +79,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -85,7 +87,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -93,75 +95,110 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/DebugObserver.cfg b/scenarios/Armar3Replay/config/DebugObserver.cfg
index 9d886530a..4a0b9dac0 100644
--- a/scenarios/Armar3Replay/config/DebugObserver.cfg
+++ b/scenarios/Armar3Replay/config/DebugObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,39 +37,41 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
 
 # ArmarX.DebugObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DebugObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DebugObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.DebugObserver.DebugObserverTopicName:  Name of the topic the DebugObserver listens on
 #  Attributes:
 #  - Default:            DebugObserver
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.DebugObserverTopicName = DebugObserver
 
 
 # ArmarX.DebugObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DebugObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DebugObserver.EnableProfiling = false
 
 
 # ArmarX.DebugObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.MaxHistoryRecordFrequency = 50
 
@@ -77,7 +79,7 @@
 # ArmarX.DebugObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.MaxHistorySize = 5000
 
@@ -85,15 +87,16 @@
 # ArmarX.DebugObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.DebugObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.DebugObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.ObjectName = ""
 
@@ -101,7 +104,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -109,75 +112,110 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/ForceTorqueObserver.cfg b/scenarios/Armar3Replay/config/ForceTorqueObserver.cfg
index a347a9927..2a9a165f8 100644
--- a/scenarios/Armar3Replay/config/ForceTorqueObserver.cfg
+++ b/scenarios/Armar3Replay/config/ForceTorqueObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,46 +53,50 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.ForceTorqueUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ForceTorqueUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ForceTorqueUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.ForceTorqueUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ForceTorqueUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ForceTorqueUnitObserver.EnableProfiling = false
 
 
 # ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName:  Name of the ForceTorqueUnit Topic
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = Armar3ForceTorqueUnitState
 
@@ -100,7 +104,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = Armar3ForceTorqueUnitState
 # ArmarX.ForceTorqueUnitObserver.ForceVisualizerFactor:  Factor by which the forces are scaled to fit into 0..1 (only for visulization) 
 #  Attributes:
 #  - Default:            0.00999999978
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.ForceVisualizerFactor = 0.00999999978
 
@@ -108,7 +112,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = Armar3ForceTorqueUnitState
 # ArmarX.ForceTorqueUnitObserver.MaxExpectedTorqueValue:  The torque visualization circle reaches the full circle at this value
 #  Attributes:
 #  - Default:            30
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxExpectedTorqueValue = 30
 
@@ -116,7 +120,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = Armar3ForceTorqueUnitState
 # ArmarX.ForceTorqueUnitObserver.MaxForceArrowLength:  Length of the force visu arrow in mm
 #  Attributes:
 #  - Default:            150
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxForceArrowLength = 150
 
@@ -124,7 +128,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = Armar3ForceTorqueUnitState
 # ArmarX.ForceTorqueUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -132,7 +136,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = Armar3ForceTorqueUnitState
 # ArmarX.ForceTorqueUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxHistorySize = 5000
 
@@ -140,15 +144,16 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = Armar3ForceTorqueUnitState
 # ArmarX.ForceTorqueUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.ForceTorqueUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.ForceTorqueUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 
@@ -156,7 +161,7 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.RobotStateComponentName:  Name of the RobotStateComponent that should be used
 #  Attributes:
 #  - Default:            RobotStateComponent
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.RobotStateComponentName = RobotStateComponent
 
@@ -164,7 +169,7 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.RobotUpdateFrequency:  Update frequency of the local robot
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.RobotUpdateFrequency = 50
 
@@ -172,7 +177,7 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.SensorRobotNodeMapping:  Triplets of sensor node name, target frame robot node name and optional channel name: Sensor values are also reported in the frame of the robot node: e. g. SensorName:RobotNodeName[:ChannelName],SensorName2:RobotNodeName2[:ChannelName2]
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.SensorRobotNodeMapping = ""
 
@@ -180,75 +185,109 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.TorqueVisuDeadZone:  Torques below this threshold are not visualized.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.TorqueVisuDeadZone = 1
 
 
 # ArmarX.ForceTorqueUnitObserver.VisualizeForce:  Visualize the force with an arrow in the debug drawer
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ForceTorqueUnitObserver.VisualizeForce = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ForceTorqueUnitObserver.VisualizeForce = true
 
 
 # ArmarX.ForceTorqueUnitObserver.VisualizeForceUpdateFrequency:  Frequency with which the force is visualized
 #  Attributes:
 #  - Default:            30
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.VisualizeForceUpdateFrequency = 30
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/InertialMeasurementUnitObserverApp.cfg b/scenarios/Armar3Replay/config/InertialMeasurementUnitObserverApp.cfg
index 66c271784..1c3c7382b 100644
--- a/scenarios/Armar3Replay/config/InertialMeasurementUnitObserverApp.cfg
+++ b/scenarios/Armar3Replay/config/InertialMeasurementUnitObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,63 +53,68 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.InertialMeasurementUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.InertialMeasurementUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.InertialMeasurementUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.InertialMeasurementUnitObserver.DebugDrawerTopic:  Name of the DebugDrawerTopic
 #  Attributes:
 #  - Default:            DebugDrawerUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.InertialMeasurementUnitObserver.DebugDrawerTopic = DebugDrawerUpdates
 
 
 # ArmarX.InertialMeasurementUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.InertialMeasurementUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.InertialMeasurementUnitObserver.EnableProfiling = false
 
 
 # ArmarX.InertialMeasurementUnitObserver.EnableVisualization:  Enable/Disable DebugDrawer visualizations
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.InertialMeasurementUnitObserver.EnableVisualization = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.InertialMeasurementUnitObserver.EnableVisualization = true
 
 
 # ArmarX.InertialMeasurementUnitObserver.IMUTopicName:  Name of the IMU Topic.
 #  Attributes:
 #  - Default:            IMUValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.InertialMeasurementUnitObserver.IMUTopicName = IMUValues
 
@@ -117,7 +122,7 @@
 # ArmarX.InertialMeasurementUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.InertialMeasurementUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -125,7 +130,7 @@
 # ArmarX.InertialMeasurementUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.InertialMeasurementUnitObserver.MaxHistorySize = 5000
 
@@ -133,67 +138,101 @@
 # ArmarX.InertialMeasurementUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.InertialMeasurementUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.InertialMeasurementUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.InertialMeasurementUnitObserver.ObjectName = ""
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/KinematicUnitObserver.cfg b/scenarios/Armar3Replay/config/KinematicUnitObserver.cfg
index 6c97ffd09..38ff2eeb1 100644
--- a/scenarios/Armar3Replay/config/KinematicUnitObserver.cfg
+++ b/scenarios/Armar3Replay/config/KinematicUnitObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,47 +53,51 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.KinematicUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitObserver.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -101,7 +105,7 @@
 # ArmarX.KinematicUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitObserver.MaxHistorySize = 5000
 
@@ -109,22 +113,23 @@
 # ArmarX.KinematicUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.KinematicUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.KinematicUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitObserver.ObjectName = ""
 
 
 # ArmarX.KinematicUnitObserver.RobotFileName:  Robot file name, e.g. robot_model.xml
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.KinematicUnitObserver.RobotFileName = ::_NOT_SET_::
 
@@ -132,18 +137,26 @@
 # ArmarX.KinematicUnitObserver.RobotFileNameProject:  Project in which the robot filename is located (if robot is loaded from an external project)
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitObserver.RobotFileNameProject = ""
 
 
 # ArmarX.KinematicUnitObserver.RobotNodeSetName:  Robot node set name as defined in robot xml file, e.g. 'LeftArm'
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.KinematicUnitObserver.RobotNodeSetName = ::_NOT_SET_::
 
 
+# ArmarX.KinematicUnitObserver.TopicPrefix:  Prefix for the sensor value topic name.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.KinematicUnitObserver.TopicPrefix = ""
+
+
 # ArmarX.KinematicUnitObserver.inheritFrom:  No Description
 #  Attributes:
 #  - Default:            RobotConfig
@@ -152,54 +165,87 @@
 ArmarX.KinematicUnitObserver.inheritFrom = RobotConfig
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/KinematicUnitSimulation.cfg b/scenarios/Armar3Replay/config/KinematicUnitSimulation.cfg
index 54ef5f969..9c57dcf49 100644
--- a/scenarios/Armar3Replay/config/KinematicUnitSimulation.cfg
+++ b/scenarios/Armar3Replay/config/KinematicUnitSimulation.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,39 +53,42 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitSimulation.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitSimulation.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitSimulation.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitSimulation.IntervalMs:  The time in milliseconds between two calls to the simulation method.
 #  Attributes:
 #  - Default:            10
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.IntervalMs = 10
 
@@ -93,7 +96,7 @@
 # ArmarX.KinematicUnitSimulation.Kd:  derivative gain of the PID position controller.
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Kd = 0
 
@@ -101,7 +104,7 @@
 # ArmarX.KinematicUnitSimulation.Ki:  integral gain of the PID position controller.
 #  Attributes:
 #  - Default:            0.00100000005
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Ki = 0.00100000005
 
@@ -109,7 +112,7 @@
 # ArmarX.KinematicUnitSimulation.Kp:  proportional gain of the PID position controller.
 #  Attributes:
 #  - Default:            3
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Kp = 3
 
@@ -117,15 +120,16 @@
 # ArmarX.KinematicUnitSimulation.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.KinematicUnitSimulation.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.KinematicUnitSimulation.Noise:  Gaussian noise is added to the velocity. Value in Degree
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Noise = 0
 
@@ -133,14 +137,14 @@
 # ArmarX.KinematicUnitSimulation.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.KinematicUnitSimulation.ObjectName = Armar3KinematicUnit
 
 
 # ArmarX.KinematicUnitSimulation.RobotFileName:  Robot file name, e.g. robot_model.xml
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.KinematicUnitSimulation.RobotFileName = ::_NOT_SET_::
 
@@ -148,24 +152,33 @@ ArmarX.KinematicUnitSimulation.ObjectName = Armar3KinematicUnit
 # ArmarX.KinematicUnitSimulation.RobotFileNameProject:  Project in which the robot filename is located (if robot is loaded from an external project)
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.RobotFileNameProject = ""
 
 
 # ArmarX.KinematicUnitSimulation.RobotNodeSetName:  Robot node set name as defined in robot xml file, e.g. 'LeftArm'
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.KinematicUnitSimulation.RobotNodeSetName = ::_NOT_SET_::
 
 
+# ArmarX.KinematicUnitSimulation.TopicPrefix:  Prefix for the sensor value topic name.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.KinematicUnitSimulation.TopicPrefix = ""
+
+
 # ArmarX.KinematicUnitSimulation.UsePDControllerForJointControl:  If true a PD controller is also used in Position Mode instead of setting the joint angles instantly
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitSimulation.UsePDControllerForJointControl = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitSimulation.UsePDControllerForJointControl = true
 
 
 # ArmarX.KinematicUnitSimulation.inheritFrom:  No Description
@@ -176,54 +189,87 @@ ArmarX.KinematicUnitSimulation.ObjectName = Armar3KinematicUnit
 ArmarX.KinematicUnitSimulation.inheritFrom = RobotConfig
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/PlatformUnitObserver.cfg b/scenarios/Armar3Replay/config/PlatformUnitObserver.cfg
index 3ee60be8d..54b9572d7 100644
--- a/scenarios/Armar3Replay/config/PlatformUnitObserver.cfg
+++ b/scenarios/Armar3Replay/config/PlatformUnitObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,25 +53,27 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitObserver.inheritFrom:  No Description
@@ -82,26 +84,44 @@
 ArmarX.KinematicUnitObserver.inheritFrom = RobotConfig
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.PlatformUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.PlatformUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.PlatformUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.PlatformUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.PlatformUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.PlatformUnitObserver.EnableProfiling = false
 
 
 # ArmarX.PlatformUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.PlatformUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -109,7 +129,7 @@ ArmarX.KinematicUnitObserver.inheritFrom = RobotConfig
 # ArmarX.PlatformUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.PlatformUnitObserver.MaxHistorySize = 5000
 
@@ -117,15 +137,16 @@ ArmarX.KinematicUnitObserver.inheritFrom = RobotConfig
 # ArmarX.PlatformUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.PlatformUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.PlatformUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.PlatformUnitObserver.ObjectName = ""
 
@@ -133,59 +154,76 @@ ArmarX.KinematicUnitObserver.inheritFrom = RobotConfig
 # ArmarX.PlatformUnitObserver.PlatformName:  Name of the platform (will publish values on PlatformName + 'State')
 #  Attributes:
 #  - Default:            Platform
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.PlatformUnitObserver.PlatformName = Platform
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/RobotStateComponent.cfg b/scenarios/Armar3Replay/config/RobotStateComponent.cfg
index 48a9b5a91..2755127da 100644
--- a/scenarios/Armar3Replay/config/RobotStateComponent.cfg
+++ b/scenarios/Armar3Replay/config/RobotStateComponent.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,62 +53,90 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
 # ArmarX.RobotStateComponent.AgentName:  Name of the agent for which the sensor values are provided
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.RobotStateComponent.AgentName = ::_NOT_SET_::
 
 
 # ArmarX.RobotStateComponent.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RobotStateComponent.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RobotStateComponent.EnableProfiling = false
+
+
+# ArmarX.RobotStateComponent.GlobalRobotPoseLocalizationTopicName:  Topic where the global robot pose can be reported.
+#  Attributes:
+#  - Default:            GlobalRobotPoseLocalization
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.RobotStateComponent.GlobalRobotPoseLocalizationTopicName = GlobalRobotPoseLocalization
 
 
 # ArmarX.RobotStateComponent.HistoryLength:  Number of entries in the robot state history
 #  Attributes:
 #  - Default:            10000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateComponent.HistoryLength = 10000
 
@@ -116,22 +144,31 @@
 # ArmarX.RobotStateComponent.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.RobotStateComponent.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.RobotStateComponent.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateComponent.ObjectName = ""
 
 
+# ArmarX.RobotStateComponent.PlatformTopicName:  Topic where platform state is published.
+#  Attributes:
+#  - Default:            PlatformState
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.RobotStateComponent.PlatformTopicName = PlatformState
+
+
 # ArmarX.RobotStateComponent.RobotFileName:  Filename of VirtualRobot robot model (e.g. robot_model.xml)
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.RobotStateComponent.RobotFileName = ::_NOT_SET_::
 
@@ -139,14 +176,14 @@
 # ArmarX.RobotStateComponent.RobotModelScaling:  Scaling of the robot model
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateComponent.RobotModelScaling = 1
 
 
 # ArmarX.RobotStateComponent.RobotNodeSetName:  Set of nodes that is controlled by the KinematicUnit
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.RobotStateComponent.RobotNodeSetName = ::_NOT_SET_::
 
@@ -154,11 +191,19 @@
 # ArmarX.RobotStateComponent.RobotStateReportingTopic:  Name of the topic on which updates of the robot state are reported.
 #  Attributes:
 #  - Default:            RobotStateUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateComponent.RobotStateReportingTopic = RobotStateUpdates
 
 
+# ArmarX.RobotStateComponent.TopicPrefix:  Prefix for the sensor value topic name.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.RobotStateComponent.TopicPrefix = ""
+
+
 # ArmarX.RobotStateComponent.inheritFrom:  No Description
 #  Attributes:
 #  - Default:            RobotConfig
@@ -169,24 +214,26 @@ ArmarX.RobotStateComponent.inheritFrom = RobotConfig
 
 # ArmarX.RobotStateObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RobotStateObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RobotStateObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.RobotStateObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RobotStateObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RobotStateObserver.EnableProfiling = false
 
 
 # ArmarX.RobotStateObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.MaxHistoryRecordFrequency = 50
 
@@ -194,7 +241,7 @@ ArmarX.RobotStateComponent.inheritFrom = RobotConfig
 # ArmarX.RobotStateObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.MaxHistorySize = 5000
 
@@ -202,15 +249,16 @@ ArmarX.RobotStateComponent.inheritFrom = RobotConfig
 # ArmarX.RobotStateObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.RobotStateObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.RobotStateObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.ObjectName = ""
 
@@ -218,43 +266,59 @@ ArmarX.RobotStateComponent.inheritFrom = RobotConfig
 # ArmarX.RobotStateObserver.TCPsToReport:  comma seperated list of nodesets' endeffectors, which poses and velocities that should be reported. * for all, empty for none
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.TCPsToReport = ""
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/SystemObserver.cfg b/scenarios/Armar3Replay/config/SystemObserver.cfg
index 759d45eb6..d69f324c7 100644
--- a/scenarios/Armar3Replay/config/SystemObserver.cfg
+++ b/scenarios/Armar3Replay/config/SystemObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,71 +53,101 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.SystemObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.SystemObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.SystemObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.SystemObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.SystemObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.SystemObserver.EnableProfiling = false
 
 
 # ArmarX.SystemObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SystemObserver.MaxHistoryRecordFrequency = 50
 
@@ -125,7 +155,7 @@
 # ArmarX.SystemObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SystemObserver.MaxHistorySize = 5000
 
@@ -133,43 +163,51 @@
 # ArmarX.SystemObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.SystemObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.SystemObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SystemObserver.ObjectName = ""
 
 
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
+
+
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/Armar3Replay/config/global.cfg b/scenarios/Armar3Replay/config/global.cfg
index db76b16bc..3c67b4f30 100644
--- a/scenarios/Armar3Replay/config/global.cfg
+++ b/scenarios/Armar3Replay/config/global.cfg
@@ -34,9 +34,6 @@ ArmarX.GlobalMinimumLoggingLevel = Verbose
 ArmarX.UseTimeServer = 0
 
 
-
-
-
 # RobotConfig.AgentName:  Custom Property
 #  Attributes:
 #  - Default:            ::NOT_DEFINED::
diff --git a/scenarios/CyberGloveObserver/CyberGloveObserver.scx b/scenarios/CyberGloveObserver/CyberGloveObserver.scx
index 54b11e89b..bdc701d47 100644
--- a/scenarios/CyberGloveObserver/CyberGloveObserver.scx
+++ b/scenarios/CyberGloveObserver/CyberGloveObserver.scx
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="CyberGloveObserver" creation="2018-12-06.19:23:53" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="CyberGloveObserverApp" instance="" package="RobotAPI" enabled="true"/>
+<scenario name="CyberGloveObserver" creation="2018-12-06.19:23:53" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="CyberGloveObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/CyberGloveObserver/config/CyberGloveObserverApp.cfg b/scenarios/CyberGloveObserver/config/CyberGloveObserverApp.cfg
index e83ba42a6..ef1481343 100644
--- a/scenarios/CyberGloveObserver/config/CyberGloveObserverApp.cfg
+++ b/scenarios/CyberGloveObserver/config/CyberGloveObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,39 +29,41 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
 
 # ArmarX.CyberGloveObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CyberGloveObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.CyberGloveObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.CyberGloveObserver.CyberGloveTopicName:  Name of the CyberGlove Topic
 #  Attributes:
 #  - Default:            CyberGloveValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CyberGloveObserver.CyberGloveTopicName = CyberGloveValues
 
 
 # ArmarX.CyberGloveObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CyberGloveObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.CyberGloveObserver.EnableProfiling = false
 
 
 # ArmarX.CyberGloveObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CyberGloveObserver.MaxHistoryRecordFrequency = 50
 
@@ -69,7 +71,7 @@
 # ArmarX.CyberGloveObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CyberGloveObserver.MaxHistorySize = 5000
 
@@ -77,15 +79,16 @@
 # ArmarX.CyberGloveObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.CyberGloveObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.CyberGloveObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CyberGloveObserver.ObjectName = ""
 
@@ -93,7 +96,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -101,7 +104,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -109,63 +112,83 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.LoadLibraries = ""
 
 
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -173,27 +196,26 @@
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/CyberGloveObserver/config/global.cfg b/scenarios/CyberGloveObserver/config/global.cfg
index 7020e0485..58d599f1f 100644
--- a/scenarios/CyberGloveObserver/config/global.cfg
+++ b/scenarios/CyberGloveObserver/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario CyberGloveObserver
 # ==================================================================
 
-
-
-
diff --git a/scenarios/GamepadControlUnit/GamepadControlUnit.scx b/scenarios/GamepadControlUnit/GamepadControlUnit.scx
index 65fb5e957..a22855b38 100644
--- a/scenarios/GamepadControlUnit/GamepadControlUnit.scx
+++ b/scenarios/GamepadControlUnit/GamepadControlUnit.scx
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="GamepadControlUnit" lastChange="2017-03-10.11:31:35" creation="2017-03-10.11:31:30" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="GamepadControlUnitApp" instance="" package="RobotAPI"/>
+<scenario name="GamepadControlUnit" creation="2017-03-10.11:31:30" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="GamepadControlUnitApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/GamepadControlUnit/config/GamepadControlUnitApp.cfg b/scenarios/GamepadControlUnit/config/GamepadControlUnitApp.cfg
index 3b8084595..72e2ba2c5 100644
--- a/scenarios/GamepadControlUnit/config/GamepadControlUnitApp.cfg
+++ b/scenarios/GamepadControlUnit/config/GamepadControlUnitApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,39 +53,42 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.GamepadControlUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.GamepadControlUnit.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.GamepadControlUnit.EnableProfiling = false
 
 
 # ArmarX.GamepadControlUnit.GamepadTopicName:  Name of the Gamepad Topic
 #  Attributes:
 #  - Default:            GamepadValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadControlUnit.GamepadTopicName = GamepadValues
 
@@ -93,15 +96,16 @@
 # ArmarX.GamepadControlUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.GamepadControlUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.GamepadControlUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadControlUnit.ObjectName = ""
 
@@ -109,64 +113,116 @@
 # ArmarX.GamepadControlUnit.PlatformUnitName:  Name of the platform unit to use
 #  Attributes:
 #  - Default:            Armar6IcePlatformUnit
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadControlUnit.PlatformUnitName = Armar6IcePlatformUnit
 
 
-# ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
+# ArmarX.GamepadControlUnit.ScaleAngle:  scaling factor in radian per second
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.GamepadControlUnit.ScaleAngle = 1
+
+
+# ArmarX.GamepadControlUnit.ScaleX:  scaling factor in mm per second
+#  Attributes:
+#  - Default:            1000
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.GamepadControlUnit.ScaleX = 1000
+
+
+# ArmarX.GamepadControlUnit.ScaleY:  scaling factor in mm per second
+#  Attributes:
+#  - Default:            1000
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.GamepadControlUnit.ScaleY = 1000
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+# ArmarX.LoggingGroup = ""
+
+
+# ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
+#  Attributes:
+#  - Default:            true
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-# Ice.Config:  Custom Property
-#  Attributes:
-#  - Default:            ::NOT_DEFINED::
-#  - Case sensitivity:   no
-#  - Required:           no
-# Ice.Config = ::NOT_DEFINED::
-
-
diff --git a/scenarios/GamepadControlUnit/config/global.cfg b/scenarios/GamepadControlUnit/config/global.cfg
index 63a93840d..82eec0e01 100644
--- a/scenarios/GamepadControlUnit/config/global.cfg
+++ b/scenarios/GamepadControlUnit/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario GamepadControlUnit
 # ==================================================================
 
-
-
-
diff --git a/scenarios/GamepadUnit/GamepadUnit.scx b/scenarios/GamepadUnit/GamepadUnit.scx
index 2efba7e18..1d00a624c 100644
--- a/scenarios/GamepadUnit/GamepadUnit.scx
+++ b/scenarios/GamepadUnit/GamepadUnit.scx
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="GamepadUnit" lastChange="2017-03-20.19:33:52" creation="2017-03-09.11:59:13" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="GamepadUnitApp" instance="" package="RobotAPI"/>
-	<application name="GamepadUnitObserverApp" instance="" package="RobotAPI"/>
-	<application name="GamepadControlUnitApp" instance="" package="RobotAPI"/>
+<scenario name="GamepadUnit" creation="2017-03-09.11:59:13" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="GamepadUnitApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="GamepadUnitObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="GamepadControlUnitApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/GamepadUnit/config/GamepadControlUnitApp.cfg b/scenarios/GamepadUnit/config/GamepadControlUnitApp.cfg
index 2773927c3..a66550bcf 100644
--- a/scenarios/GamepadUnit/config/GamepadControlUnitApp.cfg
+++ b/scenarios/GamepadUnit/config/GamepadControlUnitApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,15 +13,15 @@ ArmarX.AdditionalPackages = Default value not mapped.
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
 
@@ -29,7 +29,7 @@ ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.Config = ""
 
@@ -37,7 +37,7 @@ ArmarX.Config = ""
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@ ArmarX.DataPath = ""
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,39 +53,42 @@ ArmarX.DefaultPackages = Default value not mapped.
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.DisableLogging = 0
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.EnableProfiling = 0
 
 
 # ArmarX.GamepadControlUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.GamepadControlUnit.EnableProfiling = 0
 
 
 # ArmarX.GamepadControlUnit.GamepadTopicName:  Name of the Gamepad Topic
 #  Attributes:
 #  - Default:            GamepadValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.GamepadControlUnit.GamepadTopicName = GamepadValues
 
@@ -93,15 +96,16 @@ ArmarX.GamepadControlUnit.GamepadTopicName = GamepadValues
 # ArmarX.GamepadControlUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 ArmarX.GamepadControlUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.GamepadControlUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.GamepadControlUnit.ObjectName = ""
 
@@ -109,7 +113,7 @@ ArmarX.GamepadControlUnit.ObjectName = ""
 # ArmarX.GamepadControlUnit.PlatformUnitName:  Name of the platform unit to use
 #  Attributes:
 #  - Default:            Armar6IcePlatformUnit
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.GamepadControlUnit.PlatformUnitName = Armar6IcePlatformUnit
 
@@ -117,7 +121,7 @@ ArmarX.GamepadControlUnit.PlatformUnitName = Armar6IcePlatformUnit
 # ArmarX.GamepadControlUnit.ScaleAngle:  scaling factor in radian per second
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.GamepadControlUnit.ScaleAngle = -1
 
@@ -125,7 +129,7 @@ ArmarX.GamepadControlUnit.ScaleAngle = -1
 # ArmarX.GamepadControlUnit.ScaleX:  scaling factor in mm per second
 #  Attributes:
 #  - Default:            1000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.GamepadControlUnit.ScaleX = 500
 
@@ -133,59 +137,92 @@ ArmarX.GamepadControlUnit.ScaleX = 500
 # ArmarX.GamepadControlUnit.ScaleY:  scaling factor in mm per second
 #  Attributes:
 #  - Default:            1000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.GamepadControlUnit.ScaleY = -500
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.RedirectStdout = 1
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.StartDebuggerOnCrash = 0
 
 
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
+
+
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.UseTimeServer = 0
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/GamepadUnit/config/GamepadUnitApp.cfg b/scenarios/GamepadUnit/config/GamepadUnitApp.cfg
index d30f64a82..d8558e66f 100644
--- a/scenarios/GamepadUnit/config/GamepadUnitApp.cfg
+++ b/scenarios/GamepadUnit/config/GamepadUnitApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,39 +53,42 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.GamepadUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.GamepadUnit.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.GamepadUnit.EnableProfiling = false
 
 
 # ArmarX.GamepadUnit.GamepadDeviceName:  device that will be opened as a gamepad
 #  Attributes:
 #  - Default:            /dev/input/js2
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.GamepadUnit.GamepadDeviceName = /dev/input/js0
 
@@ -93,7 +96,7 @@ ArmarX.GamepadUnit.GamepadDeviceName = /dev/input/js0
 # ArmarX.GamepadUnit.GamepadTopicName:  Name of the Gamepad Topic
 #  Attributes:
 #  - Default:            GamepadValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadUnit.GamepadTopicName = GamepadValues
 
@@ -101,67 +104,109 @@ ArmarX.GamepadUnit.GamepadDeviceName = /dev/input/js0
 # ArmarX.GamepadUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.GamepadUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.GamepadUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadUnit.ObjectName = ""
 
 
+# ArmarX.GamepadUnit.PublishTimeout:  In Milliseconds. Timeout after which the gamepad data is not published after, if no new data was read from the gamepad
+#  Attributes:
+#  - Default:            2000
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.GamepadUnit.PublishTimeout = 2000
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/GamepadUnit/config/GamepadUnitObserverApp.cfg b/scenarios/GamepadUnit/config/GamepadUnitObserverApp.cfg
index 27e3b329d..c24a07f46 100644
--- a/scenarios/GamepadUnit/config/GamepadUnitObserverApp.cfg
+++ b/scenarios/GamepadUnit/config/GamepadUnitObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,47 +53,59 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.GamepadUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.GamepadUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.GamepadUnitObserver.DebugDrawerTopic:  Name of the DebugDrawerTopic
 #  Attributes:
 #  - Default:            DebugDrawerUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadUnitObserver.DebugDrawerTopic = DebugDrawerUpdates
 
 
 # ArmarX.GamepadUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.GamepadUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.GamepadUnitObserver.EnableProfiling = false
 
 
 # ArmarX.GamepadUnitObserver.GamepadTopicName:  Name of the Gamepad Topic
 #  Attributes:
 #  - Default:            GamepadValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadUnitObserver.GamepadTopicName = GamepadValues
 
@@ -101,7 +113,7 @@
 # ArmarX.GamepadUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -109,7 +121,7 @@
 # ArmarX.GamepadUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadUnitObserver.MaxHistorySize = 5000
 
@@ -117,67 +129,101 @@
 # ArmarX.GamepadUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.GamepadUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.GamepadUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.GamepadUnitObserver.ObjectName = ""
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/GamepadUnit/config/global.cfg b/scenarios/GamepadUnit/config/global.cfg
index 887b1b11a..9130613d6 100644
--- a/scenarios/GamepadUnit/config/global.cfg
+++ b/scenarios/GamepadUnit/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario GamepadUnit
 # ==================================================================
 
-
-
-
diff --git a/scenarios/KITProstheticHand/KITProstheticHand.scx b/scenarios/KITProstheticHand/KITProstheticHand.scx
index 21da9ad82..8303c3545 100644
--- a/scenarios/KITProstheticHand/KITProstheticHand.scx
+++ b/scenarios/KITProstheticHand/KITProstheticHand.scx
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="KITProstheticHand" creation="2018-09-19.15:47:59" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="ProsthesisObserverApp" instance="" package="RobotAPI" enabled="true"/>
-	<application name="ExternalApplicationManager" instance="" package="ArmarXCore" enabled="true"/>
+<scenario name="KITProstheticHand" creation="2018-09-19.15:47:59" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="ProsthesisObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ExternalApplicationManager" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/KITProstheticHand/config/ExternalApplicationManager.cfg b/scenarios/KITProstheticHand/config/ExternalApplicationManager.cfg
index e922cb658..a9dd2a5e1 100644
--- a/scenarios/KITProstheticHand/config/ExternalApplicationManager.cfg
+++ b/scenarios/KITProstheticHand/config/ExternalApplicationManager.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,31 +53,33 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.ExternalApplicationManager.AdditionalEnvVars:  Comma-seperated list of env-var assignment, e.g. MYVAR=1,ADDPATH=/tmp
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.AdditionalEnvVars = Default value not mapped.
 
@@ -85,14 +87,14 @@
 # ArmarX.ExternalApplicationManager.ApplicationArguments:  Comma separated list of command line parameters. Commas in double-quoted strings are ignored.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.ApplicationArguments = ""
 
 
 # ArmarX.ExternalApplicationManager.ApplicationPath:  Either the name of the application if its directory is part of the PATH environment variable of the system or it is located in an ArmarX-package, or the relative or absolute path to the application.
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.ExternalApplicationManager.ApplicationPath = ::_NOT_SET_::
 
@@ -100,47 +102,50 @@
 # ArmarX.ExternalApplicationManager.ArmarXPackage:  Set this property if the application is located in an ArmarX-package.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.ArmarXPackage = ""
 
 
 # ArmarX.ExternalApplicationManager.BinaryPathAsWorkingDirectory:  If true the path of the binary is set as the working directory.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ExternalApplicationManager.BinaryPathAsWorkingDirectory = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ExternalApplicationManager.BinaryPathAsWorkingDirectory = false
 
 
 # ArmarX.ExternalApplicationManager.Dependencies:  Comma-seperated list of Ice Object dependencies. The external app will only be started after all dependencies have been found.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.Dependencies = Default value not mapped.
 
 
 # ArmarX.ExternalApplicationManager.DisconnectInCaseOfCrash:  Whether this component should disconnect as long as the application is not running.
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ExternalApplicationManager.DisconnectInCaseOfCrash = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ExternalApplicationManager.DisconnectInCaseOfCrash = true
 
 
 # ArmarX.ExternalApplicationManager.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ExternalApplicationManager.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ExternalApplicationManager.EnableProfiling = false
 
 
 # ArmarX.ExternalApplicationManager.FakeObjectDelayedStartKeyword:  If not empty, the start up of the fake armarx object will be delayed until this keyword is found in the stdout of the subprocess.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.FakeObjectDelayedStartKeyword = ""
 
@@ -148,7 +153,7 @@
 # ArmarX.ExternalApplicationManager.FakeObjectStartDelay:  Delay in ms after which the fake armarx object is started on which other apps can depend. Not used if property FakeObjectDelayedStartKeyword is used.
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.FakeObjectStartDelay = 0
 
@@ -156,7 +161,7 @@
 # ArmarX.ExternalApplicationManager.KillDelay:  Delay ins ms before the subprocess is killed after sending the stop signal
 #  Attributes:
 #  - Default:            2000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.KillDelay = 2000
 
@@ -164,79 +169,109 @@
 # ArmarX.ExternalApplicationManager.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.ExternalApplicationManager.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.ExternalApplicationManager.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.ObjectName = ""
 
 
 # ArmarX.ExternalApplicationManager.PythonUnbuffered:  If true, PYTHONUNBUFFERED=1 is added to the environment variables.
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ExternalApplicationManager.PythonUnbuffered = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ExternalApplicationManager.PythonUnbuffered = true
 
 
 # ArmarX.ExternalApplicationManager.RedirectToArmarXLog:  If true, all outputs from the subprocess are printed with ARMARX_LOG, otherwise with std::cout
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ExternalApplicationManager.RedirectToArmarXLog = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ExternalApplicationManager.RedirectToArmarXLog = true
 
 
 # ArmarX.ExternalApplicationManager.RestartInCaseOfCrash:  Whether the application should be restarted in case it crashed.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ExternalApplicationManager.RestartInCaseOfCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ExternalApplicationManager.RestartInCaseOfCrash = false
 
 
 # ArmarX.ExternalApplicationManager.WorkingDirectory:  If set, this path is used as working directory for the external app. This overrides BinaryPathAsWorkingDirectory. ${HOME} for env vars, $C{RobotAPI:BINARY_DIR} for CMakePackageFinder vars
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ExternalApplicationManager.WorkingDirectory = ""
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -244,27 +279,26 @@
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KITProstheticHand/config/global.cfg b/scenarios/KITProstheticHand/config/global.cfg
index f466c4d60..6c6974a12 100644
--- a/scenarios/KITProstheticHand/config/global.cfg
+++ b/scenarios/KITProstheticHand/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario KITProstheticHand
 # ==================================================================
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/KinematicSimulationArmar3.scx b/scenarios/KinematicSimulationArmar3/KinematicSimulationArmar3.scx
index 39370e40e..c774d9d2e 100644
--- a/scenarios/KinematicSimulationArmar3/KinematicSimulationArmar3.scx
+++ b/scenarios/KinematicSimulationArmar3/KinematicSimulationArmar3.scx
@@ -1,14 +1,16 @@
-<scenario name='KinematicSimulationArmar3' lastChange='2016-10-26.14:27:39' creation='2016-10-26.14:27:39' globalConfigName='./config/Global.cfg' package='RobotAPI'>
-<application name='KinematicUnitSimulation' instance='' package='RobotAPI'/>
-<application name='KinematicUnitObserver' instance='' package='RobotAPI'/>
-<application name='HeadIKUnit' instance='' package='RobotAPI'/>
-<application name='TCPControlUnit' instance='' package='RobotAPI'/>
-<application name='HandUnitSimulation' instance='LeftHand' package='RobotAPI'/>
-<application name='HandUnitSimulation' instance='RightHand' package='RobotAPI'/>
-<application name='ForceTorqueUnitSimulation' instance='' package='RobotAPI'/>
-<application name='ForceTorqueObserver' instance='' package='RobotAPI'/>
-<application name='DebugObserver' instance='' package='ArmarXCore'/>
-<application name='ConditionHandler' instance='' package='ArmarXCore'/>
-<application name='SystemObserver' instance='' package='ArmarXCore'/>
-<application name='RobotStateComponent' instance='' package='RobotAPI'/>
-</scenario>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<scenario name="KinematicSimulationArmar3" creation="2016-10-26.14:27:39" globalConfigName="./config/Global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="KinematicUnitSimulation" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="KinematicUnitObserver" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="HeadIKUnit" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="TCPControlUnit" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="HandUnitSimulation" instance="LeftHand" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="HandUnitSimulation" instance="RightHand" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ForceTorqueUnitSimulation" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ForceTorqueObserver" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="DebugObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ConditionHandler" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="SystemObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="RobotStateComponent" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+</scenario>
+
diff --git a/scenarios/KinematicSimulationArmar3/config/ConditionHandler.cfg b/scenarios/KinematicSimulationArmar3/config/ConditionHandler.cfg
index ccb6c92eb..2073d08cf 100644
--- a/scenarios/KinematicSimulationArmar3/config/ConditionHandler.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/ConditionHandler.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,23 +21,24 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.ConditionHandler.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ConditionHandler.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ConditionHandler.EnableProfiling = false
 
 
 # ArmarX.ConditionHandler.HistoryLength:  Length of condition history kept by the conditionhandler
 #  Attributes:
 #  - Default:            1000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ConditionHandler.HistoryLength = 1000
 
@@ -45,15 +46,16 @@
 # ArmarX.ConditionHandler.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.ConditionHandler.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.ConditionHandler.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ConditionHandler.ObjectName = ""
 
@@ -61,7 +63,7 @@
 # ArmarX.ConditionHandler.Observers:  Comma seperated observer list
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.ConditionHandler.Observers = Armar3KinematicUnitObserver,SystemObserver
 
@@ -69,7 +71,7 @@ ArmarX.ConditionHandler.Observers = Armar3KinematicUnitObserver,SystemObserver
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -77,7 +79,7 @@ ArmarX.ConditionHandler.Observers = Armar3KinematicUnitObserver,SystemObserver
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -85,7 +87,7 @@ ArmarX.ConditionHandler.Observers = Armar3KinematicUnitObserver,SystemObserver
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -93,55 +95,83 @@ ArmarX.ConditionHandler.Observers = Armar3KinematicUnitObserver,SystemObserver
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -149,27 +179,26 @@ ArmarX.ConditionHandler.Observers = Armar3KinematicUnitObserver,SystemObserver
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/DebugObserver.cfg b/scenarios/KinematicSimulationArmar3/config/DebugObserver.cfg
index 30ca8b9cb..4a0b9dac0 100644
--- a/scenarios/KinematicSimulationArmar3/config/DebugObserver.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/DebugObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,39 +37,41 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
 
 # ArmarX.DebugObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DebugObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DebugObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.DebugObserver.DebugObserverTopicName:  Name of the topic the DebugObserver listens on
 #  Attributes:
 #  - Default:            DebugObserver
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.DebugObserverTopicName = DebugObserver
 
 
 # ArmarX.DebugObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DebugObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DebugObserver.EnableProfiling = false
 
 
 # ArmarX.DebugObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.MaxHistoryRecordFrequency = 50
 
@@ -77,7 +79,7 @@
 # ArmarX.DebugObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.MaxHistorySize = 5000
 
@@ -85,15 +87,16 @@
 # ArmarX.DebugObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.DebugObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.DebugObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DebugObserver.ObjectName = ""
 
@@ -101,7 +104,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -109,55 +112,83 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -165,27 +196,26 @@
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/ForceTorqueObserver.cfg b/scenarios/KinematicSimulationArmar3/config/ForceTorqueObserver.cfg
index 86c5d8798..bafb4c973 100644
--- a/scenarios/KinematicSimulationArmar3/config/ForceTorqueObserver.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/ForceTorqueObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,46 +53,50 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.ForceTorqueUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ForceTorqueUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ForceTorqueUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.ForceTorqueUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ForceTorqueUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ForceTorqueUnitObserver.EnableProfiling = false
 
 
 # ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName:  Name of the ForceTorqueUnit Topic
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = "ForceTorqueValues"
 
@@ -100,7 +104,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = "ForceTorqueValues"
 # ArmarX.ForceTorqueUnitObserver.ForceVisualizerFactor:  Factor by which the forces are scaled to fit into 0..1 (only for visulization) 
 #  Attributes:
 #  - Default:            0.00999999978
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.ForceVisualizerFactor = 0.00999999978
 
@@ -108,7 +112,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = "ForceTorqueValues"
 # ArmarX.ForceTorqueUnitObserver.MaxExpectedTorqueValue:  The torque visualization circle reaches the full circle at this value
 #  Attributes:
 #  - Default:            30
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxExpectedTorqueValue = 30
 
@@ -116,7 +120,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = "ForceTorqueValues"
 # ArmarX.ForceTorqueUnitObserver.MaxForceArrowLength:  Length of the force visu arrow in mm
 #  Attributes:
 #  - Default:            150
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxForceArrowLength = 150
 
@@ -124,7 +128,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = "ForceTorqueValues"
 # ArmarX.ForceTorqueUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -132,7 +136,7 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = "ForceTorqueValues"
 # ArmarX.ForceTorqueUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.MaxHistorySize = 5000
 
@@ -140,15 +144,16 @@ ArmarX.ForceTorqueUnitObserver.ForceTorqueTopicName = "ForceTorqueValues"
 # ArmarX.ForceTorqueUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.ForceTorqueUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.ForceTorqueUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 
@@ -156,7 +161,7 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.RobotStateComponentName:  Name of the RobotStateComponent that should be used
 #  Attributes:
 #  - Default:            RobotStateComponent
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.RobotStateComponentName = RobotStateComponent
 
@@ -164,7 +169,7 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.RobotUpdateFrequency:  Update frequency of the local robot
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.RobotUpdateFrequency = 50
 
@@ -172,7 +177,7 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.SensorRobotNodeMapping:  Triplets of sensor node name, target frame robot node name and optional channel name: Sensor values are also reported in the frame of the robot node: e. g. SensorName:RobotNodeName[:ChannelName],SensorName2:RobotNodeName2[:ChannelName2]
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.SensorRobotNodeMapping = ""
 
@@ -180,55 +185,82 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.ForceTorqueUnitObserver.TorqueVisuDeadZone:  Torques below this threshold are not visualized.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.TorqueVisuDeadZone = 1
 
 
 # ArmarX.ForceTorqueUnitObserver.VisualizeForce:  Visualize the force with an arrow in the debug drawer
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ForceTorqueUnitObserver.VisualizeForce = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ForceTorqueUnitObserver.VisualizeForce = true
 
 
 # ArmarX.ForceTorqueUnitObserver.VisualizeForceUpdateFrequency:  Frequency with which the force is visualized
 #  Attributes:
 #  - Default:            30
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitObserver.VisualizeForceUpdateFrequency = 30
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -236,27 +268,26 @@ ArmarX.ForceTorqueUnitObserver.ObjectName = "Armar3ForceTorqueObserver"
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/ForceTorqueUnitSimulation.cfg b/scenarios/KinematicSimulationArmar3/config/ForceTorqueUnitSimulation.cfg
index e6524d2d9..a398c8b8a 100644
--- a/scenarios/KinematicSimulationArmar3/config/ForceTorqueUnitSimulation.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/ForceTorqueUnitSimulation.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,46 +53,49 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.ForceTorqueUnitSimulation.AgentName:  name of the robot agent
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.ForceTorqueUnitSimulation.AgentName = Armar3
 
 
 # ArmarX.ForceTorqueUnitSimulation.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.ForceTorqueUnitSimulation.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.ForceTorqueUnitSimulation.EnableProfiling = false
 
 
 # ArmarX.ForceTorqueUnitSimulation.ForceTorqueTopicName:  Name of the topic on which the sensor values are provided
 #  Attributes:
 #  - Default:            ForceTorqueValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitSimulation.ForceTorqueTopicName = ForceTorqueValues
 
@@ -100,7 +103,7 @@ ArmarX.ForceTorqueUnitSimulation.AgentName = Armar3
 # ArmarX.ForceTorqueUnitSimulation.IntervalMs:  The time in milliseconds between two calls to the simulation method.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitSimulation.IntervalMs = 50
 
@@ -108,54 +111,81 @@ ArmarX.ForceTorqueUnitSimulation.AgentName = Armar3
 # ArmarX.ForceTorqueUnitSimulation.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.ForceTorqueUnitSimulation.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.ForceTorqueUnitSimulation.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ForceTorqueUnitSimulation.ObjectName = ""
 
 
 # ArmarX.ForceTorqueUnitSimulation.SensorNames:  simulated sensor name. seperated by comma
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.ForceTorqueUnitSimulation.SensorNames = TCP L, TCP R
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -163,27 +193,26 @@ ArmarX.ForceTorqueUnitSimulation.SensorNames = TCP L, TCP R
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/Global.cfg b/scenarios/KinematicSimulationArmar3/config/Global.cfg
index 28ed7cfec..5abe48272 100644
--- a/scenarios/KinematicSimulationArmar3/config/Global.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/Global.cfg
@@ -18,9 +18,6 @@ ArmarX.DisableLogging = no
 ArmarX.GlobalMinimumLoggingLevel = Verbose
 
 
-
-
-
 # VisionX.DisableLogging:  Custom Property
 #  Attributes:
 #  - Default:            ::NOT_DEFINED::
diff --git a/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.LeftHand.cfg b/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.LeftHand.cfg
index 9cf020864..bb79f699c 100644
--- a/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.LeftHand.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.LeftHand.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,45 +53,48 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.HandUnitSimulation.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.HandUnitSimulation.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.HandUnitSimulation.EnableProfiling = false
 
 
 # ArmarX.HandUnitSimulation.EndeffectorName:  Name of the endeffector as stored in the XML file (will publish values on EndeffectorName + 'State')
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.HandUnitSimulation.EndeffectorName = TCP L
 
 
 # ArmarX.HandUnitSimulation.KinematicUnitName:  Name of the kinematic unit that should be used
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.HandUnitSimulation.KinematicUnitName = ::_NOT_SET_::
 
@@ -99,54 +102,81 @@ ArmarX.HandUnitSimulation.EndeffectorName = TCP L
 # ArmarX.HandUnitSimulation.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.HandUnitSimulation.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.HandUnitSimulation.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.HandUnitSimulation.ObjectName = "LeftHandUnit"
 
 
 # ArmarX.HandUnitSimulation.RobotFileName:  VirtualRobot XML file in which the endeffector is is stored.
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.HandUnitSimulation.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -154,27 +184,26 @@ ArmarX.HandUnitSimulation.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.RightHand.cfg b/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.RightHand.cfg
index 46e2603eb..fd03aedfd 100644
--- a/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.RightHand.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/HandUnitSimulation.RightHand.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,45 +53,48 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.HandUnitSimulation.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.HandUnitSimulation.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.HandUnitSimulation.EnableProfiling = false
 
 
 # ArmarX.HandUnitSimulation.EndeffectorName:  Name of the endeffector as stored in the XML file (will publish values on EndeffectorName + 'State')
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.HandUnitSimulation.EndeffectorName = TCP R
 
 
 # ArmarX.HandUnitSimulation.KinematicUnitName:  Name of the kinematic unit that should be used
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 # ArmarX.HandUnitSimulation.KinematicUnitName = ::_NOT_SET_::
 
@@ -99,54 +102,81 @@ ArmarX.HandUnitSimulation.EndeffectorName = TCP R
 # ArmarX.HandUnitSimulation.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.HandUnitSimulation.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.HandUnitSimulation.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.HandUnitSimulation.ObjectName = "RightHandUnit"
 
 
 # ArmarX.HandUnitSimulation.RobotFileName:  VirtualRobot XML file in which the endeffector is is stored.
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.HandUnitSimulation.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -154,27 +184,26 @@ ArmarX.HandUnitSimulation.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/HeadIKUnit.cfg b/scenarios/KinematicSimulationArmar3/config/HeadIKUnit.cfg
index 907db9f10..c57bf5477 100644
--- a/scenarios/KinematicSimulationArmar3/config/HeadIKUnit.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/HeadIKUnit.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,54 +53,57 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.HeadIKUnit.CycleTime:  Cycle time of the tcp control in ms
 #  Attributes:
 #  - Default:            30
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.HeadIKUnit.CycleTime = 30
 
 
 # ArmarX.HeadIKUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.HeadIKUnit.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.HeadIKUnit.EnableProfiling = false
 
 
 # ArmarX.HeadIKUnit.HeadIKUnitTopicName:  Name of the HeadIKUnit Topic
 #  Attributes:
 #  - Default:            HeadIKUnitTopic
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.HeadIKUnit.HeadIKUnitTopicName = HeadIKUnitTopic
 
 
 # ArmarX.HeadIKUnit.KinematicUnitName:  Name of the KinematicUnit Proxy
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.HeadIKUnit.KinematicUnitName = "Armar3KinematicUnit"
 
@@ -108,15 +111,16 @@ ArmarX.HeadIKUnit.KinematicUnitName = "Armar3KinematicUnit"
 # ArmarX.HeadIKUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.HeadIKUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.HeadIKUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.HeadIKUnit.ObjectName = ""
 
@@ -124,47 +128,74 @@ ArmarX.HeadIKUnit.KinematicUnitName = "Armar3KinematicUnit"
 # ArmarX.HeadIKUnit.RobotStateComponentName:  Name of the RobotStateComponent that should be used
 #  Attributes:
 #  - Default:            RobotStateComponent
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.HeadIKUnit.RobotStateComponentName = RobotStateComponent
 
 
 # ArmarX.HeadIKUnit.VisualizeIKTarget:  Visualize the current IK target using the debug drawer
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.HeadIKUnit.VisualizeIKTarget = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.HeadIKUnit.VisualizeIKTarget = true
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -172,27 +203,26 @@ ArmarX.HeadIKUnit.KinematicUnitName = "Armar3KinematicUnit"
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/KinematicUnitObserver.cfg b/scenarios/KinematicSimulationArmar3/config/KinematicUnitObserver.cfg
index 27c3fd1cd..3453b44e5 100644
--- a/scenarios/KinematicSimulationArmar3/config/KinematicUnitObserver.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/KinematicUnitObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,47 +53,51 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.KinematicUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitObserver.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -101,7 +105,7 @@
 # ArmarX.KinematicUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitObserver.MaxHistorySize = 5000
 
@@ -109,22 +113,23 @@
 # ArmarX.KinematicUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.KinematicUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.KinematicUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.KinematicUnitObserver.ObjectName = Armar3KinematicUnitObserver
 
 
 # ArmarX.KinematicUnitObserver.RobotFileName:  Robot file name, e.g. robot_model.xml
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.KinematicUnitObserver.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 
@@ -132,46 +137,80 @@ ArmarX.KinematicUnitObserver.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 # ArmarX.KinematicUnitObserver.RobotFileNameProject:  Project in which the robot filename is located (if robot is loaded from an external project)
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitObserver.RobotFileNameProject = ""
 
 
 # ArmarX.KinematicUnitObserver.RobotNodeSetName:  Robot node set name as defined in robot xml file, e.g. 'LeftArm'
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.KinematicUnitObserver.RobotNodeSetName = Robot
 
 
+# ArmarX.KinematicUnitObserver.TopicPrefix:  Prefix for the sensor value topic name.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.KinematicUnitObserver.TopicPrefix = ""
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -179,27 +218,26 @@ ArmarX.KinematicUnitObserver.RobotNodeSetName = Robot
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/KinematicUnitSimulation.cfg b/scenarios/KinematicSimulationArmar3/config/KinematicUnitSimulation.cfg
index 58f4dfb11..b2559b37d 100644
--- a/scenarios/KinematicSimulationArmar3/config/KinematicUnitSimulation.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/KinematicUnitSimulation.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,39 +53,42 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitSimulation.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitSimulation.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitSimulation.EnableProfiling = false
 
 
 # ArmarX.KinematicUnitSimulation.IntervalMs:  The time in milliseconds between two calls to the simulation method.
 #  Attributes:
 #  - Default:            10
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.IntervalMs = 10
 
@@ -93,7 +96,7 @@
 # ArmarX.KinematicUnitSimulation.Kd:  derivative gain of the PID position controller.
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Kd = 0
 
@@ -101,7 +104,7 @@
 # ArmarX.KinematicUnitSimulation.Ki:  integral gain of the PID position controller.
 #  Attributes:
 #  - Default:            0.00100000005
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Ki = 0.00100000005
 
@@ -109,7 +112,7 @@
 # ArmarX.KinematicUnitSimulation.Kp:  proportional gain of the PID position controller.
 #  Attributes:
 #  - Default:            3
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Kp = 3
 
@@ -117,15 +120,16 @@
 # ArmarX.KinematicUnitSimulation.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.KinematicUnitSimulation.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.KinematicUnitSimulation.Noise:  Gaussian noise is added to the velocity. Value in Degree
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.Noise = 0
 
@@ -133,14 +137,14 @@
 # ArmarX.KinematicUnitSimulation.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.KinematicUnitSimulation.ObjectName = Armar3KinematicUnit
 
 
 # ArmarX.KinematicUnitSimulation.RobotFileName:  Robot file name, e.g. robot_model.xml
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.KinematicUnitSimulation.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 
@@ -148,54 +152,89 @@ ArmarX.KinematicUnitSimulation.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.x
 # ArmarX.KinematicUnitSimulation.RobotFileNameProject:  Project in which the robot filename is located (if robot is loaded from an external project)
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.KinematicUnitSimulation.RobotFileNameProject = ""
 
 
 # ArmarX.KinematicUnitSimulation.RobotNodeSetName:  Robot node set name as defined in robot xml file, e.g. 'LeftArm'
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.KinematicUnitSimulation.RobotNodeSetName = Robot
 
 
+# ArmarX.KinematicUnitSimulation.TopicPrefix:  Prefix for the sensor value topic name.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.KinematicUnitSimulation.TopicPrefix = ""
+
+
 # ArmarX.KinematicUnitSimulation.UsePDControllerForJointControl:  If true a PD controller is also used in Position Mode instead of setting the joint angles instantly
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.KinematicUnitSimulation.UsePDControllerForJointControl = true
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.KinematicUnitSimulation.UsePDControllerForJointControl = 1
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -203,27 +242,26 @@ ArmarX.KinematicUnitSimulation.RobotNodeSetName = Robot
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/RobotStateComponent.cfg b/scenarios/KinematicSimulationArmar3/config/RobotStateComponent.cfg
index 2176d818f..6abd40cd6 100644
--- a/scenarios/KinematicSimulationArmar3/config/RobotStateComponent.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/RobotStateComponent.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,62 +53,90 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
 # ArmarX.RobotStateComponent.AgentName:  Name of the agent for which the sensor values are provided
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.RobotStateComponent.AgentName = Armar3
 
 
 # ArmarX.RobotStateComponent.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RobotStateComponent.EnableProfiling = false
+
+
+# ArmarX.RobotStateComponent.GlobalRobotPoseLocalizationTopicName:  Topic where the global robot pose can be reported.
+#  Attributes:
+#  - Default:            GlobalRobotPoseLocalization
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RobotStateComponent.EnableProfiling = 0
+# ArmarX.RobotStateComponent.GlobalRobotPoseLocalizationTopicName = GlobalRobotPoseLocalization
 
 
 # ArmarX.RobotStateComponent.HistoryLength:  Number of entries in the robot state history
 #  Attributes:
 #  - Default:            10000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateComponent.HistoryLength = 10000
 
@@ -116,22 +144,31 @@ ArmarX.RobotStateComponent.AgentName = Armar3
 # ArmarX.RobotStateComponent.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.RobotStateComponent.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.RobotStateComponent.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.RobotStateComponent.ObjectName = RobotStateComponent
 
 
+# ArmarX.RobotStateComponent.PlatformTopicName:  Topic where platform state is published.
+#  Attributes:
+#  - Default:            PlatformState
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.RobotStateComponent.PlatformTopicName = PlatformState
+
+
 # ArmarX.RobotStateComponent.RobotFileName:  Filename of VirtualRobot robot model (e.g. robot_model.xml)
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.RobotStateComponent.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 
@@ -139,14 +176,14 @@ ArmarX.RobotStateComponent.RobotFileName = RobotAPI/robots/Armar3/ArmarIII.xml
 # ArmarX.RobotStateComponent.RobotModelScaling:  Scaling of the robot model
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateComponent.RobotModelScaling = 1
 
 
 # ArmarX.RobotStateComponent.RobotNodeSetName:  Set of nodes that is controlled by the KinematicUnit
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.RobotStateComponent.RobotNodeSetName = Robot
 
@@ -154,31 +191,41 @@ ArmarX.RobotStateComponent.RobotNodeSetName = Robot
 # ArmarX.RobotStateComponent.RobotStateReportingTopic:  Name of the topic on which updates of the robot state are reported.
 #  Attributes:
 #  - Default:            RobotStateUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateComponent.RobotStateReportingTopic = RobotStateUpdates
 
 
+# ArmarX.RobotStateComponent.TopicPrefix:  Prefix for the sensor value topic name.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.RobotStateComponent.TopicPrefix = ""
+
+
 # ArmarX.RobotStateObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RobotStateObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RobotStateObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.RobotStateObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RobotStateObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RobotStateObserver.EnableProfiling = false
 
 
 # ArmarX.RobotStateObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.MaxHistoryRecordFrequency = 50
 
@@ -186,7 +233,7 @@ ArmarX.RobotStateComponent.RobotNodeSetName = Robot
 # ArmarX.RobotStateObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.MaxHistorySize = 5000
 
@@ -194,15 +241,16 @@ ArmarX.RobotStateComponent.RobotNodeSetName = Robot
 # ArmarX.RobotStateObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.RobotStateObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.RobotStateObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.ObjectName = ""
 
@@ -210,23 +258,32 @@ ArmarX.RobotStateComponent.RobotNodeSetName = Robot
 # ArmarX.RobotStateObserver.TCPsToReport:  comma seperated list of nodesets' endeffectors, which poses and velocities that should be reported. * for all, empty for none
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RobotStateObserver.TCPsToReport = ""
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -234,27 +291,26 @@ ArmarX.RobotStateComponent.RobotNodeSetName = Robot
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/SystemObserver.cfg b/scenarios/KinematicSimulationArmar3/config/SystemObserver.cfg
index 2a0fc5870..d69f324c7 100644
--- a/scenarios/KinematicSimulationArmar3/config/SystemObserver.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/SystemObserver.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,71 +53,101 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.SystemObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.SystemObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.SystemObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.SystemObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.SystemObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.SystemObserver.EnableProfiling = false
 
 
 # ArmarX.SystemObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SystemObserver.MaxHistoryRecordFrequency = 50
 
@@ -125,7 +155,7 @@
 # ArmarX.SystemObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SystemObserver.MaxHistorySize = 5000
 
@@ -133,15 +163,16 @@
 # ArmarX.SystemObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.SystemObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.SystemObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SystemObserver.ObjectName = ""
 
@@ -149,7 +180,7 @@
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -157,27 +188,26 @@
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/KinematicSimulationArmar3/config/TCPControlUnit.cfg b/scenarios/KinematicSimulationArmar3/config/TCPControlUnit.cfg
index 99111a636..0c50143d8 100644
--- a/scenarios/KinematicSimulationArmar3/config/TCPControlUnit.cfg
+++ b/scenarios/KinematicSimulationArmar3/config/TCPControlUnit.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,70 +53,99 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
 
 
 # ArmarX.TCPControlUnit.CycleTime:  Cycle time of the tcp control in ms
 #  Attributes:
 #  - Default:            30
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnit.CycleTime = 30
 
 
 # ArmarX.TCPControlUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.TCPControlUnit.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.TCPControlUnit.EnableProfiling = false
 
 
 # ArmarX.TCPControlUnit.KinematicUnitName:  Name of the KinematicUnit Proxy
 #  Attributes:
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           yes
 ArmarX.TCPControlUnit.KinematicUnitName = Armar3KinematicUnit
 
@@ -124,7 +153,7 @@ ArmarX.TCPControlUnit.KinematicUnitName = Armar3KinematicUnit
 # ArmarX.TCPControlUnit.LambdaDampedSVD:  Parameter used for smoothing the differential IK near singularities.
 #  Attributes:
 #  - Default:            0.100000001
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnit.LambdaDampedSVD = 0.100000001
 
@@ -132,7 +161,7 @@ ArmarX.TCPControlUnit.KinematicUnitName = Armar3KinematicUnit
 # ArmarX.TCPControlUnit.MaxJointVelocity:  Maximal joint velocity in rad/sec
 #  Attributes:
 #  - Default:            0.523500025
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnit.MaxJointVelocity = 0.523500025
 
@@ -148,15 +177,16 @@ ArmarX.TCPControlUnit.MaximumCommandDelay = 500
 # ArmarX.TCPControlUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.TCPControlUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.TCPControlUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnit.ObjectName = ""
 
@@ -164,7 +194,7 @@ ArmarX.TCPControlUnit.MaximumCommandDelay = 500
 # ArmarX.TCPControlUnit.RobotStateComponentName:  Name of the RobotStateComponent that should be used
 #  Attributes:
 #  - Default:            RobotStateComponent
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnit.RobotStateComponentName = RobotStateComponent
 
@@ -172,7 +202,7 @@ ArmarX.TCPControlUnit.MaximumCommandDelay = 500
 # ArmarX.TCPControlUnit.RobotStateTopicName:  Name of the RobotComponent State topic.
 #  Attributes:
 #  - Default:            RobotState
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnit.RobotStateTopicName = RobotState
 
@@ -180,7 +210,7 @@ ArmarX.TCPControlUnit.MaximumCommandDelay = 500
 # ArmarX.TCPControlUnit.TCPsToReport:  comma seperated list of nodesets' endeffectors, which poses and velocities that should be reported. * for all, empty for none
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.TCPControlUnit.TCPsToReport = TCP R,TCP L
 
@@ -195,24 +225,26 @@ ArmarX.TCPControlUnit.inheritFrom = RobotConfig
 
 # ArmarX.TCPControlUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.TCPControlUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.TCPControlUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.TCPControlUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.TCPControlUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.TCPControlUnitObserver.EnableProfiling = false
 
 
 # ArmarX.TCPControlUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -220,7 +252,7 @@ ArmarX.TCPControlUnit.inheritFrom = RobotConfig
 # ArmarX.TCPControlUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnitObserver.MaxHistorySize = 5000
 
@@ -228,15 +260,16 @@ ArmarX.TCPControlUnit.inheritFrom = RobotConfig
 # ArmarX.TCPControlUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.TCPControlUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.TCPControlUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TCPControlUnitObserver.ObjectName = ""
 
@@ -244,7 +277,7 @@ ArmarX.TCPControlUnit.inheritFrom = RobotConfig
 # ArmarX.TCPControlUnitObserver.TCPControlUnitName:  Name of the TCPControlUnit
 #  Attributes:
 #  - Default:            TCPControlUnit
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.TCPControlUnitObserver.TCPControlUnitName = TCPControlUnit
 
@@ -252,7 +285,7 @@ ArmarX.TCPControlUnitObserver.TCPControlUnitName = TCPControlUnit
 # ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
 #  Attributes:
 #  - Default:            1
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ThreadPoolSize = 1
 
@@ -260,27 +293,26 @@ ArmarX.TCPControlUnitObserver.TCPControlUnitName = TCPControlUnit
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/LaserScannerTest/LaserScannerTest.scx b/scenarios/LaserScannerTest/LaserScannerTest.scx
index 585406ce7..547aaca55 100644
--- a/scenarios/LaserScannerTest/LaserScannerTest.scx
+++ b/scenarios/LaserScannerTest/LaserScannerTest.scx
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="LaserScannerTest" creation="2017-03-07.16:12:47" lastChange="2017-03-07.16:12:47" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="HokuyoLaserUnitApp" instance="" package="RobotAPI" enabled="true"/>
-	<application name="LaserScannerUnitObserverApp" instance="" package="RobotAPI" enabled="true"/>
+<scenario name="LaserScannerTest" creation="2017-03-07.16:12:47" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="HokuyoLaserUnitApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="LaserScannerUnitObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/LaserScannerTest/config/HokuyoLaserUnitApp.cfg b/scenarios/LaserScannerTest/config/HokuyoLaserUnitApp.cfg
index effbf0059..64f5c48c0 100644
--- a/scenarios/LaserScannerTest/config/HokuyoLaserUnitApp.cfg
+++ b/scenarios/LaserScannerTest/config/HokuyoLaserUnitApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,55 +53,66 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.HokuyoLaserUnit.AngleOffset:  Offset is applied the raw angles before reporting them
 #  Attributes:
 #  - Default:            -2.3561945
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.HokuyoLaserUnit.AngleOffset = 0
 
 
+# ArmarX.HokuyoLaserUnit.DebugObserverName:  Name of the topic the DebugObserver listens on
+#  Attributes:
+#  - Default:            DebugObserver
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.HokuyoLaserUnit.DebugObserverName = DebugObserver
+
+
 # ArmarX.HokuyoLaserUnit.Devices:  List of devices in form of 'IP1,port1,frame1;IP2,port2,frame2;...'
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.HokuyoLaserUnit.Devices = "192.168.0.11,10940,Laser Scanner A"
 
 
 # ArmarX.HokuyoLaserUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.HokuyoLaserUnit.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.HokuyoLaserUnit.EnableProfiling = false
 
 
 # ArmarX.HokuyoLaserUnit.LaserScannerTopicName:  Name of the laser scan topic.
 #  Attributes:
 #  - Default:            LaserScans
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.HokuyoLaserUnit.LaserScannerTopicName = LaserScans
 
@@ -109,75 +120,117 @@ ArmarX.HokuyoLaserUnit.Devices = "192.168.0.11,10940,Laser Scanner A"
 # ArmarX.HokuyoLaserUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.HokuyoLaserUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.HokuyoLaserUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.HokuyoLaserUnit.ObjectName = ""
 
 
+# ArmarX.HokuyoLaserUnit.RobotHealthTopicName:  Name of the RobotHealth topic
+#  Attributes:
+#  - Default:            RobotHealthTopic
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.HokuyoLaserUnit.RobotHealthTopicName = RobotHealthTopic
+
+
 # ArmarX.HokuyoLaserUnit.UpdatePeriod:  Update period for laser scans
 #  Attributes:
 #  - Default:            25
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.HokuyoLaserUnit.UpdatePeriod = 25
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/LaserScannerTest/config/LaserScannerUnitObserverApp.cfg b/scenarios/LaserScannerTest/config/LaserScannerUnitObserverApp.cfg
index 5d4e2e744..18521b144 100644
--- a/scenarios/LaserScannerTest/config/LaserScannerUnitObserverApp.cfg
+++ b/scenarios/LaserScannerTest/config/LaserScannerUnitObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,47 +53,51 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
 
 
 # ArmarX.LaserScannerUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.LaserScannerUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.LaserScannerUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.LaserScannerUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.LaserScannerUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.LaserScannerUnitObserver.EnableProfiling = false
 
 
 # ArmarX.LaserScannerUnitObserver.LaserScannerTopicName:  Name of the laser scan topic.
 #  Attributes:
 #  - Default:            LaserScans
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.LaserScannerUnitObserver.LaserScannerTopicName = LaserScans
 
@@ -101,7 +105,7 @@
 # ArmarX.LaserScannerUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.LaserScannerUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -109,7 +113,7 @@
 # ArmarX.LaserScannerUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.LaserScannerUnitObserver.MaxHistorySize = 5000
 
@@ -117,67 +121,101 @@
 # ArmarX.LaserScannerUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.LaserScannerUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.LaserScannerUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.LaserScannerUnitObserver.ObjectName = ""
 
 
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
+
+
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/LaserScannerTest/config/global.cfg b/scenarios/LaserScannerTest/config/global.cfg
index e7cd7f670..da3749d6a 100644
--- a/scenarios/LaserScannerTest/config/global.cfg
+++ b/scenarios/LaserScannerTest/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario LaserScannerTest
 # ==================================================================
 
-
-
-
diff --git a/scenarios/MetaWearIMU/MetaWearIMU.scx b/scenarios/MetaWearIMU/MetaWearIMU.scx
index 4afe52b26..05d9a0606 100644
--- a/scenarios/MetaWearIMU/MetaWearIMU.scx
+++ b/scenarios/MetaWearIMU/MetaWearIMU.scx
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="MetaWearIMU" creation="2017-04-13.11:40:16" lastChange="2017-04-13.11:40:16" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="MetaWearIMUObserverApp" instance="" package="RobotAPI" enabled="true"/>
-	<application name="MetaWearIMUApp" instance="" package="RobotAPI" enabled="true"/>
+<scenario name="MetaWearIMU" creation="2017-04-13.11:40:16" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="MetaWearIMUObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="MetaWearIMUApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/MetaWearIMU/config/MetaWearIMUApp.cfg b/scenarios/MetaWearIMU/config/MetaWearIMUApp.cfg
index 4adf5c5a0..58bce6817 100644
--- a/scenarios/MetaWearIMU/config/MetaWearIMUApp.cfg
+++ b/scenarios/MetaWearIMU/config/MetaWearIMUApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,39 +53,58 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.MetaWearIMU.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.MetaWearIMU.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.MetaWearIMU.EnableProfiling = false
 
 
 # ArmarX.MetaWearIMU.MetaWearPythonTopicName:  Name of the topic provided by the python driver
 #  Attributes:
 #  - Default:            MetaWearPythonData
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMU.MetaWearPythonTopicName = MetaWearPythonData
 
@@ -93,7 +112,7 @@
 # ArmarX.MetaWearIMU.MetaWearTopicName:  Name of the MetaWear topic
 #  Attributes:
 #  - Default:            MetaWearData
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMU.MetaWearTopicName = MetaWearData
 
@@ -101,72 +120,85 @@
 # ArmarX.MetaWearIMU.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.MetaWearIMU.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.MetaWearIMU.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMU.ObjectName = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-# Ice.Config:  Custom Property
-#  Attributes:
-#  - Default:            ::NOT_DEFINED::
-#  - Case sensitivity:   no
-#  - Required:           no
-# Ice.Config = ::NOT_DEFINED::
-
-
diff --git a/scenarios/MetaWearIMU/config/MetaWearIMUObserverApp.cfg b/scenarios/MetaWearIMU/config/MetaWearIMUObserverApp.cfg
index bb94180a4..0132d7f4e 100644
--- a/scenarios/MetaWearIMU/config/MetaWearIMUObserverApp.cfg
+++ b/scenarios/MetaWearIMU/config/MetaWearIMUObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,55 +53,75 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.MetaWearIMUObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.MetaWearIMUObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.MetaWearIMUObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.MetaWearIMUObserver.DebugDrawerTopic:  Name of the DebugDrawerTopic
 #  Attributes:
 #  - Default:            DebugDrawerUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMUObserver.DebugDrawerTopic = DebugDrawerUpdates
 
 
 # ArmarX.MetaWearIMUObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.MetaWearIMUObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.MetaWearIMUObserver.EnableProfiling = false
 
 
 # ArmarX.MetaWearIMUObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMUObserver.MaxHistoryRecordFrequency = 50
 
@@ -109,7 +129,7 @@
 # ArmarX.MetaWearIMUObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMUObserver.MaxHistorySize = 5000
 
@@ -117,7 +137,7 @@
 # ArmarX.MetaWearIMUObserver.MetaWearTopicName:  Name of the MetaWear topic
 #  Attributes:
 #  - Default:            MetaWearData
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMUObserver.MetaWearTopicName = MetaWearData
 
@@ -125,72 +145,85 @@
 # ArmarX.MetaWearIMUObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.MetaWearIMUObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.MetaWearIMUObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.MetaWearIMUObserver.ObjectName = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-# Ice.Config:  Custom Property
-#  Attributes:
-#  - Default:            ::NOT_DEFINED::
-#  - Case sensitivity:   no
-#  - Required:           no
-# Ice.Config = ::NOT_DEFINED::
-
-
diff --git a/scenarios/MetaWearIMU/config/global.cfg b/scenarios/MetaWearIMU/config/global.cfg
index 920e0209b..f8a325d20 100644
--- a/scenarios/MetaWearIMU/config/global.cfg
+++ b/scenarios/MetaWearIMU/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario MetaWearIMU
 # ==================================================================
 
-
-
-
diff --git a/scenarios/OptoForceUnit/OptoForceUnit.scx b/scenarios/OptoForceUnit/OptoForceUnit.scx
index 7ede5163d..2a6faf6a9 100644
--- a/scenarios/OptoForceUnit/OptoForceUnit.scx
+++ b/scenarios/OptoForceUnit/OptoForceUnit.scx
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="OptoForceUnit" lastChange="2017-03-27.17:45:06" creation="2017-03-03.15:11:40" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="OptoForceUnitApp" instance="" package="RobotAPI"/>
-	<application name="OptoForceUnitObserverApp" instance="" package="RobotAPI"/>
+<scenario name="OptoForceUnit" creation="2017-03-03.15:11:40" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="OptoForceUnitApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="OptoForceUnitObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/OptoForceUnit/config/OptoForceUnitApp.cfg b/scenarios/OptoForceUnit/config/OptoForceUnitApp.cfg
index d51959056..e9e94f31c 100644
--- a/scenarios/OptoForceUnit/config/OptoForceUnitApp.cfg
+++ b/scenarios/OptoForceUnit/config/OptoForceUnitApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,55 +53,75 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.OptoForceUnit.CalibrationFilePath:  Path of the Calibration File
 #  Attributes:
 #  - Default:            RobotAPI/sensors/OptoForceCalibration.xml
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnit.CalibrationFilePath = RobotAPI/sensors/OptoForceCalibration.xml
 
 
 # ArmarX.OptoForceUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.OptoForceUnit.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.OptoForceUnit.EnableProfiling = false
 
 
 # ArmarX.OptoForceUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.OptoForceUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.OptoForceUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnit.ObjectName = ""
 
@@ -109,59 +129,76 @@
 # ArmarX.OptoForceUnit.OptoForceTopicName:  Name of the OptoForce Topic
 #  Attributes:
 #  - Default:            OptoForceValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnit.OptoForceTopicName = OptoForceValues
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/OptoForceUnit/config/OptoForceUnitObserverApp.cfg b/scenarios/OptoForceUnit/config/OptoForceUnitObserverApp.cfg
index 71109dc9a..5668a05ad 100644
--- a/scenarios/OptoForceUnit/config/OptoForceUnitObserverApp.cfg
+++ b/scenarios/OptoForceUnit/config/OptoForceUnitObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,55 +53,75 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.OptoForceUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.OptoForceUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.OptoForceUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.OptoForceUnitObserver.DebugDrawerTopic:  Name of the DebugDrawerTopic
 #  Attributes:
 #  - Default:            DebugDrawerUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnitObserver.DebugDrawerTopic = DebugDrawerUpdates
 
 
 # ArmarX.OptoForceUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.OptoForceUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.OptoForceUnitObserver.EnableProfiling = false
 
 
 # ArmarX.OptoForceUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -109,7 +129,7 @@
 # ArmarX.OptoForceUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnitObserver.MaxHistorySize = 5000
 
@@ -117,15 +137,16 @@
 # ArmarX.OptoForceUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.OptoForceUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.OptoForceUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnitObserver.ObjectName = ""
 
@@ -133,59 +154,76 @@
 # ArmarX.OptoForceUnitObserver.OptoForceTopicName:  Name of the OptoForce Topic
 #  Attributes:
 #  - Default:            OptoForceValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OptoForceUnitObserver.OptoForceTopicName = OptoForceValues
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/OptoForceUnit/config/global.cfg b/scenarios/OptoForceUnit/config/global.cfg
index 4602696c2..cd7d0de86 100644
--- a/scenarios/OptoForceUnit/config/global.cfg
+++ b/scenarios/OptoForceUnit/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario OptoForceUnit
 # ==================================================================
 
-
-
-
diff --git a/scenarios/OrientedTactileSensor/OrientedTactileSensor.scx b/scenarios/OrientedTactileSensor/OrientedTactileSensor.scx
index 23c06bee2..dd526ac62 100644
--- a/scenarios/OrientedTactileSensor/OrientedTactileSensor.scx
+++ b/scenarios/OrientedTactileSensor/OrientedTactileSensor.scx
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="OrientedTactileSensor" creation="2017-02-27.01:48:55 PM" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="OrientedTactileSensorUnitApp" instance="" package="RobotAPI" enabled="true"/>
-	<application name="OrientedTactileSensorUnitObserverApp" instance="" package="RobotAPI" enabled="true"/>
+<scenario name="OrientedTactileSensor" creation="2017-02-27.01:48:55 PM" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="OrientedTactileSensorUnitApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="OrientedTactileSensorUnitObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitApp.cfg b/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitApp.cfg
index 01ddb0e7e..3e751800a 100644
--- a/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitApp.cfg
+++ b/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,31 +53,49 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.OrientedTactileSensorUnit.CalibrationData:  Sensor Register Data to calibrate the sensor
 #  Attributes:
 #  - Default:            65524 3 12 65534 65534 1 1208 119 58726 1000 943 
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.OrientedTactileSensorUnit.CalibrationData = 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535
 
@@ -85,31 +103,33 @@ ArmarX.OrientedTactileSensorUnit.CalibrationData = 65535 65535 65535 65535 65535
 # ArmarX.OrientedTactileSensorUnit.DebugDrawerTopicName:  Name of the debug drawer topic that should be used
 #  Attributes:
 #  - Default:            DebugDrawerUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OrientedTactileSensorUnit.DebugDrawerTopicName = DebugDrawerUpdates
 
 
 # ArmarX.OrientedTactileSensorUnit.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.OrientedTactileSensorUnit.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.OrientedTactileSensorUnit.EnableProfiling = false
 
 
 # ArmarX.OrientedTactileSensorUnit.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.OrientedTactileSensorUnit.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.OrientedTactileSensorUnit.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OrientedTactileSensorUnit.ObjectName = ""
 
@@ -117,7 +137,7 @@ ArmarX.OrientedTactileSensorUnit.CalibrationData = 65535 65535 65535 65535 65535
 # ArmarX.OrientedTactileSensorUnit.SamplesAcceleration:  number of pressure values to differentiate
 #  Attributes:
 #  - Default:            20
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.OrientedTactileSensorUnit.SamplesAcceleration = 20
 
@@ -125,7 +145,7 @@ ArmarX.OrientedTactileSensorUnit.SamplesAcceleration = 20
 # ArmarX.OrientedTactileSensorUnit.SamplesPressure:  number of pressure values to differentiate
 #  Attributes:
 #  - Default:            10
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.OrientedTactileSensorUnit.SamplesPressure = 20
 
@@ -133,7 +153,7 @@ ArmarX.OrientedTactileSensorUnit.SamplesPressure = 20
 # ArmarX.OrientedTactileSensorUnit.SamplesRotation:  number of orientation values to differentiate
 #  Attributes:
 #  - Default:            20
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.OrientedTactileSensorUnit.SamplesRotation = 20
 
@@ -141,7 +161,7 @@ ArmarX.OrientedTactileSensorUnit.SamplesRotation = 20
 # ArmarX.OrientedTactileSensorUnit.SerialInterfaceDevice:  The serial device the arduino is connected to.
 #  Attributes:
 #  - Default:            /dev/ttyACM0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.OrientedTactileSensorUnit.SerialInterfaceDevice = /dev/ttyACM0
 
@@ -149,75 +169,94 @@ ArmarX.OrientedTactileSensorUnit.SerialInterfaceDevice = /dev/ttyACM0
 # ArmarX.OrientedTactileSensorUnit.TopicName:  Name of the topic on which the sensor values are provided
 #  Attributes:
 #  - Default:            OrientedTactileSensorValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.OrientedTactileSensorUnit.TopicName = OrientedTactileSensorValues
 
 
 # ArmarX.OrientedTactileSensorUnit.calibrateSensor:  
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.OrientedTactileSensorUnit.calibrateSensor = 0
 
 
-# ArmarX.OrientedTactileSensorUnit.logData:  Custom Property
+# ArmarX.OrientedTactileSensorUnit.logData:  log data from sensor
 #  Attributes:
-#  - Default:            ::NOT_DEFINED::
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
 ArmarX.OrientedTactileSensorUnit.logData = 1
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitObserverApp.cfg b/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitObserverApp.cfg
index 5f35ab285..994775b29 100644
--- a/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitObserverApp.cfg
+++ b/scenarios/OrientedTactileSensor/config/OrientedTactileSensorUnitObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,23 +13,23 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.CachePath = mongo/.cache
 
 
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,55 +53,75 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.OrientedTactileSensorUnitObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.OrientedTactileSensorUnitObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.OrientedTactileSensorUnitObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.OrientedTactileSensorUnitObserver.DebugDrawerTopic:  Name of the DebugDrawerTopic
 #  Attributes:
 #  - Default:            DebugDrawerUpdates
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OrientedTactileSensorUnitObserver.DebugDrawerTopic = DebugDrawerUpdates
 
 
 # ArmarX.OrientedTactileSensorUnitObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.OrientedTactileSensorUnitObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.OrientedTactileSensorUnitObserver.EnableProfiling = false
 
 
 # ArmarX.OrientedTactileSensorUnitObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OrientedTactileSensorUnitObserver.MaxHistoryRecordFrequency = 50
 
@@ -109,7 +129,7 @@
 # ArmarX.OrientedTactileSensorUnitObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OrientedTactileSensorUnitObserver.MaxHistorySize = 5000
 
@@ -117,15 +137,16 @@
 # ArmarX.OrientedTactileSensorUnitObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.OrientedTactileSensorUnitObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.OrientedTactileSensorUnitObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OrientedTactileSensorUnitObserver.ObjectName = ""
 
@@ -133,59 +154,76 @@
 # ArmarX.OrientedTactileSensorUnitObserver.SensorTopicName:  Name of the Sensor Topic.
 #  Attributes:
 #  - Default:            OrientedTactileSensorValues
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.OrientedTactileSensorUnitObserver.SensorTopicName = OrientedTactileSensorValues
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/OrientedTactileSensor/config/global.cfg b/scenarios/OrientedTactileSensor/config/global.cfg
index e3da6095b..220494ff4 100644
--- a/scenarios/OrientedTactileSensor/config/global.cfg
+++ b/scenarios/OrientedTactileSensor/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario OrientedTactileSensor
 # ==================================================================
 
-
-
-
diff --git a/scenarios/SpeechObserver/SpeechObserver.scx b/scenarios/SpeechObserver/SpeechObserver.scx
index 367b1f68d..a224960f4 100644
--- a/scenarios/SpeechObserver/SpeechObserver.scx
+++ b/scenarios/SpeechObserver/SpeechObserver.scx
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="SpeechObserver" creation="2018-05-24.11:20:15" globalConfigName="./config/global.cfg" package="RobotAPI">
-	<application name="SpeechObserverApp" instance="" package="RobotAPI" enabled="true"/>
-	<application name="DummyTextToSpeechApp" instance="" package="RobotAPI" enabled="true"/>
+<scenario name="SpeechObserver" creation="2018-05-24.11:20:15" globalConfigName="./config/global.cfg" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="SpeechObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="DummyTextToSpeechApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/SpeechObserver/config/DummyTextToSpeechApp.cfg b/scenarios/SpeechObserver/config/DummyTextToSpeechApp.cfg
index 3c85bf5a6..76e570e09 100644
--- a/scenarios/SpeechObserver/config/DummyTextToSpeechApp.cfg
+++ b/scenarios/SpeechObserver/config/DummyTextToSpeechApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,39 +53,42 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.DummyTextToSpeech.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DummyTextToSpeech.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DummyTextToSpeech.EnableProfiling = false
 
 
 # ArmarX.DummyTextToSpeech.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.DummyTextToSpeech.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.DummyTextToSpeech.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DummyTextToSpeech.ObjectName = ""
 
@@ -93,7 +96,7 @@
 # ArmarX.DummyTextToSpeech.TextToSpeechStateTopicName:  Name of the TextToSpeechStateTopic
 #  Attributes:
 #  - Default:            TextToSpeechState
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DummyTextToSpeech.TextToSpeechStateTopicName = TextToSpeechState
 
@@ -101,67 +104,101 @@
 # ArmarX.DummyTextToSpeech.TextToSpeechTopicName:  Name of the TextToSpeechTopic
 #  Attributes:
 #  - Default:            TextToSpeech
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DummyTextToSpeech.TextToSpeechTopicName = TextToSpeech
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/SpeechObserver/config/SpeechObserverApp.cfg b/scenarios/SpeechObserver/config/SpeechObserverApp.cfg
index 50707e292..5b538af11 100644
--- a/scenarios/SpeechObserver/config/SpeechObserverApp.cfg
+++ b/scenarios/SpeechObserver/config/SpeechObserverApp.cfg
@@ -5,7 +5,7 @@
 # ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.AdditionalPackages = Default value not mapped.
 
@@ -13,7 +13,7 @@
 # ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.ApplicationName = ""
 
@@ -21,7 +21,7 @@
 # ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
 #  - Default:            mongo/.cache
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.CachePath = mongo/.cache
 
@@ -29,7 +29,7 @@
 # ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.Config = ""
 
@@ -37,7 +37,7 @@
 # ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DataPath = ""
 
@@ -45,7 +45,7 @@
 # ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
 #  Attributes:
 #  - Default:            Default value not mapped.
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DefaultPackages = Default value not mapped.
 
@@ -53,63 +53,92 @@
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
 # ArmarX.DisableLogging:  Turn logging off in whole application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DisableLogging = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
 
 
 # ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.EnableProfiling = 0
+# ArmarX.LoadLibraries = ""
+
+
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
 
 # ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Default:            1
-#  - Case sensitivity:   no
+#  - Default:            true
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.RedirectStdout = 1
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
 # ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
 #  Attributes:
 #  - Default:            3000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.RemoteHandlesDeletionTimeout = 3000
 
 
-# ArmarX.SpeechObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.SpeechObserver.CreateUpdateFrequenciesChannel:  If true, an additional channel is created that shows the update frequency of every other channel in that observer.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.SpeechObserver.CreateUpdateFrequenciesChannel = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.SpeechObserver.CreateUpdateFrequenciesChannel = false
 
 
 # ArmarX.SpeechObserver.EnableProfiling:  enable profiler which is used for logging performance events
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.SpeechObserver.EnableProfiling = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.SpeechObserver.EnableProfiling = false
 
 
 # ArmarX.SpeechObserver.MaxHistoryRecordFrequency:  The Observer history is written with this maximum frequency. Everything faster is being skipped.
 #  Attributes:
 #  - Default:            50
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SpeechObserver.MaxHistoryRecordFrequency = 50
 
@@ -117,7 +146,7 @@
 # ArmarX.SpeechObserver.MaxHistorySize:  Maximum number of entries in the Observer history
 #  Attributes:
 #  - Default:            5000
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SpeechObserver.MaxHistorySize = 5000
 
@@ -125,15 +154,16 @@
 # ArmarX.SpeechObserver.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.SpeechObserver.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.SpeechObserver.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SpeechObserver.ObjectName = ""
 
@@ -141,7 +171,7 @@
 # ArmarX.SpeechObserver.TextToSpeechStateTopicName:  Name of the TextToSpeechStateTopic
 #  Attributes:
 #  - Default:            TextToSpeechState
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SpeechObserver.TextToSpeechStateTopicName = TextToSpeechState
 
@@ -149,43 +179,51 @@
 # ArmarX.SpeechObserver.TextToSpeechTopicName:  Name of the TextToSpeechTopic
 #  Attributes:
 #  - Default:            TextToSpeech
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.SpeechObserver.TextToSpeechTopicName = TextToSpeech
 
 
 # ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.StartDebuggerOnCrash = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.StartDebuggerOnCrash = false
+
+
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
 
 
 # ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.TopicSuffix = ""
 
 
 # ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.UseTimeServer = 0
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
 
 
 # ArmarX.Verbosity:  Global logging level for whole application
 #  Attributes:
 #  - Default:            Info
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.Verbosity = Info
 
 
-
-
-
diff --git a/scenarios/SpeechObserver/config/global.cfg b/scenarios/SpeechObserver/config/global.cfg
index d3d011a25..914c73f3e 100644
--- a/scenarios/SpeechObserver/config/global.cfg
+++ b/scenarios/SpeechObserver/config/global.cfg
@@ -2,6 +2,3 @@
 # Global Config from Scenario SpeechObserver
 # ==================================================================
 
-
-
-
diff --git a/scenarios/TopicTimingTest/config/global.cfg b/scenarios/TopicTimingTest/config/global.cfg
new file mode 100644
index 000000000..80761308f
--- /dev/null
+++ b/scenarios/TopicTimingTest/config/global.cfg
@@ -0,0 +1,4 @@
+# ==================================================================
+# Global Config from Scenario TopicTimingTest
+# ==================================================================
+
diff --git a/scenarios/tests/DebugDrawerTest/DebugDrawerTest.scx b/scenarios/tests/DebugDrawerTest/DebugDrawerTest.scx
index 636d13097..d66d46476 100644
--- a/scenarios/tests/DebugDrawerTest/DebugDrawerTest.scx
+++ b/scenarios/tests/DebugDrawerTest/DebugDrawerTest.scx
@@ -1,3 +1,5 @@
-<scenario name='DebugDrawerTest' lastChange='2016-10-26.14:27:39' creation='2016-10-26.14:27:39' globalConfigName='' package='RobotAPI'>
-<application name='DebugDrawerTestApp' instance='' package='RobotAPI'/>
-</scenario>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<scenario name="DebugDrawerTest" creation="2016-10-26.14:27:39" globalConfigName="" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="DebugDrawerTestApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+</scenario>
+
diff --git a/scenarios/tests/DebugDrawerTest/config/global.cfg b/scenarios/tests/DebugDrawerTest/config/global.cfg
new file mode 100644
index 000000000..8c7adf7c0
--- /dev/null
+++ b/scenarios/tests/DebugDrawerTest/config/global.cfg
@@ -0,0 +1,4 @@
+# ==================================================================
+# Global Config from Scenario DebugDrawerTest
+# ==================================================================
+
diff --git a/scenarios/tests/InertialMeasurementUnit/InertialMeasurementUnit.scx b/scenarios/tests/InertialMeasurementUnit/InertialMeasurementUnit.scx
index ef3d386f1..1c557b40b 100644
--- a/scenarios/tests/InertialMeasurementUnit/InertialMeasurementUnit.scx
+++ b/scenarios/tests/InertialMeasurementUnit/InertialMeasurementUnit.scx
@@ -1,4 +1,6 @@
-<scenario name='InertialMeasurementUnit' lastChange='2016-10-26.14:27:39' creation='2016-10-26.14:27:39' globalConfigName='' package='RobotAPI'>
-<application name='XsensIMUApp' instance='' package='RobotAPI'/>
-<application name='InertialMeasurementUnitObserverApp' instance='' package='RobotAPI'/>
-</scenario>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<scenario name="InertialMeasurementUnit" creation="2016-10-26.14:27:39" globalConfigName="" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="XsensIMUApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="InertialMeasurementUnitObserverApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+</scenario>
+
diff --git a/scenarios/tests/InertialMeasurementUnit/config/global.cfg b/scenarios/tests/InertialMeasurementUnit/config/global.cfg
new file mode 100644
index 000000000..922c3633b
--- /dev/null
+++ b/scenarios/tests/InertialMeasurementUnit/config/global.cfg
@@ -0,0 +1,4 @@
+# ==================================================================
+# Global Config from Scenario InertialMeasurementUnit
+# ==================================================================
+
diff --git a/scenarios/tests/StatechartProfilesTestArmar3Simulation/StatechartProfilesTestArmar3Simulation.scx b/scenarios/tests/StatechartProfilesTestArmar3Simulation/StatechartProfilesTestArmar3Simulation.scx
index dbfdee6dd..75eb82a72 100644
--- a/scenarios/tests/StatechartProfilesTestArmar3Simulation/StatechartProfilesTestArmar3Simulation.scx
+++ b/scenarios/tests/StatechartProfilesTestArmar3Simulation/StatechartProfilesTestArmar3Simulation.scx
@@ -1,6 +1,8 @@
-<scenario name='StatechartProfilesTestArmar3Simulation' lastChange='2016-10-26.14:27:40' creation='2016-10-26.14:27:40' globalConfigName='' package='RobotAPI'>
-<application name='RobotControl' instance='' package='RobotAPI'/>
-<application name='XMLRemoteStateOfferer' instance='StatechartProfilesTestGroup' package='ArmarXCore'/>
-<application name='SystemObserver' instance='' package='ArmarXCore'/>
-<application name='ConditionHandler' instance='' package='ArmarXCore'/>
-</scenario>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<scenario name="StatechartProfilesTestArmar3Simulation" creation="2016-10-26.14:27:40" globalConfigName="" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="RobotControl" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="XMLRemoteStateOfferer" instance="StatechartProfilesTestGroup" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="SystemObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ConditionHandler" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+</scenario>
+
diff --git a/scenarios/tests/StatechartProfilesTestArmar3Simulation/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg b/scenarios/tests/StatechartProfilesTestArmar3Simulation/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg
index 9565375d8..d013b74f7 100644
--- a/scenarios/tests/StatechartProfilesTestArmar3Simulation/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg
+++ b/scenarios/tests/StatechartProfilesTestArmar3Simulation/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg
@@ -1,108 +1,227 @@
 # ==================================================================
-# ArmarX properties
+# XMLRemoteStateOfferer properties
 # ==================================================================
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            Default value not mapped.
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.AdditionalPackages = Default value not mapped.
 
 
-# ArmarX.DataPath:  Semicolon-separated search list for data files
+# ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DataPath = ""
+ArmarX.ApplicationName = "XMLStateComponentStatechartProfilesTestGroup"
 
 
-# ArmarX.Verbosity:  Global logging level for whole application
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            Verbose
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
-# ArmarX.Verbosity = Verbose
+# ArmarX.CachePath = mongo/.cache
 
 
-# ArmarX.DisableLogging:  Turn logging off in whole application
+# ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-#  - Possible values: {0, 1, false, no, true, yes}
-# ArmarX.DisableLogging = 0
+# ArmarX.Config = ""
 
 
-# ArmarX.ApplicationName:  Application name
+# ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-ArmarX.ApplicationName = "XMLStateComponentStatechartProfilesTestGroup"
+# ArmarX.DataPath = ""
+
+
+# ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
+#  Attributes:
+#  - Default:            Default value not mapped.
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.DefaultPackages = Default value not mapped.
 
 
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
-# ArmarX.Config:  Comma-separated list of configuration files 
+# ArmarX.DisableLogging:  Turn logging off in whole application
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
+
+
+# ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.Config = ""
+# ArmarX.LoadLibraries = ""
 
 
-# ==================================================================
-# ArmarX.XMLStateComponent properties
-# ==================================================================
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
-# ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile:  Path to statechart group definition file (*.scgxml) - relative to projects source dir
+
+# ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Case sensitivity:   no
-#  - Required:           yes
-ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile = RobotAPI/statecharts/StatechartProfilesTestGroup/StatechartProfilesTestGroup.scgxml
+#  - Default:            true
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
-# ArmarX.XMLStateComponent.EnableProfiling:  enable profiler which is used for logging performance events
+# ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
+#  Attributes:
+#  - Default:            3000
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.RemoteHandlesDeletionTimeout = 3000
+
+
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
 #  - Possible values: {0, 1, false, no, true, yes}
-# ArmarX.XMLStateComponent.EnableProfiling = 0
+# ArmarX.StartDebuggerOnCrash = false
 
 
-# ArmarX.XMLStateComponent.XMLStatechartProfile:  Profile to use for state execution. Should be the same for all Statechart Groups.
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
+
+
+# ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-ArmarX.XMLStateComponent.XMLStatechartProfile = "Armar3Simulation"
+# ArmarX.TopicSuffix = ""
+
+
+# ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
+
+
+# ArmarX.Verbosity:  Global logging level for whole application
+#  Attributes:
+#  - Default:            Info
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
+# ArmarX.Verbosity = Info
+
+
+# ArmarX.XMLStateComponent.EnableProfiling:  enable profiler which is used for logging performance events
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.XMLStateComponent.EnableProfiling = false
 
 
 # ArmarX.XMLStateComponent.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-#  - Possible values: {Debug, Error, Fatal, Info, Undefined, Verbose, Warning}
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.XMLStateComponent.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.XMLStateComponent.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.XMLStateComponent.ObjectName = "XMLStateComponentStatechartProfilesTestGroup"
 
 
+# ArmarX.XMLStateComponent.StateReportingTopic:  Topic on which state changes are published. Leave empty to disable reporting.
+#  Attributes:
+#  - Default:            StateReportingTopic
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.XMLStateComponent.StateReportingTopic = StateReportingTopic
+
+
+# ArmarX.XMLStateComponent.StatesToEnter:  List of states that are directly entered and executed. Seperated by comma. These must not need any input parameters!
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.XMLStateComponent.StatesToEnter = ""
+
+
+# ArmarX.XMLStateComponent.XMLRemoteStateOffererName:  Name of the RemoteStateOfferer to start. The default name is [StatechartGroupName]RemoteStateOfferer.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.XMLStateComponent.XMLRemoteStateOffererName = ""
+
+
+# ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile:  Path to statechart group definition file (*.scgxml) - relative to projects' source dir
+#  Attributes:
+#  - Case sensitivity:   yes
+#  - Required:           yes
+ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile = RobotAPI/statecharts/StatechartProfilesTestGroup/StatechartProfilesTestGroup.scgxml
+
+
+# ArmarX.XMLStateComponent.XMLStatechartProfile:  Profile to use for state execution. Should be the same for all Statechart Groups in one scenario. This profile name is also added as a prefix to the Ice identifier of the RemoteStateOfferer of this statechart group.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+ArmarX.XMLStateComponent.XMLStatechartProfile = "Armar3Simulation"
+
 
diff --git a/scenarios/tests/StatechartProfilesTestArmar3Simulation/config/global.cfg b/scenarios/tests/StatechartProfilesTestArmar3Simulation/config/global.cfg
new file mode 100644
index 000000000..0d2fe6272
--- /dev/null
+++ b/scenarios/tests/StatechartProfilesTestArmar3Simulation/config/global.cfg
@@ -0,0 +1,4 @@
+# ==================================================================
+# Global Config from Scenario StatechartProfilesTestArmar3Simulation
+# ==================================================================
+
diff --git a/scenarios/tests/StatechartProfilesTestArmar3a/StatechartProfilesTestArmar3a.scx b/scenarios/tests/StatechartProfilesTestArmar3a/StatechartProfilesTestArmar3a.scx
index 94cff4175..beaea909d 100644
--- a/scenarios/tests/StatechartProfilesTestArmar3a/StatechartProfilesTestArmar3a.scx
+++ b/scenarios/tests/StatechartProfilesTestArmar3a/StatechartProfilesTestArmar3a.scx
@@ -1,6 +1,8 @@
-<scenario name='StatechartProfilesTestArmar3a' lastChange='2016-10-26.14:27:40' creation='2016-10-26.14:27:40' globalConfigName='' package='RobotAPI'>
-<application name='RobotControl' instance='' package='RobotAPI'/>
-<application name='XMLRemoteStateOfferer' instance='StatechartProfilesTestGroup' package='ArmarXCore'/>
-<application name='SystemObserver' instance='' package='ArmarXCore'/>
-<application name='ConditionHandler' instance='' package='ArmarXCore'/>
-</scenario>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<scenario name="StatechartProfilesTestArmar3a" creation="2016-10-26.14:27:40" globalConfigName="" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="RobotControl" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="XMLRemoteStateOfferer" instance="StatechartProfilesTestGroup" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="SystemObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ConditionHandler" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+</scenario>
+
diff --git a/scenarios/tests/StatechartProfilesTestArmar3a/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg b/scenarios/tests/StatechartProfilesTestArmar3a/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg
index 0bb4bca0a..9a3b255aa 100644
--- a/scenarios/tests/StatechartProfilesTestArmar3a/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg
+++ b/scenarios/tests/StatechartProfilesTestArmar3a/config/XMLRemoteStateOfferer.StatechartProfilesTestGroup.cfg
@@ -1,108 +1,227 @@
 # ==================================================================
-# ArmarX properties
+# XMLRemoteStateOfferer properties
 # ==================================================================
 
-# ArmarX.CachePath:  Path for cache files
+# ArmarX.AdditionalPackages:  List of additional ArmarX packages which should be in the list of default packages. If you have custom packages, which should be found by the gui or other apps, specify them here. Comma separated List.
 #  Attributes:
-#  - Default:            ${HOME}/.armarx/mongo/.cache
-#  - Case sensitivity:   no
+#  - Default:            Default value not mapped.
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.CachePath = ${HOME}/.armarx/mongo/.cache
+# ArmarX.AdditionalPackages = Default value not mapped.
 
 
-# ArmarX.DataPath:  Semicolon-separated search list for data files
+# ArmarX.ApplicationName:  Application name
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.DataPath = ""
+ArmarX.ApplicationName = "XMLStateComponentStatechartProfilesTestGroup"
 
 
-# ArmarX.Verbosity:  Global logging level for whole application
+# ArmarX.CachePath:  Path for cache files. If relative path AND env. variable ARMARX_USER_CONFIG_DIR is set, the cache path will be made relative to ARMARX_USER_CONFIG_DIR. Otherwise if relative it will be relative to the default ArmarX config dir (${HOME}/.armarx)
 #  Attributes:
-#  - Default:            Verbose
-#  - Case sensitivity:   no
+#  - Default:            mongo/.cache
+#  - Case sensitivity:   yes
 #  - Required:           no
-#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
-# ArmarX.Verbosity = Verbose
+# ArmarX.CachePath = mongo/.cache
 
 
-# ArmarX.DisableLogging:  Turn logging off in whole application
+# ArmarX.Config:  Comma-separated list of configuration files 
 #  Attributes:
-#  - Default:            0
-#  - Case sensitivity:   no
+#  - Default:            ""
+#  - Case sensitivity:   yes
 #  - Required:           no
-#  - Possible values: {0, 1, false, no, true, yes}
-# ArmarX.DisableLogging = 0
+# ArmarX.Config = ""
 
 
-# ArmarX.ApplicationName:  Application name
+# ArmarX.DataPath:  Semicolon-separated search list for data files
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-ArmarX.ApplicationName = "XMLStateComponentStatechartProfilesTestGroup"
+# ArmarX.DataPath = ""
+
+
+# ArmarX.DefaultPackages:  List of ArmarX packages which are accessible by default. Comma separated List. If you want to add your own packages and use all default ArmarX packages, use the property 'AdditionalPackages'.
+#  Attributes:
+#  - Default:            Default value not mapped.
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.DefaultPackages = Default value not mapped.
 
 
 # ArmarX.DependenciesConfig:  Path to the (usually generated) config file containing all data paths of all dependent projects. This property usually does not need to be edited.
 #  Attributes:
 #  - Default:            ./config/dependencies.cfg
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 # ArmarX.DependenciesConfig = ./config/dependencies.cfg
 
 
-# ArmarX.Config:  Comma-separated list of configuration files 
+# ArmarX.DisableLogging:  Turn logging off in whole application
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.DisableLogging = false
+
+
+# ArmarX.EnableProfiling:  Enable profiling of CPU load produced by this application
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.EnableProfiling = false
+
+
+# ArmarX.LoadLibraries:  Libraries to load at start up of the application. Must be enabled by the Application with enableLibLoading(). Format: PackageName:LibraryName;... or /absolute/path/to/library;...
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-# ArmarX.Config = ""
+# ArmarX.LoadLibraries = ""
 
 
-# ==================================================================
-# ArmarX.XMLStateComponent properties
-# ==================================================================
+# ArmarX.LoggingGroup:  The logging group is transmitted with every ArmarX log message over Ice in order to group the message in the GUI.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.LoggingGroup = ""
 
-# ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile:  Path to statechart group definition file (*.scgxml) - relative to projects source dir
+
+# ArmarX.RedirectStdout:  Redirect std::cout and std::cerr to ArmarXLog
 #  Attributes:
-#  - Case sensitivity:   no
-#  - Required:           yes
-ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile = RobotAPI/statecharts/StatechartProfilesTestGroup/StatechartProfilesTestGroup.scgxml
+#  - Default:            true
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.RedirectStdout = true
 
 
-# ArmarX.XMLStateComponent.EnableProfiling:  enable profiler which is used for logging performance events
+# ArmarX.RemoteHandlesDeletionTimeout:  The timeout (in ms) before a remote handle deletes the managed object after the use count reached 0. This time can be used by a client to increment the count again (may be required when transmitting remote handles)
+#  Attributes:
+#  - Default:            3000
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.RemoteHandlesDeletionTimeout = 3000
+
+
+# ArmarX.SecondsStartupDelay:  The startup will be delayed by this number of seconds (useful for debugging)
 #  Attributes:
 #  - Default:            0
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.SecondsStartupDelay = 0
+
+
+# ArmarX.StartDebuggerOnCrash:  If this application crashes (segmentation fault) qtcreator will attach to this process and start the debugger.
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
 #  - Required:           no
 #  - Possible values: {0, 1, false, no, true, yes}
-# ArmarX.XMLStateComponent.EnableProfiling = 0
+# ArmarX.StartDebuggerOnCrash = false
 
 
-# ArmarX.XMLStateComponent.XMLStatechartProfile:  Profile to use for state execution. Should be the same for all Statechart Groups.
+# ArmarX.ThreadPoolSize:  Size of the ArmarX ThreadPool that is always running.
+#  Attributes:
+#  - Default:            1
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.ThreadPoolSize = 1
+
+
+# ArmarX.TopicSuffix:  Suffix appended to all topic names for outgoing topics. This is mainly used to direct all topics to another name for TopicReplaying purposes.
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-ArmarX.XMLStateComponent.XMLStatechartProfile = "Armar3a"
+# ArmarX.TopicSuffix = ""
+
+
+# ArmarX.UseTimeServer:  Enable using a global Timeserver (e.g. from ArmarXSimulator)
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.UseTimeServer = false
+
+
+# ArmarX.Verbosity:  Global logging level for whole application
+#  Attributes:
+#  - Default:            Info
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
+# ArmarX.Verbosity = Info
+
+
+# ArmarX.XMLStateComponent.EnableProfiling:  enable profiler which is used for logging performance events
+#  Attributes:
+#  - Default:            false
+#  - Case sensitivity:   yes
+#  - Required:           no
+#  - Possible values: {0, 1, false, no, true, yes}
+# ArmarX.XMLStateComponent.EnableProfiling = false
 
 
 # ArmarX.XMLStateComponent.MinimumLoggingLevel:  Local logging level only for this component
 #  Attributes:
 #  - Default:            Undefined
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
-#  - Possible values: {Debug, Error, Fatal, Info, Undefined, Verbose, Warning}
+#  - Possible values: {Debug, Error, Fatal, Important, Info, Undefined, Verbose, Warning}
 # ArmarX.XMLStateComponent.MinimumLoggingLevel = Undefined
 
 
 # ArmarX.XMLStateComponent.ObjectName:  Name of IceGrid well-known object
 #  Attributes:
 #  - Default:            ""
-#  - Case sensitivity:   no
+#  - Case sensitivity:   yes
 #  - Required:           no
 ArmarX.XMLStateComponent.ObjectName = "XMLStateComponentStatechartProfilesTestGroup"
 
 
+# ArmarX.XMLStateComponent.StateReportingTopic:  Topic on which state changes are published. Leave empty to disable reporting.
+#  Attributes:
+#  - Default:            StateReportingTopic
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.XMLStateComponent.StateReportingTopic = StateReportingTopic
+
+
+# ArmarX.XMLStateComponent.StatesToEnter:  List of states that are directly entered and executed. Seperated by comma. These must not need any input parameters!
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.XMLStateComponent.StatesToEnter = ""
+
+
+# ArmarX.XMLStateComponent.XMLRemoteStateOffererName:  Name of the RemoteStateOfferer to start. The default name is [StatechartGroupName]RemoteStateOfferer.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+# ArmarX.XMLStateComponent.XMLRemoteStateOffererName = ""
+
+
+# ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile:  Path to statechart group definition file (*.scgxml) - relative to projects' source dir
+#  Attributes:
+#  - Case sensitivity:   yes
+#  - Required:           yes
+ArmarX.XMLStateComponent.XMLStatechartGroupDefinitionFile = RobotAPI/statecharts/StatechartProfilesTestGroup/StatechartProfilesTestGroup.scgxml
+
+
+# ArmarX.XMLStateComponent.XMLStatechartProfile:  Profile to use for state execution. Should be the same for all Statechart Groups in one scenario. This profile name is also added as a prefix to the Ice identifier of the RemoteStateOfferer of this statechart group.
+#  Attributes:
+#  - Default:            ""
+#  - Case sensitivity:   yes
+#  - Required:           no
+ArmarX.XMLStateComponent.XMLStatechartProfile = "Armar3a"
+
 
diff --git a/scenarios/tests/StatechartProfilesTestArmar3a/config/global.cfg b/scenarios/tests/StatechartProfilesTestArmar3a/config/global.cfg
new file mode 100644
index 000000000..af94bdc34
--- /dev/null
+++ b/scenarios/tests/StatechartProfilesTestArmar3a/config/global.cfg
@@ -0,0 +1,4 @@
+# ==================================================================
+# Global Config from Scenario StatechartProfilesTestArmar3a
+# ==================================================================
+
diff --git a/scenarios/tests/WeissHapticSensorsUnitTest/WeissHapticSensorsUnitTest.scx b/scenarios/tests/WeissHapticSensorsUnitTest/WeissHapticSensorsUnitTest.scx
index 66efe7bdc..164c997a4 100644
--- a/scenarios/tests/WeissHapticSensorsUnitTest/WeissHapticSensorsUnitTest.scx
+++ b/scenarios/tests/WeissHapticSensorsUnitTest/WeissHapticSensorsUnitTest.scx
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="WeissHapticSensorsUnitTest" creation="2016-10-26.14:27:39" globalConfigName="" package="RobotAPI">
-	<application name="RobotControl" instance="" package="RobotAPI" enabled="true"/>
-	<application name="WeissHapticUnitApp" instance="" package="RobotAPI" enabled="true"/>
-	<application name="XMLRemoteStateOfferer" instance="WeissHapticGroup" package="ArmarXCore" enabled="true"/>
-	<application name="SystemObserver" instance="" package="ArmarXCore" enabled="true"/>
-	<application name="ConditionHandler" instance="" package="ArmarXCore" enabled="true"/>
+<scenario name="WeissHapticSensorsUnitTest" creation="2016-10-26.14:27:39" globalConfigName="" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="RobotControl" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="WeissHapticUnitApp" instance="" package="RobotAPI" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="XMLRemoteStateOfferer" instance="WeissHapticGroup" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="SystemObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="ConditionHandler" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
diff --git a/scenarios/tests/WeissHapticSensorsUnitTest/config/global.cfg b/scenarios/tests/WeissHapticSensorsUnitTest/config/global.cfg
new file mode 100644
index 000000000..031512daa
--- /dev/null
+++ b/scenarios/tests/WeissHapticSensorsUnitTest/config/global.cfg
@@ -0,0 +1,4 @@
+# ==================================================================
+# Global Config from Scenario WeissHapticSensorsUnitTest
+# ==================================================================
+
diff --git a/scenarios/tests/statecharttestscenario/config/global.cfg b/scenarios/tests/statecharttestscenario/config/global.cfg
new file mode 100644
index 000000000..7e614d8ed
--- /dev/null
+++ b/scenarios/tests/statecharttestscenario/config/global.cfg
@@ -0,0 +1,4 @@
+# ==================================================================
+# Global Config from Scenario statecharttestscenario
+# ==================================================================
+
diff --git a/scenarios/tests/statecharttestscenario/statecharttestscenario.scx b/scenarios/tests/statecharttestscenario/statecharttestscenario.scx
index 40aeb876d..5bd90719b 100644
--- a/scenarios/tests/statecharttestscenario/statecharttestscenario.scx
+++ b/scenarios/tests/statecharttestscenario/statecharttestscenario.scx
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<scenario name="statecharttestscenario" creation="2016-10-26.14:27:39" globalConfigName="" package="RobotAPI">
-	<application name="ConditionHandler" instance="" package="ArmarXCore" enabled="true"/>
-	<application name="SystemObserver" instance="" package="ArmarXCore" enabled="true"/>
+<scenario name="statecharttestscenario" creation="2016-10-26.14:27:39" globalConfigName="" package="RobotAPI" deploymentType="local" nodeName="NodeMain">
+	<application name="ConditionHandler" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
+	<application name="SystemObserver" instance="" package="ArmarXCore" nodeName="" enabled="true" iceAutoRestart="false"/>
 </scenario>
 
-- 
GitLab