diff --git a/psConfig/exercise/challenge.conf b/psConfig/exercise/challenge.conf
new file mode 100644
index 0000000000000000000000000000000000000000..18cb8f06700ba7fbc5d17aae4ab0744128c3b4c4
--- /dev/null
+++ b/psConfig/exercise/challenge.conf
@@ -0,0 +1,21 @@
+[main]
+startdb=43;
+uttdb=47;
+silence=400;
+timeout=8;
+openDeviceDirectly=yes;
+
+[pocketsphinxinstance]
+name=confirm;
+jsgf=../../psGrammar/confirm/confirm.jsgf;
+rsbscope=/speechrec/psa/confirm;
+bestpath=no;
+autoload=yes;
+
+[pocketsphinxinstance]
+name=challenge;
+jsgf=../../psGrammar/exercise/challenge.jsgf;
+rsbscope=/speechrec/psa/jkummert;
+bestpath=no;
+autoload=yes;
+
diff --git a/psConfig/exercise/jkummert.conf b/psConfig/exercise/jkummert.conf
new file mode 100644
index 0000000000000000000000000000000000000000..0fea8f252e58cbf76805fd2d2b26b49a8ede28d3
--- /dev/null
+++ b/psConfig/exercise/jkummert.conf
@@ -0,0 +1,21 @@
+[main]
+startdb=43;
+uttdb=47;
+silence=400;
+timeout=8;
+openDeviceDirectly=yes;
+
+[pocketsphinxinstance]
+name=confirm;
+jsgf=../../psGrammar/confirm/confirm.jsgf;
+rsbscope=/speechrec/psa/confirm;
+bestpath=no;
+autoload=yes;
+
+[pocketsphinxinstance]
+name=calculator;
+jsgf=../../psGrammar/exercise/calculator.jsgf;
+rsbscope=/speechrec/psa/jkummert;
+bestpath=no;
+autoload=yes;
+
diff --git a/psGrammar/exercise/calculator.jsgf b/psGrammar/exercise/calculator.jsgf
new file mode 100644
index 0000000000000000000000000000000000000000..f1bdf3b82580ef5ff4902474fa6fa18357f59ad8
--- /dev/null
+++ b/psGrammar/exercise/calculator.jsgf
@@ -0,0 +1,9 @@
+
+#JSGF V1.0;
+grammar calculator;
+
+public <calculate> = <zahl> <operator> <zahl>;
+
+<zahl>=(zero|one|two|three|four|five|six|seven|eight|nine);
+<operator>=(plus|minus);
+
diff --git a/psGrammar/exercise/challenge.jsgf b/psGrammar/exercise/challenge.jsgf
new file mode 100644
index 0000000000000000000000000000000000000000..b458d29c4c3f72b66bda7acc4ac1a2ab6cd48653
--- /dev/null
+++ b/psGrammar/exercise/challenge.jsgf
@@ -0,0 +1,8 @@
+#JSGF V1.0;
+grammar challenge;
+
+public <command> = (<wait>)|(<drink>);
+
+<wait>=(wait here);
+<drink>=(fetch (coke|coffee|milk));
+
diff --git a/psGrammar/exercise/jkummert.jsgf b/psGrammar/exercise/jkummert.jsgf
new file mode 100644
index 0000000000000000000000000000000000000000..10ccfc8d73f22d475c09fe21e90522bb1828869c
--- /dev/null
+++ b/psGrammar/exercise/jkummert.jsgf
@@ -0,0 +1,9 @@
+#JSGF V1.0;
+grammar jkummert;
+
+public <command> = (<tobi>|<biron>) (<door> | <joke>);
+
+<tobi>=(tobi);
+<biron>=(biron);
+<door>=(go to the door);
+<joke>=(tell me a joke);