diff --git a/OpenBis.m b/OpenBis.m
index 51f0100451c88ad483f97ba6ef5c19c4c5abfa33..c1c37e89f2c5e3f48899046263ccb22a919b276b 100644
--- a/OpenBis.m
+++ b/OpenBis.m
@@ -312,18 +312,27 @@ classdef OpenBis
             experiment = obj.pybis.get_experiment(id);
         end
         
-        function experiment = new_experiment(obj, type, code, project)
+        function exp = new_experiment(obj, type, code, project)
             %new_experiment
             % Create a new experiment of specific type in a defined project
             % Required input arguments:
-            % type ... new experiment type
+            % type ... new experiment type - see: obi.get_experiment_types()
             % code ... new experiment code
-            % project ... project for new experiment ('SPACE/Project')
+            % project ... project for new experiment ('/SPACE/Project')
             % Usage:
-            % experiment = obi.new_experiment('type', 'space', 'Space/Project')
+            % exp = obi.new_experiment('type', 'EXP1234', '/SPACE/Project')
             
-            experiment = obj.pybis.new_experiment(pyargs('type', type, 'code', code, 'project', project));
-            experiment.save();
+            % determine type object
+            t = obj.pybis.get_experiment_type(type);
+            
+            % determine project type
+            p = obj.get_project(project);
+            
+            % instantiate a new experiment object
+            exp = py.pybis.pybis.Experiment(obj.pybis, pyargs('type', t, 'code', code, 'project', p));
+            
+            % save experiment
+            exp.save();
         end
         
         
diff --git a/obi_test.m b/obi_test.m
index b60c1391cf86e115154a47314c1314d0361c768c..9e2afd791dc4ea0834a19873191e9161b2114cbe 100644
--- a/obi_test.m
+++ b/obi_test.m
@@ -41,6 +41,7 @@ projects = obi.get_projects(space_name, project_name);
 assert(any(ismember(projects.identifier, sprintf('/%s/%s', space_name, project_name))), 'Project has not been created');
 
 %% 4. Create experiment for test
+experiment_name = 'TESTING_EXPERIMENT';
 
 
 %% 5. Create dataset with dummy files
diff --git a/pybis_example.ipynb b/pybis_example.ipynb
index 04e58a250decac27ad724e7dc00b23eec4dcd400..ddc3b291ca8fe852cc9927873189196147f9421b 100644
--- a/pybis_example.ipynb
+++ b/pybis_example.ipynb
@@ -7,9 +7,7 @@
    "outputs": [],
    "source": [
     "from pybis import Openbis\n",
-    "import getpass\n",
-    "import matplotlib.pyplot as plt\n",
-    "%matplotlib inline"
+    "import getpass"
    ]
   },
   {
@@ -25,7 +23,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "o = Openbis('https://openbis-tst.ethz.ch/openbis:8443', verify_certificates=False)"
+    "o = Openbis('https://127.0.0.1/openbis:8443', verify_certificates=False)"
    ]
   },
   {
@@ -34,7 +32,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "username = 'h'\n",
+    "username = 'hluetcke'\n",
     "pw = getpass.getpass()"
    ]
   },
@@ -280,7 +278,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "experiment = o.new_experiment(type='UNKNOWN', code='EXP123456', project='/SIS_HLUETCKE/DEMO')"
+    "experiment = o.new_experiment(type='UNKNOWN', code='EXP123456789', project='/HLUETCKE/PLAYGROUND')"
    ]
   },
   {
@@ -463,7 +461,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python [default]",
+   "display_name": "Python 3",
    "language": "python",
    "name": "python3"
   },
@@ -477,9 +475,9 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.7"
+   "version": "3.9.1"
   }
  },
  "nbformat": 4,
- "nbformat_minor": 2
+ "nbformat_minor": 4
 }