diff --git a/omap-tutorial/README.md b/omap-tutorial/README.md
index fbcc606..49a766a 100755
--- a/omap-tutorial/README.md
+++ b/omap-tutorial/README.md
@@ -139,6 +139,9 @@ Go to omap-tutorial folder.
export LD_LIBRARY_PATH=/usr/local/lib
test-platform ./PandaBoardES.xml
+ # Disable criteria check at XML load time in order to enable test without criteria.
+remote-process localhost 5001 setFailureOnFailedSettingsLoad false
+
remote-process localhost 5001 start
remote-process localhost 5000 listParameters /Audio
remote-process localhost 5000 help
@@ -192,7 +195,7 @@ InclusiveCriterion ClosingPlaybackRoutes : Media Modem Voice Tone
InclusiveCriterion OpenedCaptureRoutes : Media Modem Voice MultiChannel
InclusiveCriterion OpenedPlaybackRoutes : Media Modem Voice Tones DeepMedia
InclusiveCriterion SelectedInputDevice : SubMic Headset MainMic Dmic1 Dmic2 Dmic1
-InclusiveCriterion SelectedOutputDevice : Earpiece Headset Ihf
+InclusiveCriterion SelectedOutputDevices : Earpiece Headset Ihf
InclusiveCriterion AudioSource : Default Mic None VoiceCall VoiceCommunication VoiceDownlink VoiceUplink
ExclusiveCriterion BandType : NB SuperWB Unknown WB
ExclusiveCriterion ScreenState : Off On
diff --git a/omap-tutorial/Settings/Audio/AudioConfigurableDomains.xml b/omap-tutorial/Settings/Audio/AudioConfigurableDomains.xml
index cd34b70..bacba95 100755
--- a/omap-tutorial/Settings/Audio/AudioConfigurableDomains.xml
+++ b/omap-tutorial/Settings/Audio/AudioConfigurableDomains.xml
@@ -1,9 +1,465 @@
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 120
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 120
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 120
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 120
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 120 120
+
+
+
+
+ 0 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ amic_left
+
+
+ amic_right
+
+
+
+
+ none
+
+
+ none
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12 12
+
+
+
+
+ 0 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ hs_dac
+
+
+ hs_dac
+
+
+
+
+ off
+
+
+ off
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ headset_mic
+
+
+ headset_mic
+
+
+
+
+ off
+
+
+ off
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ high-performance
+
+
+ high-performance
+
+
+
+
diff --git a/omap-tutorial/Structure/Audio/OmapAbeComponentTypeSet.xml b/omap-tutorial/Structure/Audio/OmapAbeComponentTypeSet.xml
index 417036b..6b6d90f 100644
--- a/omap-tutorial/Structure/Audio/OmapAbeComponentTypeSet.xml
+++ b/omap-tutorial/Structure/Audio/OmapAbeComponentTypeSet.xml
@@ -83,14 +83,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/omap-tutorial/clientSimulator/AudioCriteria.txt b/omap-tutorial/clientSimulator/AudioCriteria.txt
new file mode 100755
index 0000000..bfd88bc
--- /dev/null
+++ b/omap-tutorial/clientSimulator/AudioCriteria.txt
@@ -0,0 +1,11 @@
+ExclusiveCriterion Mode : InCsvCall InVoipCall Normal
+InclusiveCriterion RoutageState : Configure Flow Path
+InclusiveCriterion ClosingCaptureRoutes : Media Modem Voice MultiChannel
+InclusiveCriterion ClosingPlaybackRoutes : Media Modem Voice Tones DeepMedia
+InclusiveCriterion OpenedCaptureRoutes : Media Modem Voice MultiChannel
+InclusiveCriterion OpenedPlaybackRoutes : Media Modem Voice Tones DeepMedia
+InclusiveCriterion SelectedInputDevices : SubMic Headset MainMic DMIC
+InclusiveCriterion SelectedOutputDevices : Earpiece Headset Headphones IHF
+InclusiveCriterion AudioSource : Default Mic None VoiceCall VoiceCommunication VoiceDownlink VoiceUplink
+ExclusiveCriterion BandType : NB SuperWB Unknown WB
+ExclusiveCriterion ScreenState : Off On
diff --git a/omap-tutorial/clientSimulator/README.md b/omap-tutorial/clientSimulator/README.md
new file mode 100644
index 0000000..eb796db
--- /dev/null
+++ b/omap-tutorial/clientSimulator/README.md
@@ -0,0 +1,71 @@
+
+# clientSimulator for PandaBoard
+
+## Before starting
+1) Variables setting and packages
+```
+sudo apt-get install python3 m4
+export LD_LIBRARY_PATH=/usr/local/lib
+```
+2) Delta inside PFW core for scripts under UBUNTU
+```
+diff --git a/tools/xmlGenerator/lightRoutingUpdate.sh b/tools/xmlGenerator/lightRoutingUpdate.sh
+index 4bde78f..e084d50 100755
+--- a/tools/xmlGenerator/lightRoutingUpdate.sh
++++ b/tools/xmlGenerator/lightRoutingUpdate.sh
+@@ -35,12 +35,12 @@
+
+ set -eu -o pipefail
+
+-adbShell="adb shell"
++adbShell=" "
+ parameter="$adbShell $parameterCommandAccess"
+
+-tmpfile="/tmp/pfw_commands"
+-target_tmpfile="/data/pfw_commands"
++tmpfile="/home/lab/external/panda/tmp/pfw_commands"
++target_tmpfile="/home/lab/external/panda/data/pfw_commands"
+
+
+ adbShellForward () {
+@@ -48,7 +48,7 @@ adbShellForward () {
+ echo 'echo $?; exit' >> "$1"
+
+ # Send commands
+- adb push "$1" "$target_tmpfile"
++ cp "$1" "$target_tmpfile"
+ $adbShell chmod 700 "$target_tmpfile"
+
+ $adbShell "$target_tmpfile" |
+```
+
+## Running MiddleWare simulator and update XML setting from .pfw files
+1) Run Parameter Framework client simulator Go to tools omap-tutorial folder :
+```
+/tools/clientSimulator/pfClientSimulator.py ./clientSimulator/scripts/panda
+```
+Update `scripts/panda/conf.json` to reflect the path
+
+=> Script will run `test-platform` application.
+
+2) Check status
+```
+/usr/local/bin/remote-process localhost 5000 status
+```
+
+3) Generate Routing from audio_hal folder
+```
+/usr/local/bin/remote-process localhost 5000 setTuningMode on
+/usr/local/bin/remote-process localhost 5000 deleteAllDomains
+~/intel/parameter-framework/tools/xmlGenerator/lightRoutingUpdate.sh routing_twl6040.pfw routing_omapabe.pfw
+```
+
+4) Save XML for the next Setting
+```
+/usr/local/bin/remote-process localhost 5000 exportDomainsWithSettingsXML /home/ubuntu/test.xml
+cp /home/ubuntu/test.xml ~/intel/parameter-framework-samples/omap-tutorial/Settings/Audio/AudioConfigurableDomains.xml
+```
+
+5) Restart MiddleWare simulator and check UCs.
+
+
diff --git a/omap-tutorial/clientSimulator/routing_omapabe.pfw b/omap-tutorial/clientSimulator/routing_omapabe.pfw
new file mode 100644
index 0000000..a094291
--- /dev/null
+++ b/omap-tutorial/clientSimulator/routing_omapabe.pfw
@@ -0,0 +1,126 @@
+
+supDomain: Audio.omapabe
+ supDomain: Volume
+
+ supDomain: Playback
+ supDomain: External
+ domain: Headset
+ conf: Normal
+ SelectedOutputDevices Includes Headset
+ /Audio/omapabe/abe/output/headset/sdt_dl_volume/volume = 120
+ conf: Default
+ /Audio/omapabe/abe/output/headset/sdt_dl_volume/volume = 0
+ supDomain: MediaPlayback
+ supDomain: External
+ domain: Headset
+ conf: Normal
+ ALL
+ SelectedOutputDevices Includes Headset
+ ANY
+ OpenedPlaybackRoutes Includes Media
+ OpenedPlaybackRoutes Includes DeepMedia
+ /Audio/omapabe/abe/output/headset/dl1/media_playback = 120
+ conf: Default
+ /Audio/omapabe/abe/output/headset/dl1/media_playback = 0
+ supDomain: VoicePlayback
+ supDomain: External
+ domain: Headset
+ conf: Normal
+ ALL
+ SelectedOutputDevices Includes Headset
+ OpenedPlaybackRoutes Includes Voice
+ /Audio/omapabe/abe/output/headset/dl1/voice_playback = 120
+ conf: Default
+ /Audio/omapabe/abe/output/headset/dl1/voice_playback = 0
+ supDomain: TonesPlayback
+ supDomain: External
+ domain: Headset
+ conf: Normal
+ ALL
+ SelectedOutputDevices Includes Headset
+ OpenedPlaybackRoutes Includes Tones
+ /Audio/omapabe/abe/output/headset/dl1/tones_playback = 120
+ conf: Default
+ /Audio/omapabe/abe/output/headset/dl1/tones_playback = 0
+ supDomain: Capture
+ supDomain: External
+ domain: Headset
+ conf: Default
+ SelectedInputDevices Includes Headset
+ /Audio/omapabe/abe/input/amic/volume = 120 120
+ conf: Mute
+ /Audio/omapabe/abe/input/amic/volume = 0 0
+
+supDomain: Routing
+ supDomain: Enable
+ RoutageState Includes Path
+
+ supDomain: omapabe
+ supDomain: Playback
+ supDomain: External
+ domain: Headset
+ conf: Enable
+ SelectedOutputDevices Includes Headset
+ /Audio/omapabe/abe/output/headset/sdt_dl = 1
+
+ conf: Disable
+ /Audio/omapabe/abe/output/headset/sdt_dl = 0
+ supDomain: MediaPlayback
+ supDomain: External
+ domain: Headset
+ conf: Enable
+ ALL
+ SelectedOutputDevices Includes Headset
+ ANY
+ OpenedPlaybackRoutes Includes Media
+ OpenedPlaybackRoutes Includes DeepMedia
+ /Audio/omapabe/abe/output/headset/dl1/mixer_media = 1
+
+ conf: Disable
+ /Audio/omapabe/abe/output/headset/dl1/mixer_media = 0
+ supDomain: VoicePlayback
+ supDomain: External
+ domain: Headset
+ conf: Enable
+ ALL
+ SelectedOutputDevices Includes Headset
+ OpenedPlaybackRoutes Includes Voice
+ /Audio/omapabe/abe/output/headset/dl1/mixer_voice = 1
+
+ conf: Disable
+ /Audio/omapabe/abe/output/headset/dl1/mixer_voice = 0
+ supDomain: TonesPlayback
+ supDomain: External
+ domain: Headset
+ conf: Enable
+ ALL
+ SelectedOutputDevices Includes Headset
+ OpenedPlaybackRoutes Includes Tones
+ /Audio/omapabe/abe/output/headset/dl1/mixer_tones = 1
+
+ conf: Disable
+ /Audio/omapabe/abe/output/headset/dl1/mixer_tones = 0
+
+ supDomain: MediaCapture
+ supDomain: External
+ domain: Headset
+ conf: Enable
+ ALL
+ SelectedInputDevices Includes Headset
+ OpenedCaptureRoutes Includes Media
+ /Audio/omapabe/abe/input/ul2_left/route = amic_left
+ /Audio/omapabe/abe/input/ul2_right/route = amic_right
+
+ conf: Disable
+ /Audio/omapabe/abe/input/ul2_left/route = none
+ /Audio/omapabe/abe/input/ul2_right/route = none
+
+
+ supDomain: Configure
+ RoutageState Includes Configure
+
+ supDomain: omapabe
+ domain: Calibration.HWCodec
+ conf: All
+ /Audio/omapabe/abe/output/pdm = 1
+
diff --git a/omap-tutorial/clientSimulator/routing_twl6040.pfw b/omap-tutorial/clientSimulator/routing_twl6040.pfw
new file mode 100644
index 0000000..7675ea7
--- /dev/null
+++ b/omap-tutorial/clientSimulator/routing_twl6040.pfw
@@ -0,0 +1,54 @@
+
+supDomain: Audio.twl6040
+ supDomain: Volume
+ domain: Headset
+ conf: Normal
+ ANY
+ SelectedOutputDevices Includes Headset
+ SelectedOutputDevices Includes Headphones
+ /Audio/omapabe/twl6040/output/headset/volume = 12 12
+
+ conf: Default
+ /Audio/omapabe/twl6040/output/headset/volume = 0 0
+
+supDomain: Routing
+ supDomain: Enable
+ RoutageState Includes Path
+
+ supDomain: twl6040
+ supDomain: Playback
+ supDomain: External
+ domain: Headset
+ conf: Enable
+ ANY
+ SelectedOutputDevices Includes Headset
+ SelectedOutputDevices Includes Headphones
+ /Audio/omapabe/twl6040/output/headset/enable/right = hs_dac
+ /Audio/omapabe/twl6040/output/headset/enable/left = hs_dac
+
+ conf: Disable
+ /Audio/omapabe/twl6040/output/headset/enable/right = off
+ /Audio/omapabe/twl6040/output/headset/enable/left = off
+
+ supDomain: Capture
+ supDomain: External
+ domain: Headset
+ conf: Enable
+ ANY
+ SelectedInputDevices Includes Headset
+ /Audio/omapabe/twl6040/input/right/mux = headset_mic
+ /Audio/omapabe/twl6040/input/left/mux = headset_mic
+
+ conf: Disable
+ /Audio/omapabe/twl6040/input/right/mux = off
+ /Audio/omapabe/twl6040/input/left/mux = off
+
+
+ supDomain: Configure
+ RoutageState Includes Configure
+
+ supDomain: twl6040
+ domain: Calibration.HWCodec
+ conf: Default
+ /Audio/omapabe/twl6040/output/hs_power_mode/value = high-performance
+ /Audio/omapabe/twl6040/power_mode/value = high-performance
diff --git a/omap-tutorial/clientSimulator/scripts/README.md b/omap-tutorial/clientSimulator/scripts/README.md
new file mode 100644
index 0000000..9426312
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/README.md
@@ -0,0 +1,160 @@
+#ClientSimulator CRITERIA TESTS AUDIO TESTS FILES README
+
+##Project
+Those files are tests vectors and configurations for Audio HAL.
+They depend on the AudioCriteria.txt file which is currently in
+omap-tutoria/clientSimulator/scripts directory.
+
+They should be next to this file or in the dedicated platform
+directory once the project will be mature.
+
+##Test Directory
+A test directory should contains a conf.json file which contains path
+to all files needed by the PFW Criteria Tests project to realize Audio
+related tests such as:
+
+- The audio criterion file path
+- The desired script file
+- The desired audio gatherer file
+- The test vectors' directory
+- The log file
+- The desired prefix command (eval for host, adb shell for target)
+- The test-platform and remote-process executable name and host
+- The html coverage file
+- The directory where the coverage generation tool is
+- The Pfw domain configuration file (to get from board)
+
+I truly advise to keep those files in the same directory as they could be
+platform related. Nevertheless, you can create a common test-scripts
+directory for platform independent tests behaviour such as call tests
+scripts. To do that, you just have to edit audio-test-script.json file
+to point the correct script file.
+
+##Scenario
+A scenario file contains all states you want the system pass through.
+For example :
+
+```{.json}
+ [
+ {"setCriterion":{
+ "RoutageState":"Flow"
+ }
+ },
+ {"setCriterion":{
+ "RoutageState":"Path"
+ }
+ },
+ {"setCriterion":{
+ "Mode":"Normal",
+ "SelectedOutputDevices":"Earpiece",
+ "OpenedPlaybackRoutes":"Media DeepMedia HwCodec0IA",
+ "RoutageState":"Configure"
+ }
+ },
+ {"script":"play"},
+ {"setCriterion":{
+ "RoutageState":"Path Configure"
+ }
+ },
+ {"setCriterion":{
+ "RoutageState":"Flow Path Configure"
+ }
+ }
+ ]
+```
+
+This json file describe the five steps to put the system in playback state.
+
+The *setCriterion* type allows user to offer a dictionary describing changing
+criterions. Other criterions keep there old values.
+
+The other type, *script* allows users to launch a script when he wants.
+
+You can also define your own types based on the system ones, defined ones.
+You have to edit the *ActionGathererFile* specified in the *conf.json* file
+to do that.
+This file has this pattern :
+
+```{.json}
+ {
+ "mute":
+ {"setCriterion":
+ {"RoutageState":"Flow"}
+ },
+ "disable":
+ {"setCriterion":
+ {"RoutageState":"Path"}
+ },
+ "configure":
+ {"setCriterion":
+ {"RoutageState":"Configure"}
+ },
+ "enable":
+ {"setCriterion":
+ {"RoutageState":"Path Configure"}
+ },
+ "unmute":
+ {"setCriterion":
+ {"RoutageState":"Flow Path Configure"}
+ }
+ }
+```
+
+Here we define five new types based on *setCriterion*. When writing a scenario,
+we can now use those types as basis and add some criterions to set in the same
+time.
+
+Here is an example of the obtained format :
+
+```{.json}
+ [
+ {"mute":{}},
+ {"disable":{}},
+ {"configure":
+ {"Mode":"Normal",
+ "SelectedOutputDevices":"Earpiece",
+ "OpenedPlaybackRoutes":"Media DeepMedia HwCodec0IA"
+ }
+ },
+ {"script":"play"},
+ {"enable":{}},
+ {"unmute":{}}
+ ]
+```
+
+During the configure step, the Mode, SelectedOutputDevices and the OpenedPlaybackRoutes
+criterions are setted, but also the RoutageState one as defined in the *ActionGathererFile*.
+
+##Scripts
+Scripts are simple SHELL or something else which can be added to project by
+simply adding them to the *ScriptFile* specified in the *conf.json* file.
+
+This file should be as this :
+
+```{.json}
+ {
+ "play":["test-scripts/play.sh","asynchronous"],
+ "playVoip":["test-scripts/playVoip.sh","asynchronous"],
+ "playTiny":["test-scripts/playTiny.sh","asynchronous"],
+ "capture":["test-scripts/capture.sh","asynchronous"],
+ "captureTiny":["test-scripts/captureTiny.sh","asynchronous"],
+ "loopback":["test-scripts/loopback.sh","asynchronous"],
+ "call":["test-scripts/call.sh","synchronous"]
+ }
+```
+
+This dictionary is composed as this :
+
+``` name:["path/to/script","Boolean"] ```
+
+The Boolean is used to decide if we want to wait the end of the script before
+continue the execution of the script or not. For example, when running audio
+playing command (as alsa_aplay), we don't want the script to wait the end
+before to continue. On the contrary, when we make a phone call, we want to be
+sure that all commands has been received before we continue.
+This Boolean is used as this :
+
+* asynchronous : The script will run concurrently to the pfwCriteriaTest project
+* synchronous : The pfwCriteriaTest project will wait the end of the script
+before finishing configuration.
+
diff --git a/omap-tutorial/clientSimulator/scripts/common/audio-test-actions.json b/omap-tutorial/clientSimulator/scripts/common/audio-test-actions.json
new file mode 100644
index 0000000..3ad1bb1
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/common/audio-test-actions.json
@@ -0,0 +1,22 @@
+{
+ "mute":
+ {"setCriterion":
+ {"RoutageState":"Flow"}
+ },
+ "disable":
+ {"setCriterion":
+ {"RoutageState":"Path"}
+ },
+ "configure":
+ {"setCriterion":
+ {"RoutageState":"Configure"}
+ },
+ "enable":
+ {"setCriterion":
+ {"RoutageState":"Path Configure"}
+ },
+ "unmute":
+ {"setCriterion":
+ {"RoutageState":"Flow Path Configure"}
+ }
+}
diff --git a/omap-tutorial/clientSimulator/scripts/common/test-scripts/capture.sh b/omap-tutorial/clientSimulator/scripts/common/test-scripts/capture.sh
new file mode 100755
index 0000000..1e1fce7
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/common/test-scripts/capture.sh
@@ -0,0 +1,15 @@
+#
+# This script is used in order to start recording with ALSA.
+#
+
+if [ ! $# == 2 ]; then
+ echo "Two arguments needed:" 1>&2
+ echo " - AlsaCard and device : -hw:," 1>&2
+ echo " - Record destination" 1>&2
+ exit
+fi
+
+card=$1
+file=$2
+
+arecord -D$card -d 10 -f S32_LE -r 48000 -c 2 $file
diff --git a/omap-tutorial/clientSimulator/scripts/common/test-scripts/play.sh b/omap-tutorial/clientSimulator/scripts/common/test-scripts/play.sh
new file mode 100755
index 0000000..2423cf2
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/common/test-scripts/play.sh
@@ -0,0 +1,15 @@
+#
+# This script is used in order to start playback with ALSA.
+#
+
+if [ ! $# == 2 ]; then
+ echo "Two arguments needed:" 1>&2
+ echo " - AlsaCard and device : -hw:," 1>&2
+ echo " - File to play" 1>&2
+ exit
+fi
+
+alsaCardDevice=$1
+file=$2
+
+aplay -D$alsaCardDevice $file
diff --git a/omap-tutorial/clientSimulator/scripts/panda/audio-test-scripts.json b/omap-tutorial/clientSimulator/scripts/panda/audio-test-scripts.json
new file mode 100644
index 0000000..6042da7
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/audio-test-scripts.json
@@ -0,0 +1,22 @@
+{
+ "play":[
+ "../common/test-scripts/play.sh hw:0,0 /home/ubuntu/patterns/wav/beethoven_48000.wav",
+ "asynchronous"
+ ],
+ "playVoice":[
+ "../common/test-scripts/play.sh hw:0,2 /home/ubuntu/patterns/wav/beethoven_16000.wav",
+ "asynchronous"
+ ],
+ "playTones":[
+ "../common/test-scripts/play.sh hw:0,3 /home/ubuntu/patterns/wav/beethoven_48000.wav",
+ "asynchronous"
+ ],
+ "playDeep":[
+ "../common/test-scripts/play.sh hw:0,5 /home/ubuntu/patterns/wav/beethoven_48000.wav",
+ "asynchronous"
+ ],
+ "capture":[
+ "../common/test-scripts/capture.sh hw:0,1 /home/ubuntu/patterns/test_cap_alsa.wav",
+ "asynchronous"
+ ]
+}
diff --git a/omap-tutorial/clientSimulator/scripts/panda/conf.json b/omap-tutorial/clientSimulator/scripts/panda/conf.json
new file mode 100644
index 0000000..460e9bb
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/conf.json
@@ -0,0 +1,17 @@
+{
+ "PrefixCommand" : "",
+ "TestPlatformPort" : "5001",
+
+ "CriterionFile" : "/home/ubuntu/intel/parameter-framework-samples/omap-tutorial/clientSimulator/AudioCriteria.txt",
+ "PfwConfFile" : "/home/ubuntu/intel/parameter-framework-samples/omap-tutorial/PandaBoardES.xml",
+
+ "ScenariosDirectory":"test-vectors",
+ "ScriptsFile":"audio-test-scripts.json",
+ "ActionGathererFile":"../common/audio-test-actions.json",
+
+ "LogFile" : "PandaBoard.log",
+
+ "CoverageDir" : "/home/ubuntu/intel/parameter-framework/core/tools/coverage",
+ "CoverageFile" : "PandaBoard_Coverage.html",
+ "PfwDomainConfFile" : "AudioConfigurableDomains.xml"
+}
diff --git a/omap-tutorial/clientSimulator/scripts/panda/test-vectors/capture_alsa_Media_Headset.json b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/capture_alsa_Media_Headset.json
new file mode 100644
index 0000000..e610726
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/capture_alsa_Media_Headset.json
@@ -0,0 +1,13 @@
+[
+ {"mute":{}},
+ {"disable":{}},
+ {"configure":
+ {"Mode":"Normal",
+ "SelectedInputDevices":"Headset",
+ "OpenedCaptureRoutes":"Media"
+ }
+ },
+ {"enable":{}},
+ {"script":"capture"},
+ {"unmute":{}}
+]
diff --git a/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_DeepMedia_Headset.json b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_DeepMedia_Headset.json
new file mode 100644
index 0000000..85c2ea1
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_DeepMedia_Headset.json
@@ -0,0 +1,13 @@
+[
+ {"mute":{}},
+ {"disable":{}},
+ {"configure":
+ {"Mode":"Normal",
+ "SelectedOutputDevices":"Headset",
+ "OpenedPlaybackRoutes":"DeepMedia"
+ }
+ },
+ {"enable":{}},
+ {"script":"playDeep"},
+ {"unmute":{}}
+]
diff --git a/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Media_Headset.json b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Media_Headset.json
new file mode 100644
index 0000000..972d8de
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Media_Headset.json
@@ -0,0 +1,13 @@
+[
+ {"mute":{}},
+ {"disable":{}},
+ {"configure":
+ {"Mode":"Normal",
+ "SelectedOutputDevices":"Headset",
+ "OpenedPlaybackRoutes":"Media"
+ }
+ },
+ {"enable":{}},
+ {"script":"play"},
+ {"unmute":{}}
+]
diff --git a/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Tones_Headset.json b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Tones_Headset.json
new file mode 100644
index 0000000..a294842
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Tones_Headset.json
@@ -0,0 +1,13 @@
+[
+ {"mute":{}},
+ {"disable":{}},
+ {"configure":
+ {"Mode":"Normal",
+ "SelectedOutputDevices":"Headset",
+ "OpenedPlaybackRoutes":"Tones"
+ }
+ },
+ {"enable":{}},
+ {"script":"playTones"},
+ {"unmute":{}}
+]
diff --git a/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Voice_Headset.json b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Voice_Headset.json
new file mode 100644
index 0000000..315da8d
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/playback_alsa_Voice_Headset.json
@@ -0,0 +1,13 @@
+[
+ {"mute":{}},
+ {"disable":{}},
+ {"configure":
+ {"Mode":"Normal",
+ "SelectedOutputDevices":"Headset",
+ "OpenedPlaybackRoutes":"Voice"
+ }
+ },
+ {"enable":{}},
+ {"script":"playVoice"},
+ {"unmute":{}}
+]
diff --git a/omap-tutorial/clientSimulator/scripts/panda/test-vectors/reset_routes.json b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/reset_routes.json
new file mode 100644
index 0000000..ec054f3
--- /dev/null
+++ b/omap-tutorial/clientSimulator/scripts/panda/test-vectors/reset_routes.json
@@ -0,0 +1,14 @@
+[
+ {"mute":{}},
+ {"disable":{}},
+ {"configure":
+ {"Mode":"Normal",
+ "SelectedOutputDevices":"",
+ "OpenedPlaybackRoutes":"",
+ "SelectedInputDevices":"",
+ "OpenedCaptureRoutes":""
+ }
+ },
+ {"enable":{}},
+ {"unmute":{}}
+]